IInputSetting.GetReference
Declaration
InputActionReference GetReference()
Description
Returns a reference to the input action.
Returns
InputActionReference | A reference to the input action. |
diff --git a/com.zigurous.camerasystem/404.html b/com.zigurous.camerasystem/404.html index af9b094a77..931b2416f0 100644 --- a/com.zigurous.camerasystem/404.html +++ b/com.zigurous.camerasystem/404.html @@ -1 +1 @@ -
InputActionReference GetReference()
Returns a reference to the input action.
InputActionReference | A reference to the input action. |
InputActionReference GetReference()
Returns a reference to the input action.
InputActionReference | A reference to the input action. |
public interface IInputSetting
A type that defines an input setting.
GetReference | Returns a reference to the input action. |
public interface IInputSetting
A type that defines an input setting.
GetReference | Returns a reference to the input action. |
public static void Disable(this IInputSetting input)
Disables the input action of an input setting.
input | The input setting to disable the action for. |
public static void Disable(this IInputSetting input)
Disables the input action of an input setting.
input | The input setting to disable the action for. |
public static void Enable(this IInputSetting input)
Enables the input action of an input setting.
input | The input setting to enable the action for. |
public static void Enable(this IInputSetting input)
Enables the input action of an input setting.
input | The input setting to enable the action for. |
public static bool IsDefined(this IInputSetting input)
Checks if the input action has been assigned.
input | The input setting to check. |
bool | True if the input action has been assigned. |
public static bool IsDefined(this IInputSetting input)
Checks if the input action has been assigned.
input | The input setting to check. |
bool | True if the input action has been assigned. |
public static class IInputSettingExtensions
Extension methods for IInputSetting.
IsDefined | Checks if the input action has been assigned. |
Enable | Enables the input action of an input setting. |
Disable | Disables the input action of an input setting. |
public static class IInputSettingExtensions
Extension methods for IInputSetting.
IsDefined | Checks if the input action has been assigned. |
Enable | Enables the input action of an input setting. |
Disable | Disables the input action of an input setting. |
public InputActionReference GetReference()
Returns a reference to the input action.
InputActionReference | A reference to the input action. |
public InputActionReference GetReference()
Returns a reference to the input action.
InputActionReference | A reference to the input action. |
public InputAxis(float sensitivity, bool inverted, bool timescaled)
Creates an input axis with the provided settings.
sensitivity | The input sensitivity multiplier (default=1). |
inverted | Inverts the input axis value (default=false). |
timescaled | Scales the input axis value by delta time (default=false). |
public InputAxis(float sensitivity, bool inverted, bool timescaled)
Creates an input axis with the provided settings.
sensitivity | The input sensitivity multiplier (default=1). |
inverted | Inverts the input axis value (default=false). |
timescaled | Scales the input axis value by delta time (default=false). |
[Serializable]
-public struct InputAxis : IInputSetting
An input axis setting.
reference | A reference to the input action that handles the input. |
sensitivity | The input sensitivity multiplier. |
inverted | Inverts the input axis value. |
timescaled | Scales the input axis value by delta time. |
InputAxis | Creates an input axis with the provided settings. |
GetReference | Returns a reference to the input action. |
[Serializable]
+public struct InputAxis : IInputSetting
An input axis setting.
reference | A reference to the input action that handles the input. |
sensitivity | The input sensitivity multiplier. |
inverted | Inverts the input axis value. |
timescaled | Scales the input axis value by delta time. |
InputAxis | Creates an input axis with the provided settings. |
GetReference | Returns a reference to the input action. |
public bool inverted
Inverts the input axis value.
public bool inverted
Inverts the input axis value.
public InputActionReference reference
A reference to the input action that handles the input.
public InputActionReference reference
A reference to the input action that handles the input.
public float sensitivity
The input sensitivity multiplier.
public float sensitivity
The input sensitivity multiplier.
public bool timescaled
Scales the input axis value by delta time.
public bool timescaled
Scales the input axis value by delta time.
public InputActionReference GetReference()
Returns a reference to the input action.
InputActionReference | A reference to the input action. |
public InputActionReference GetReference()
Returns a reference to the input action.
InputActionReference | A reference to the input action. |
public InputButton(InputButtonStyle style)
Creates an input button of the provided style.
style | The input style, e.g., press, release, or hold. |
public InputButton(InputButtonStyle style)
Creates an input button of the provided style.
style | The input style, e.g., press, release, or hold. |
[Serializable]
-public struct InputButton : IInputSetting
An input button setting.
reference | A reference to the input action that handles the input. |
style | The type of input button style, e.g., hold, press, or release. |
InputButton | Creates an input button of the provided style. |
GetReference | Returns a reference to the input action. |
[Serializable]
+public struct InputButton : IInputSetting
An input button setting.
reference | A reference to the input action that handles the input. |
style | The type of input button style, e.g., hold, press, or release. |
InputButton | Creates an input button of the provided style. |
GetReference | Returns a reference to the input action. |
public InputActionReference reference
A reference to the input action that handles the input.
public InputActionReference reference
A reference to the input action that handles the input.
public InputButtonStyle style
The type of input button style, e.g., hold, press, or release.
public InputButtonStyle style
The type of input button style, e.g., hold, press, or release.
Hold = 0
The input button is handled while continuously held down.
Hold = 0
The input button is handled while continuously held down.
Press = 1
The input button is handled on press.
Press = 1
The input button is handled on press.
Release = 2
The input button is handled on release.
Release = 2
The input button is handled on release.
TogglePress = 3
The input button is toggled on press.
TogglePress = 3
The input button is toggled on press.
ToggleRelease = 4
The input button is toggled on release.
ToggleRelease = 4
The input button is toggled on release.
[Serializable]
-public enum InputButtonStyle
A type of input button style, e.g., hold, press, or release.
Hold | The input button is handled while continuously held down. |
Press | The input button is handled on press. |
Release | The input button is handled on release. |
TogglePress | The input button is toggled on press. |
ToggleRelease | The input button is toggled on release. |
[Serializable]
+public enum InputButtonStyle
A type of input button style, e.g., hold, press, or release.
Hold | The input button is handled while continuously held down. |
Press | The input button is handled on press. |
Release | The input button is handled on release. |
TogglePress | The input button is toggled on press. |
ToggleRelease | The input button is toggled on release. |
public float GetAxis(InputAxis axis)
Gets the input value for the specified input axis.
axis | The input axis to read. |
float | The input value. |
public float GetAxis(InputAxis axis)
Gets the input value for the specified input axis.
axis | The input axis to read. |
float | The input value. |
public bool GetButton(InputButton button, bool currentState = false)
Checks if the specified input button is performed.
button | The input button to read. |
currentState | The current performed state of the button (default=false). |
bool | True if the input button is performed. |
public bool GetButton(InputButton button, bool currentState = false)
Checks if the specified input button is performed.
button | The input button to read. |
currentState | The current performed state of the button (default=false). |
bool | True if the input button is performed. |
public bool GetButtonHeld(InputButton button)
Checks if the specified input button was held down this frame.
button | The input button to read. |
bool | True if the input button was held down this frame. |
public bool GetButtonHeld(InputButton button)
Checks if the specified input button was held down this frame.
button | The input button to read. |
bool | True if the input button was held down this frame. |
public bool GetButtonPressed(InputButton button)
Checks if the specified input button was pressed this frame.
button | The input button to read. |
bool | True if the input button was pressed this frame. |
public bool GetButtonPressed(InputButton button)
Checks if the specified input button was pressed this frame.
button | The input button to read. |
bool | True if the input button was pressed this frame. |
public bool GetButtonReleased(InputButton button)
Checks if the specified input button was released this frame.
button | The input button to read. |
bool | True if the input button was released this frame. |
public bool GetButtonReleased(InputButton button)
Checks if the specified input button was released this frame.
button | The input button to read. |
bool | True if the input button was released this frame. |
public bool enabled { get; set; }
Turns on/off input handling.
public bool enabled { get; set; }
Turns on/off input handling.
public sealed class InputManager
Manages and reads input from the player.
enabled | Turns on/off input handling. |
GetAxis | Gets the input value for the specified input axis. |
GetButton | Checks if the specified input button is performed. |
GetButtonPressed | Checks if the specified input button was pressed this frame. |
GetButtonReleased | Checks if the specified input button was released this frame. |
GetButtonHeld | Checks if the specified input button was held down this frame. |
public sealed class InputManager
Manages and reads input from the player.
enabled | Turns on/off input handling. |
GetAxis | Gets the input value for the specified input axis. |
GetButton | Checks if the specified input button is performed. |
GetButtonPressed | Checks if the specified input button was pressed this frame. |
GetButtonReleased | Checks if the specified input button was released this frame. |
GetButtonHeld | Checks if the specified input button was held down this frame. |
public InputActionReference flyFast
public InputActionReference flyFast
public InputActionReference flySlow
public InputActionReference flySlow
public InputActionReference flyX
public InputActionReference flyX
public InputActionReference flyY
public InputActionReference flyY
public InputActionReference flyZ
public InputActionReference flyZ
public sealed class InputReferences : ScriptableObject
A set of input action references used by the camera system. This is primarily used to set the default input references when creating new camera profiles.
flyX | |
flyY | |
flyZ | |
flyFast | |
flySlow | |
lookX | |
lookY | |
panX | |
panY | |
panHold | |
leanLeft | |
leanRight | |
shoulderSwapLeft | |
shoulderSwapRight | |
targetLockOn | |
zoom |
public sealed class InputReferences : ScriptableObject
A set of input action references used by the camera system. This is primarily used to set the default input references when creating new camera profiles.
flyX | |
flyY | |
flyZ | |
flyFast | |
flySlow | |
lookX | |
lookY | |
panX | |
panY | |
panHold | |
leanLeft | |
leanRight | |
shoulderSwapLeft | |
shoulderSwapRight | |
targetLockOn | |
zoom |
public InputActionReference leanLeft
public InputActionReference leanLeft
public InputActionReference leanRight
public InputActionReference leanRight
public InputActionReference lookX
public InputActionReference lookX
public InputActionReference lookY
public InputActionReference lookY
public InputActionReference panHold
public InputActionReference panHold
public InputActionReference panX
public InputActionReference panX
public InputActionReference panY
public InputActionReference panY
public InputActionReference shoulderSwapLeft
public InputActionReference shoulderSwapLeft
public InputActionReference shoulderSwapRight
public InputActionReference shoulderSwapRight
public InputActionReference targetLockOn
public InputActionReference targetLockOn
public InputActionReference zoom
public InputActionReference zoom
Extension methods for IInputSetting.
Manages and reads input from the player.
A set of input action references used by the camera system. This is primarily used to set the default input references when creating new camera profiles.
An input axis setting.
An input button setting.
A type that defines an input setting.
A type of input button style, e.g., hold, press, or release.
Extension methods for IInputSetting.
Manages and reads input from the player.
A set of input action references used by the camera system. This is primarily used to set the default input references when creating new camera profiles.
An input axis setting.
An input button setting.
A type that defines an input setting.
A type of input button style, e.g., hold, press, or release.
public float alpha { get; set; }
The alpha of the GUI texture.
public float alpha { get; set; }
The alpha of the GUI texture.
public Color color { get; set; }
The color of the GUI texture.
public Color color { get; set; }
The color of the GUI texture.
public sealed class DrawGUITexture : MonoBehaviour
Draws a GUI texture on the screen.
texture | The GUI texture to draw. |
color | The color of the GUI texture. |
alpha | The alpha of the GUI texture. |
public sealed class DrawGUITexture : MonoBehaviour
Draws a GUI texture on the screen.
texture | The GUI texture to draw. |
color | The color of the GUI texture. |
alpha | The alpha of the GUI texture. |
public Texture2D texture { get; }
The GUI texture to draw.
public Texture2D texture { get; }
The GUI texture to draw.
public float Clamp(float value)
Clamps a value to the range.
value | The value to clamp. |
float | The clamped value. |
public float Clamp(float value)
Clamps a value to the range.
value | The value to clamp. |
float | The clamped value. |
public readonly float Delta { get; }
The difference between the maximum and minimum values (Read only).
public readonly float Delta { get; }
The difference between the maximum and minimum values (Read only).
public bool Includes(float value)
Checks if a value is in the range.
value | The value to check. |
bool | True if the value is in the range, false otherwise. |
public bool Includes(float value)
Checks if a value is in the range.
value | The value to check. |
bool | True if the value is in the range, false otherwise. |
public float InverseLerp(float value)
Calculates the linear parameter t that produces the interpolant value within the range.
value | The value within the range you want to calculate. |
float | The interpolant value between [0..1]. |
public float InverseLerp(float value)
Calculates the linear parameter t that produces the interpolant value within the range.
value | The value within the range you want to calculate. |
float | The interpolant value between [0..1]. |
public float Lerp(float t)
Linearly interpolates between the range by t
.
t | The interpolant value between [0..1]. |
float | The interpolated value. |
public float Lerp(float t)
Linearly interpolates between the range by t
.
t | The interpolant value between [0..1]. |
float | The interpolated value. |
public float Random()
Returns a random value in the range.
float | A random value in the range. |
public float Random()
Returns a random value in the range.
float | A random value in the range. |
public FloatRange(float min, float max)
Creates a new range with the specified values.
min | The lower bound of the range. |
max | The upper bound of the range. |
public FloatRange(float min, float max)
Creates a new range with the specified values.
min | The lower bound of the range. |
max | The upper bound of the range. |
[Serializable]
-public struct FloatRange
A range of float values.
min | The lower bound of the range. |
max | The upper bound of the range. |
Delta | The difference between the maximum and minimum values (Read only). |
FloatRange | Creates a new range with the specified values. |
Random | Returns a random value in the range. |
Includes | Checks if a value is in the range. |
Clamp | Clamps a value to the range. |
Lerp | Linearly interpolates between the range by t . |
InverseLerp | Calculates the linear parameter t that produces the interpolant value within the range. |
[Serializable]
+public struct FloatRange
A range of float values.
min | The lower bound of the range. |
max | The upper bound of the range. |
Delta | The difference between the maximum and minimum values (Read only). |
FloatRange | Creates a new range with the specified values. |
Random | Returns a random value in the range. |
Includes | Checks if a value is in the range. |
Clamp | Clamps a value to the range. |
Lerp | Linearly interpolates between the range by t . |
InverseLerp | Calculates the linear parameter t that produces the interpolant value within the range. |
public float max { get; set; }
The upper bound of the range.
public float max { get; set; }
The upper bound of the range.
public float min { get; set; }
The lower bound of the range.
public float min { get; set; }
The lower bound of the range.
public Animator animator { get; }
The animator component to track.
public Animator animator { get; }
The animator component to track.
public Vector3 bodyPosition { get; }
The position of the body center of mass.
public Vector3 bodyPosition { get; }
The position of the body center of mass.
public Quaternion bodyRotation { get; }
The rotation of the body center of mass.
public Quaternion bodyRotation { get; }
The rotation of the body center of mass.
public sealed class IKTracker : MonoBehaviour
Keeps track of the body position and rotation of an animator component.
animator | The animator component to track. |
bodyPosition | The position of the body center of mass. |
bodyRotation | The rotation of the body center of mass. |
localPosition | The position of the body center of mass in local space. |
localRotation | The rotation of the body center of mass in local space. |
public sealed class IKTracker : MonoBehaviour
Keeps track of the body position and rotation of an animator component.
animator | The animator component to track. |
bodyPosition | The position of the body center of mass. |
bodyRotation | The rotation of the body center of mass. |
localPosition | The position of the body center of mass in local space. |
localRotation | The rotation of the body center of mass in local space. |
public Vector3 localPosition { get; }
The position of the body center of mass in local space.
public Vector3 localPosition { get; }
The position of the body center of mass in local space.
public Quaternion localRotation { get; }
The rotation of the body center of mass in local space.
public Quaternion localRotation { get; }
The rotation of the body center of mass in local space.
protected override Quaternion Add(Quaternion value)
Increases the accumulated total by a given value.
value | The value to add to the total. |
Quaternion | The new total value. |
protected override Quaternion Add(Quaternion value)
Increases the accumulated total by a given value.
value | The value to add to the total. |
Quaternion | The new total value. |
protected override Quaternion Subtract(Quaternion value)
Decreases the accumulated total by a given value.
value | The value to subtract from the total. |
Quaternion | The new total value. |
protected override Quaternion Subtract(Quaternion value)
Decreases the accumulated total by a given value.
value | The value to subtract from the total. |
Quaternion | The new total value. |
protected override Quaternion defaultValue { get; }
Quaternion.identity
protected override Quaternion defaultValue { get; }
Quaternion.identity
public sealed class QuaternionAccumulator : ValueAccumulator<Quaternion>
Accumulates Quaternion values into a single total value.
defaultValue | Quaternion.identity |
Add | Increases the accumulated total by a given value. |
Subtract | Decreases the accumulated total by a given value. |
values | The stored values with their given identifiers (Read only). |
count | The number of unique values being accumulated (Read only). |
GetValue | Returns the value stored with the specified identifier. |
SetValue | Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value. |
RemoveValue | Removes the value stored with the given identifier and updates the total accumulated value. |
Clear | Removes all stored values and resets the total accumulated value. |
public sealed class QuaternionAccumulator : ValueAccumulator<Quaternion>
Accumulates Quaternion values into a single total value.
defaultValue | Quaternion.identity |
Add | Increases the accumulated total by a given value. |
Subtract | Decreases the accumulated total by a given value. |
values | The stored values with their given identifiers (Read only). |
count | The number of unique values being accumulated (Read only). |
GetValue | Returns the value stored with the specified identifier. |
SetValue | Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value. |
RemoveValue | Removes the value stored with the given identifier and updates the total accumulated value. |
Clear | Removes all stored values and resets the total accumulated value. |
protected abstract T Add(T value)
Increases the accumulated total by a given value.
value | The value to add to the total. |
T | The new total value. |
protected abstract T Add(T value)
Increases the accumulated total by a given value.
value | The value to add to the total. |
T | The new total value. |
public void Clear()
Removes all stored values and resets the total accumulated value.
public void Clear()
Removes all stored values and resets the total accumulated value.
public T GetValue(int identifier)
Returns the value stored with the specified identifier.
identifier | The identifier of the stored value. |
T | The value stored with the identifier, or default(T) if the value does not exist. |
public T GetValue(int identifier)
Returns the value stored with the specified identifier.
identifier | The identifier of the stored value. |
T | The value stored with the identifier, or default(T) if the value does not exist. |
public void RemoveValue(int identifier)
Removes the value stored with the given identifier and updates the total accumulated value.
identifier | The identifier of the stored value to remove. |
public void RemoveValue(int identifier)
Removes the value stored with the given identifier and updates the total accumulated value.
identifier | The identifier of the stored value to remove. |
public void SetValue(int identifier, T value)
Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value.
identifier | The identifier of the value. |
value | The value to set. |
public void SetValue(int identifier, T value)
Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value.
identifier | The identifier of the value. |
value | The value to set. |
protected abstract T Subtract(T value)
Decreases the accumulated total by a given value.
value | The value to subtract from the total. |
T | The new total value. |
protected abstract T Subtract(T value)
Decreases the accumulated total by a given value.
value | The value to subtract from the total. |
T | The new total value. |
public int count { get; }
The number of unique values being accumulated (Read only).
public int count { get; }
The number of unique values being accumulated (Read only).
public ValueAccumulator()
Creates a new instance of the value accumulator.
public ValueAccumulator()
Creates a new instance of the value accumulator.
protected virtual T defaultValue { get; }
The default value of T
.
protected virtual T defaultValue { get; }
The default value of T
.
public abstract class ValueAccumulator<T>
Accumulates a set of stored values into a single total value.
T | The type of value to accumulate. |
values | The stored values with their given identifiers (Read only). |
count | The number of unique values being accumulated (Read only). |
totalValue | The total accumulated value (Read only). |
defaultValue | The default value of T . |
ValueAccumulator | Creates a new instance of the value accumulator. |
GetValue | Returns the value stored with the specified identifier. |
SetValue | Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value. |
RemoveValue | Removes the value stored with the given identifier and updates the total accumulated value. |
Clear | Removes all stored values and resets the total accumulated value. |
Add | Increases the accumulated total by a given value. |
Subtract | Decreases the accumulated total by a given value. |
public abstract class ValueAccumulator<T>
Accumulates a set of stored values into a single total value.
T | The type of value to accumulate. |
values | The stored values with their given identifiers (Read only). |
count | The number of unique values being accumulated (Read only). |
totalValue | The total accumulated value (Read only). |
defaultValue | The default value of T . |
ValueAccumulator | Creates a new instance of the value accumulator. |
GetValue | Returns the value stored with the specified identifier. |
SetValue | Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value. |
RemoveValue | Removes the value stored with the given identifier and updates the total accumulated value. |
Clear | Removes all stored values and resets the total accumulated value. |
Add | Increases the accumulated total by a given value. |
Subtract | Decreases the accumulated total by a given value. |
public T totalValue { get; protected set; }
The total accumulated value (Read only).
public T totalValue { get; protected set; }
The total accumulated value (Read only).
public Dictionary<int, T> values { get; }
The stored values with their given identifiers (Read only).
public Dictionary<int, T> values { get; }
The stored values with their given identifiers (Read only).
protected override Vector3 Add(Vector3 value)
Increases the accumulated total by a given value.
value | The value to add to the total. |
Vector3 | The new total value. |
protected override Vector3 Add(Vector3 value)
Increases the accumulated total by a given value.
value | The value to add to the total. |
Vector3 | The new total value. |
protected override Vector3 Subtract(Vector3 value)
Decreases the accumulated total by a given value.
value | The value to subtract from the total. |
Vector3 | The new total value. |
protected override Vector3 Subtract(Vector3 value)
Decreases the accumulated total by a given value.
value | The value to subtract from the total. |
Vector3 | The new total value. |
protected override Vector3 defaultValue { get; }
Vector3.zero
protected override Vector3 defaultValue { get; }
Vector3.zero
public sealed class Vector3Accumulator : ValueAccumulator<Vector3>
Accumulates Vector3 values into a single total value.
defaultValue | Vector3.zero |
Add | Increases the accumulated total by a given value. |
Subtract | Decreases the accumulated total by a given value. |
values | The stored values with their given identifiers (Read only). |
count | The number of unique values being accumulated (Read only). |
GetValue | Returns the value stored with the specified identifier. |
SetValue | Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value. |
RemoveValue | Removes the value stored with the given identifier and updates the total accumulated value. |
Clear | Removes all stored values and resets the total accumulated value. |
public sealed class Vector3Accumulator : ValueAccumulator<Vector3>
Accumulates Vector3 values into a single total value.
defaultValue | Vector3.zero |
Add | Increases the accumulated total by a given value. |
Subtract | Decreases the accumulated total by a given value. |
values | The stored values with their given identifiers (Read only). |
count | The number of unique values being accumulated (Read only). |
GetValue | Returns the value stored with the specified identifier. |
SetValue | Stores a given value with the specified identifier. The total accumulated value is updated based on the difference between the new and old value. |
RemoveValue | Removes the value stored with the given identifier and updates the total accumulated value. |
Clear | Removes all stored values and resets the total accumulated value. |
Draws a GUI texture on the screen.
Keeps track of the body position and rotation of an animator component.
Accumulates Quaternion values into a single total value.
Accumulates a set of stored values into a single total value.
Accumulates Vector3 values into a single total value.
A range of float values.
Draws a GUI texture on the screen.
Keeps track of the body position and rotation of an animator component.
Accumulates Quaternion values into a single total value.
Accumulates a set of stored values into a single total value.
Accumulates Vector3 values into a single total value.
A range of float values.
public sealed class AimPunch : CameraEffect<AimPunchSettings, AimPunchProfile>, ICameraEffect
Quickly "punches" the camera's rotation in one direction then resets to the resting position. This is often used to indicate the player was hit by an object or attack.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class AimPunch : CameraEffect<AimPunchSettings, AimPunchProfile>, ICameraEffect
Quickly "punches" the camera's rotation in one direction then resets to the resting position. This is often used to indicate the player was hit by an object or attack.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float decayRate
How quickly the camera resets back to a resting position. The higher the value, the faster the camera will reset.
public float decayRate
How quickly the camera resets back to a resting position. The higher the value, the faster the camera will reset.
public Vector2 directionMax
The maximum direction the camera moves when aim punched. A random value between the min and max is chosen each time.
public Vector2 directionMax
The maximum direction the camera moves when aim punched. A random value between the min and max is chosen each time.
public Vector2 directionMin
The minimum direction the camera moves when aim punched. A random value between the min and max is chosen each time.
public Vector2 directionMin
The minimum direction the camera moves when aim punched. A random value between the min and max is chosen each time.
[Serializable]
-public sealed class AimPunchProfile : CameraEffectProfile
A settings profile for an aim punch effect.
strength | The strength of the aim punch. The higher the value, the more the camera will be rotated. |
decayRate | How quickly the camera resets back to a resting position. The higher the value, the faster the camera will reset. |
directionMin | The minimum direction the camera moves when aim punched. A random value between the min and max is chosen each time. |
directionMax | The maximum direction the camera moves when aim punched. A random value between the min and max is chosen each time. |
name | The name of the settings profile. |
[Serializable]
+public sealed class AimPunchProfile : CameraEffectProfile
A settings profile for an aim punch effect.
strength | The strength of the aim punch. The higher the value, the more the camera will be rotated. |
decayRate | How quickly the camera resets back to a resting position. The higher the value, the faster the camera will reset. |
directionMin | The minimum direction the camera moves when aim punched. A random value between the min and max is chosen each time. |
directionMax | The maximum direction the camera moves when aim punched. A random value between the min and max is chosen each time. |
name | The name of the settings profile. |
public float strength
The strength of the aim punch. The higher the value, the more the camera will be rotated.
public float strength
The strength of the aim punch. The higher the value, the more the camera will be rotated.
[Serializable]
-public sealed class AimPunchSettings : CameraEffectSettings<AimPunch, AimPunchProfile>
Settings for an aim punch effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class AimPunchSettings : CameraEffectSettings<AimPunch, AimPunchProfile>
Settings for an aim punch effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public sealed class AnimatorMotion : CameraModifier<AnimatorMotionSettings>
Tracks the motion of the character's animator component and applies it as a modifier to the camera.
motion | The current animator motion being applied to the camera (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class AnimatorMotion : CameraModifier<AnimatorMotionSettings>
Tracks the motion of the character's animator component and applies it as a modifier to the camera.
motion | The current animator motion being applied to the camera (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public Vector3 motion { get; }
The current animator motion being applied to the camera (Read only).
public Vector3 motion { get; }
The current animator motion being applied to the camera (Read only).
[Serializable]
-public sealed class AnimatorMotionSettings : CameraBehaviorSettings<AnimatorMotion>
Settings for an animator motion modifier.
offset | An additional offset to apply to the animator motion. |
smoothing | How quickly the motion is applied to the camera. Small numbers respond more quickly while large numbers respond more slowly. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class AnimatorMotionSettings : CameraBehaviorSettings<AnimatorMotion>
Settings for an animator motion modifier.
offset | An additional offset to apply to the animator motion. |
smoothing | How quickly the motion is applied to the camera. Small numbers respond more quickly while large numbers respond more slowly. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public Vector3 offset
An additional offset to apply to the animator motion.
public Vector3 offset
An additional offset to apply to the animator motion.
public float smoothing
How quickly the motion is applied to the camera. Small numbers respond more quickly while large numbers respond more slowly.
public float smoothing
How quickly the motion is applied to the camera. Small numbers respond more quickly while large numbers respond more slowly.
public float focusDistance { get; }
The current depth of field focus distance (Read only).
public float focusDistance { get; }
The current depth of field focus distance (Read only).
public sealed class AutoFocus : CameraBehavior<AutoFocusSettings>
Changes the depth of field based on where the camera is looking.
focusDistance | The current depth of field focus distance (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class AutoFocus : CameraBehavior<AutoFocusSettings>
Changes the depth of field based on where the camera is looking.
focusDistance | The current depth of field focus distance (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
FirstPerson = 1
Focuses the camera on the object being looked at.
FirstPerson = 1
Focuses the camera on the object being looked at.
ThirdPerson = 0
Focuses the camera on the tracked target object.
ThirdPerson = 0
Focuses the camera on the tracked target object.
public enum AutoFocusMode
A type of auto focus mode.
ThirdPerson | Focuses the camera on the tracked target object. |
FirstPerson | Focuses the camera on the object being looked at. |
public enum AutoFocusMode
A type of auto focus mode.
ThirdPerson | Focuses the camera on the tracked target object. |
FirstPerson | Focuses the camera on the object being looked at. |
public float aperture
The ratio of aperture (known as f-stop or f-number). The smaller the value, the shallower the depth of field is.
public float aperture
The ratio of aperture (known as f-stop or f-number). The smaller the value, the shallower the depth of field is.
public FloatRange distanceRange
The minimum and maximum focus distance.
public FloatRange distanceRange
The minimum and maximum focus distance.
public float focalLength
The distance between the lens and the film. The larger the value, the shallower the depth of field is.
public float focalLength
The distance between the lens and the film. The larger the value, the shallower the depth of field is.
public AutoFocusMode focusMode
The type of focus mode to use.
public AutoFocusMode focusMode
The type of focus mode to use.
public float focusTime
The amount of seconds it takes the camera to change focus distance.
public float focusTime
The amount of seconds it takes the camera to change focus distance.
[Serializable]
-public sealed class AutoFocusSettings : CameraBehaviorSettings<AutoFocus>
Settings for a depth of field effect.
focusMode | The type of focus mode to use. |
raycastLayers | The layers that are hit by the camera's raycast. |
postProcessingLayer | The Unity layer the post processing effect is be applied to. It is usually recommended to have a dedicated layer for post processing. |
aperture | The ratio of aperture (known as f-stop or f-number). The smaller the value, the shallower the depth of field is. |
focalLength | The distance between the lens and the film. The larger the value, the shallower the depth of field is. |
focusTime | The amount of seconds it takes the camera to change focus distance. |
distanceRange | The minimum and maximum focus distance. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class AutoFocusSettings : CameraBehaviorSettings<AutoFocus>
Settings for a depth of field effect.
focusMode | The type of focus mode to use. |
raycastLayers | The layers that are hit by the camera's raycast. |
postProcessingLayer | The Unity layer the post processing effect is be applied to. It is usually recommended to have a dedicated layer for post processing. |
aperture | The ratio of aperture (known as f-stop or f-number). The smaller the value, the shallower the depth of field is. |
focalLength | The distance between the lens and the film. The larger the value, the shallower the depth of field is. |
focusTime | The amount of seconds it takes the camera to change focus distance. |
distanceRange | The minimum and maximum focus distance. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public string postProcessingLayer
The Unity layer the post processing effect is be applied to. It is usually recommended to have a dedicated layer for post processing.
public string postProcessingLayer
The Unity layer the post processing effect is be applied to. It is usually recommended to have a dedicated layer for post processing.
public LayerMask raycastLayers
The layers that are hit by the camera's raycast.
public LayerMask raycastLayers
The layers that are hit by the camera's raycast.
protected virtual void OnDisable()
A callback invoked when the behavior is disabled.
protected virtual void OnDisable()
A callback invoked when the behavior is disabled.
protected virtual void OnEnable()
A callback invoked when the behavior is enabled.
protected virtual void OnEnable()
A callback invoked when the behavior is enabled.
protected Coroutine StartCoroutine(IEnumerator routine)
Starts a coroutine.
routine | The routine to start. |
Coroutine | A reference to the coroutine. |
protected Coroutine StartCoroutine(IEnumerator routine)
Starts a coroutine.
routine | The routine to start. |
Coroutine | A reference to the coroutine. |
protected void StopCoroutine(Coroutine routine)
Stops a coroutine.
routine | The routine to stop. |
protected void StopCoroutine(Coroutine routine)
Stops a coroutine.
routine | The routine to stop. |
public bool enabled { get; set; }
Enables or disables the behavior from being updated.
public bool enabled { get; set; }
Enables or disables the behavior from being updated.
public abstract class CameraBehavior<T> : CameraModule where T : CameraBehaviorSettings, new()
The base class for all camera behaviors which are enabled and disabled based on the settings of the behavior.
T | The type of settings for the behavior. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
OnEnable | A callback invoked when the behavior is enabled. |
OnDisable | A callback invoked when the behavior is disabled. |
StartCoroutine | Starts a coroutine. |
StopCoroutine | Stops a coroutine. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public abstract class CameraBehavior<T> : CameraModule where T : CameraBehaviorSettings, new()
The base class for all camera behaviors which are enabled and disabled based on the settings of the behavior.
T | The type of settings for the behavior. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
OnEnable | A callback invoked when the behavior is enabled. |
OnDisable | A callback invoked when the behavior is disabled. |
StartCoroutine | Starts a coroutine. |
StopCoroutine | Stops a coroutine. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public T settings { get; set; }
The settings for the behavior.
public T settings { get; set; }
The settings for the behavior.
[Serializable]
-public abstract class CameraBehaviorSettings<T> : CameraBehaviorSettings where T : CameraModule, new()
The base class for camera behavior settings of a specified type.
T | The type of behavior associated with the settings. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public abstract class CameraBehaviorSettings<T> : CameraBehaviorSettings where T : CameraModule, new()
The base class for camera behavior settings of a specified type.
T | The type of behavior associated with the settings. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
-public abstract class CameraBehaviorSettings : CameraSettings
The base class for all camera behavior settings.
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public abstract class CameraBehaviorSettings : CameraSettings
The base class for all camera behavior settings.
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public sealed class CameraCollision : CameraBehavior<CameraCollisionSettings>
Adjusts the camera's position to avoid colliding with objects or occluding the tracking target.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class CameraCollision : CameraBehavior<CameraCollisionSettings>
Adjusts the camera's position to avoid colliding with objects or occluding the tracking target.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float cameraRadius
The radius of the camera which indicates how close it can get to an object before colliding. This is useful to prevent the camera from clipping through objects.
public float cameraRadius
The radius of the camera which indicates how close it can get to an object before colliding. This is useful to prevent the camera from clipping through objects.
[Serializable]
-public sealed class CameraCollisionSettings : CameraBehaviorSettings<CameraCollision>
Settings for camera collision.
occlusionMask | The physics layers that are hit by the camera's raycasts, and thus determine the objects that the camera collides/occludes with. This generally should be the environment layer, which is usually recommended to be the "Default" layer. |
cameraRadius | The radius of the camera which indicates how close it can get to an object before colliding. This is useful to prevent the camera from clipping through objects. |
smoothingIn | How quickly the camera changes position when collision causes the camera to move closer to the subject. Smaller numbers make the camera move quicker. |
smoothingOut | How quickly the camera changes position when collision causes the camera to move further from the subject. Smaller numbers make the camera move quicker. |
resetDelay | The amount of seconds it takes before the camera resets to its normal position after collisions are resolved. This is useful to prevent the camera from repositioning too often when going in and out of collision. |
minOcclusionDistance | The minimum occlusion distance from the camera. Sometimes you want to leave at least a little bit of space between the camera and the character while occluding. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class CameraCollisionSettings : CameraBehaviorSettings<CameraCollision>
Settings for camera collision.
occlusionMask | The physics layers that are hit by the camera's raycasts, and thus determine the objects that the camera collides/occludes with. This generally should be the environment layer, which is usually recommended to be the "Default" layer. |
cameraRadius | The radius of the camera which indicates how close it can get to an object before colliding. This is useful to prevent the camera from clipping through objects. |
smoothingIn | How quickly the camera changes position when collision causes the camera to move closer to the subject. Smaller numbers make the camera move quicker. |
smoothingOut | How quickly the camera changes position when collision causes the camera to move further from the subject. Smaller numbers make the camera move quicker. |
resetDelay | The amount of seconds it takes before the camera resets to its normal position after collisions are resolved. This is useful to prevent the camera from repositioning too often when going in and out of collision. |
minOcclusionDistance | The minimum occlusion distance from the camera. Sometimes you want to leave at least a little bit of space between the camera and the character while occluding. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float minOcclusionDistance
The minimum occlusion distance from the camera. Sometimes you want to leave at least a little bit of space between the camera and the character while occluding.
public float minOcclusionDistance
The minimum occlusion distance from the camera. Sometimes you want to leave at least a little bit of space between the camera and the character while occluding.
public LayerMask occlusionMask
The physics layers that are hit by the camera's raycasts, and thus determine the objects that the camera collides/occludes with. This generally should be the environment layer, which is usually recommended to be the "Default" layer.
public LayerMask occlusionMask
The physics layers that are hit by the camera's raycasts, and thus determine the objects that the camera collides/occludes with. This generally should be the environment layer, which is usually recommended to be the "Default" layer.
public float resetDelay
The amount of seconds it takes before the camera resets to its normal position after collisions are resolved. This is useful to prevent the camera from repositioning too often when going in and out of collision.
public float resetDelay
The amount of seconds it takes before the camera resets to its normal position after collisions are resolved. This is useful to prevent the camera from repositioning too often when going in and out of collision.
public float smoothingIn
How quickly the camera changes position when collision causes the camera to move closer to the subject. Smaller numbers make the camera move quicker.
public float smoothingIn
How quickly the camera changes position when collision causes the camera to move closer to the subject. Smaller numbers make the camera move quicker.
public float smoothingOut
How quickly the camera changes position when collision causes the camera to move further from the subject. Smaller numbers make the camera move quicker.
public float smoothingOut
How quickly the camera changes position when collision causes the camera to move further from the subject. Smaller numbers make the camera move quicker.
public void GetTransform(out Vector3 position, out Quaternion rotation)
Calculates the camera position and rotation from the context values.
position | The output position of the camera. |
rotation | The output rotation of the camera. |
public void GetTransform(out Vector3 position, out Quaternion rotation)
Calculates the camera position and rotation from the context values.
position | The output position of the camera. |
rotation | The output rotation of the camera. |
public void GetUnmodifiedTransform(out Vector3 position, out Quaternion rotation)
Calculates the camera position and rotation from the context values without applying any modifiers or overrides.
position | The output position of the camera. |
rotation | The output rotation of the camera. |
public void GetUnmodifiedTransform(out Vector3 position, out Quaternion rotation)
Calculates the camera position and rotation from the context values without applying any modifiers or overrides.
position | The output position of the camera. |
rotation | The output rotation of the camera. |
public void ResetOverrides()
Resets any position or rotation overrides applied during the last frame.
public void ResetOverrides()
Resets any position or rotation overrides applied during the last frame.
public float distance { get; }
The distance between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only).
public float distance { get; }
The distance between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only).
public Vector3 distanceOffset { get; }
The distance vector between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only).
public Vector3 distanceOffset { get; }
The distance vector between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only).
[Serializable]
-public sealed class CameraContext
A context object that represents a camera's state.
rotationModifiers | Modifiers that alter the camera rotation. |
positionModifiers | Modifiers that alter the camera position. |
trackingModifiers | Modifiers that alter the tracking point. |
rotationOverride | Overrides the camera's rotation to the specified value. |
positionOverride | Overrides the camera's position to the specified value. |
lookRotation | The look rotation of the camera expressed as a quaternion. |
modifiedRotation | The look rotation of the camera with modifiers applied (Read only). |
trackingPoint | The position the camera is tracking. |
modifiedTrackingPoint | The position the camera is tracking with modifiers applied (Read only). |
distance | The distance between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only). |
distanceOffset | The distance vector between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only). |
minDistance | The minimum distance the camera can be from the pivot point. |
maxDistance | The maximum distance the camera can be from the pivot point. |
pivotDistance | The intended distance between the camera and the pivot point. |
occlusionDistance | The amount of distance the camera is adjusted due to occlusion. |
GetTransform | Calculates the camera position and rotation from the context values. |
GetUnmodifiedTransform | Calculates the camera position and rotation from the context values without applying any modifiers or overrides. |
ResetOverrides | Resets any position or rotation overrides applied during the last frame. |
[Serializable]
+public sealed class CameraContext
A context object that represents a camera's state.
rotationModifiers | Modifiers that alter the camera rotation. |
positionModifiers | Modifiers that alter the camera position. |
trackingModifiers | Modifiers that alter the tracking point. |
rotationOverride | Overrides the camera's rotation to the specified value. |
positionOverride | Overrides the camera's position to the specified value. |
lookRotation | The look rotation of the camera expressed as a quaternion. |
modifiedRotation | The look rotation of the camera with modifiers applied (Read only). |
trackingPoint | The position the camera is tracking. |
modifiedTrackingPoint | The position the camera is tracking with modifiers applied (Read only). |
distance | The distance between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only). |
distanceOffset | The distance vector between the camera and the pivot point while factoring in occlusion and the min and max distance (Read only). |
minDistance | The minimum distance the camera can be from the pivot point. |
maxDistance | The maximum distance the camera can be from the pivot point. |
pivotDistance | The intended distance between the camera and the pivot point. |
occlusionDistance | The amount of distance the camera is adjusted due to occlusion. |
GetTransform | Calculates the camera position and rotation from the context values. |
GetUnmodifiedTransform | Calculates the camera position and rotation from the context values without applying any modifiers or overrides. |
ResetOverrides | Resets any position or rotation overrides applied during the last frame. |
public Quaternion lookRotation
The look rotation of the camera expressed as a quaternion.
public Quaternion lookRotation
The look rotation of the camera expressed as a quaternion.
public float maxDistance
The maximum distance the camera can be from the pivot point.
public float maxDistance
The maximum distance the camera can be from the pivot point.
public float minDistance
The minimum distance the camera can be from the pivot point.
public float minDistance
The minimum distance the camera can be from the pivot point.
public Quaternion modifiedRotation { get; }
The look rotation of the camera with modifiers applied (Read only).
public Quaternion modifiedRotation { get; }
The look rotation of the camera with modifiers applied (Read only).
public Vector3 modifiedTrackingPoint { get; }
The position the camera is tracking with modifiers applied (Read only).
public Vector3 modifiedTrackingPoint { get; }
The position the camera is tracking with modifiers applied (Read only).
public float occlusionDistance
The amount of distance the camera is adjusted due to occlusion.
public float occlusionDistance
The amount of distance the camera is adjusted due to occlusion.
public float pivotDistance
The intended distance between the camera and the pivot point.
public float pivotDistance
The intended distance between the camera and the pivot point.
public Vector3Accumulator positionModifiers { get; }
Modifiers that alter the camera position.
public Vector3Accumulator positionModifiers { get; }
Modifiers that alter the camera position.
public Vector3 positionOverride
Overrides the camera's position to the specified value.
public Vector3 positionOverride
Overrides the camera's position to the specified value.
public QuaternionAccumulator rotationModifiers { get; }
Modifiers that alter the camera rotation.
public QuaternionAccumulator rotationModifiers { get; }
Modifiers that alter the camera rotation.
public Quaternion rotationOverride
Overrides the camera's rotation to the specified value.
public Quaternion rotationOverride
Overrides the camera's rotation to the specified value.
public Vector3Accumulator trackingModifiers { get; }
Modifiers that alter the tracking point.
public Vector3Accumulator trackingModifiers { get; }
Modifiers that alter the tracking point.
public Vector3 trackingPoint
The position the camera is tracking.
public Vector3 trackingPoint
The position the camera is tracking.
public T GetModule<T>()
- where T : CameraModule
Returns the camera module of the specified type.
T | The type of module to retrieve. |
T | The camera module of the specified type, or null if not registered. |
public T GetModule<T>()
+ where T : CameraModule
Returns the camera module of the specified type.
T | The type of module to retrieve. |
T | The camera module of the specified type, or null if not registered. |
public void SetProfile(CameraProfile profile)
Applies the camera settings profile to the controller.
profile | The profile to apply. |
public void SetProfile(CameraProfile profile)
Applies the camera settings profile to the controller.
profile | The profile to apply. |
public void SetTrackingTarget(Transform target)
Sets the camera tracking target.
target | The transform to track. |
public void SetTrackingTarget(Transform target)
Sets the camera tracking target.
target | The transform to track. |
public Camera camera { get; }
The camera that is being controlled.
public Camera camera { get; }
The camera that is being controlled.
public Vector3 cameraEulerAngles { get; }
The current euler angles of the camera (Read only).
public Vector3 cameraEulerAngles { get; }
The current euler angles of the camera (Read only).
public Vector3 cameraForward { get; }
The current forward axis of the camera (Read only).
public Vector3 cameraForward { get; }
The current forward axis of the camera (Read only).
public Vector3 cameraPosition { get; }
The current position of the camera (Read only).
public Vector3 cameraPosition { get; }
The current position of the camera (Read only).
public Quaternion cameraRotation { get; }
The current rotation of the camera (Read only).
public Quaternion cameraRotation { get; }
The current rotation of the camera (Read only).
public CameraContext context { get; }
The current camera context / state.
public CameraContext context { get; }
The current camera context / state.
public bool freeze { get; set; }
Freezes the position and rotation of the camera.
public bool freeze { get; set; }
Freezes the position and rotation of the camera.
public sealed class CameraController : MonoBehaviour
Controls and handles the behaviors of a camera.
camera | The camera that is being controlled. |
cameraPosition | The current position of the camera (Read only). |
cameraRotation | The current rotation of the camera (Read only). |
cameraEulerAngles | The current euler angles of the camera (Read only). |
cameraForward | The current forward axis of the camera (Read only). |
profile | The instanced camera settings profile used by the controller. |
sharedProfile | The shared camera settings profile used by the controller. |
trackingTarget | The transform the camera is tracking. |
context | The current camera context / state. |
modules | The camera module manager for the controller. |
input | The camera input manager for the controller. |
ui | The UI canvas for the controller. |
freeze | Freezes the position and rotation of the camera. |
SetProfile | Applies the camera settings profile to the controller. |
SetTrackingTarget | Sets the camera tracking target. |
GetModule<T> | Returns the camera module of the specified type. |
public sealed class CameraController : MonoBehaviour
Controls and handles the behaviors of a camera.
camera | The camera that is being controlled. |
cameraPosition | The current position of the camera (Read only). |
cameraRotation | The current rotation of the camera (Read only). |
cameraEulerAngles | The current euler angles of the camera (Read only). |
cameraForward | The current forward axis of the camera (Read only). |
profile | The instanced camera settings profile used by the controller. |
sharedProfile | The shared camera settings profile used by the controller. |
trackingTarget | The transform the camera is tracking. |
context | The current camera context / state. |
modules | The camera module manager for the controller. |
input | The camera input manager for the controller. |
ui | The UI canvas for the controller. |
freeze | Freezes the position and rotation of the camera. |
SetProfile | Applies the camera settings profile to the controller. |
SetTrackingTarget | Sets the camera tracking target. |
GetModule<T> | Returns the camera module of the specified type. |
public InputManager input { get; }
The camera input manager for the controller.
public InputManager input { get; }
The camera input manager for the controller.
public CameraModuleManager modules { get; }
The camera module manager for the controller.
public CameraModuleManager modules { get; }
The camera module manager for the controller.
public CameraProfile profile { get; }
The instanced camera settings profile used by the controller.
public CameraProfile profile { get; }
The instanced camera settings profile used by the controller.
public CameraProfile sharedProfile { get; }
The shared camera settings profile used by the controller.
public CameraProfile sharedProfile { get; }
The shared camera settings profile used by the controller.
public Transform trackingTarget { get; }
The transform the camera is tracking.
public Transform trackingTarget { get; }
The transform the camera is tracking.
public Canvas ui { get; }
The UI canvas for the controller.
public Canvas ui { get; }
The UI canvas for the controller.
public sealed class CameraCursor : CameraBehavior<CameraCursorSettings>
Changes the mouse cursor settings.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class CameraCursor : CameraBehavior<CameraCursorSettings>
Changes the mouse cursor settings.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public CursorState disabledState
The cursor state when the behavior is disabled.
public CursorState disabledState
The cursor state when the behavior is disabled.
public CursorState enabledState
The cursor state when the behavior is enabled.
public CursorState enabledState
The cursor state when the behavior is enabled.
[Serializable]
-public sealed class CameraCursorSettings : CameraBehaviorSettings<CameraCursor>
Settings for the camera cursor.
enabledState | The cursor state when the behavior is enabled. |
disabledState | The cursor state when the behavior is disabled. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class CameraCursorSettings : CameraBehaviorSettings<CameraCursor>
Settings for the camera cursor.
enabledState | The cursor state when the behavior is enabled. |
disabledState | The cursor state when the behavior is disabled. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public void Activate()
Activates the effect.
public void Activate()
Activates the effect.
public void Deactivate()
Deactivates the effect.
public void Deactivate()
Deactivates the effect.
protected virtual void OnEffectActivate(U profile)
A callback invoked when the effect is activated.
profile | The active profile of the effect. |
protected virtual void OnEffectActivate(U profile)
A callback invoked when the effect is activated.
profile | The active profile of the effect. |
protected virtual void OnEffectDeactivate(U profile)
A callback invoked when the effect is deactivated.
profile | The active profile of the effect. |
protected virtual void OnEffectDeactivate(U profile)
A callback invoked when the effect is deactivated.
profile | The active profile of the effect. |
protected virtual void OnEffectRestart(U profile)
A callback invoked when the effect is restarted.
profile | The active profile of the effect. |
protected virtual void OnEffectRestart(U profile)
A callback invoked when the effect is restarted.
profile | The active profile of the effect. |
public bool SetProfile(string name)
Sets the profile with the given name to be active.
name | The name of the profile to set active. |
bool | True if the profile was set, false otherwise. |
public bool SetProfile(int index)
Sets the profile at the given index to be active.
index | The index of the profile to set active. |
bool | True if the profile was set, false otherwise. |
public bool SetProfile(string name)
Sets the profile with the given name to be active.
name | The name of the profile to set active. |
bool | True if the profile was set, false otherwise. |
public bool SetProfile(int index)
Sets the profile at the given index to be active.
index | The index of the profile to set active. |
bool | True if the profile was set, false otherwise. |
public bool active { get; protected set; }
Whether the effect is currently active.
public bool active { get; protected set; }
Whether the effect is currently active.
public abstract class CameraEffect<T, U> : CameraModifier<T>, ICameraEffect where T : CameraEffectSettings<U>, new()
- where U : CameraEffectProfile
A simulated effect that is applied to the camera.
T | The settings type to use for the effect. |
U | The profile type to use for the effect. |
profile | The active settings profile for the effect. |
active | Whether the effect is currently active. |
Activate | Activates the effect. |
Deactivate | Deactivates the effect. |
SetProfile | Sets the profile with the given name to be active. |
OnEffectActivate | A callback invoked when the effect is activated. |
OnEffectDeactivate | A callback invoked when the effect is deactivated. |
OnEffectRestart | A callback invoked when the effect is restarted. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public abstract class CameraEffect<T, U> : CameraModifier<T>, ICameraEffect where T : CameraEffectSettings<U>, new()
+ where U : CameraEffectProfile
A simulated effect that is applied to the camera.
T | The settings type to use for the effect. |
U | The profile type to use for the effect. |
profile | The active settings profile for the effect. |
active | Whether the effect is currently active. |
Activate | Activates the effect. |
Deactivate | Deactivates the effect. |
SetProfile | Sets the profile with the given name to be active. |
OnEffectActivate | A callback invoked when the effect is activated. |
OnEffectDeactivate | A callback invoked when the effect is deactivated. |
OnEffectRestart | A callback invoked when the effect is restarted. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public U profile { get; set; }
The active settings profile for the effect.
public U profile { get; set; }
The active settings profile for the effect.
public static void Activate(this ICameraEffect effect, string profile)
Activates the effect with the given profile.
effect | The effect to activate. |
profile | The name of the profile to activate with. |
public static void Activate(this ICameraEffect effect, int profile)
Activates the effect with the given profile.
effect | The effect to activate. |
profile | The index of the profile to activate with. |
public static void Activate(this ICameraEffect effect, string profile)
Activates the effect with the given profile.
effect | The effect to activate. |
profile | The name of the profile to activate with. |
public static void Activate(this ICameraEffect effect, int profile)
Activates the effect with the given profile.
effect | The effect to activate. |
profile | The index of the profile to activate with. |
public static void Deactivate(this ICameraEffect effect, string profile)
Deactivates the effect with the given profile.
effect | The effect to deactivate. |
profile | The name of the profile to deactivate with. |
public static void Deactivate(this ICameraEffect effect, int profile)
Deactivates the effect with the given profile.
effect | The effect to deactivate. |
profile | The index of the profile to deactivate with. |
public static void Deactivate(this ICameraEffect effect, string profile)
Deactivates the effect with the given profile.
effect | The effect to deactivate. |
profile | The name of the profile to deactivate with. |
public static void Deactivate(this ICameraEffect effect, int profile)
Deactivates the effect with the given profile.
effect | The effect to deactivate. |
profile | The index of the profile to deactivate with. |
public static bool SetDefaultProfile(this ICameraEffect effect)
Sets the profile named "Default" to be active or the first profile in the list if not found.
effect | The effect to set the profile for. |
bool | True if the profile was set, false otherwise. |
public static bool SetDefaultProfile(this ICameraEffect effect)
Sets the profile named "Default" to be active or the first profile in the list if not found.
effect | The effect to set the profile for. |
bool | True if the profile was set, false otherwise. |
public static void Toggle(this ICameraEffect effect)
Toggles the effect's active state.
effect |
public static void Toggle(this ICameraEffect effect)
Toggles the effect's active state.
effect |
public static class CameraEffectExtensions
Extension methods for ICameraEffect.
Activate | Activates the effect with the given profile. |
Deactivate | Deactivates the effect with the given profile. |
Toggle | Toggles the effect's active state. |
SetDefaultProfile | Sets the profile named "Default" to be active or the first profile in the list if not found. |
public static class CameraEffectExtensions
Extension methods for ICameraEffect.
Activate | Activates the effect with the given profile. |
Deactivate | Deactivates the effect with the given profile. |
Toggle | Toggles the effect's active state. |
SetDefaultProfile | Sets the profile named "Default" to be active or the first profile in the list if not found. |
public CameraEffectProfile(string name = "Default")
Creates a new profile with the given name.
name | The name of the profile. |
public CameraEffectProfile(string name = "Default")
Creates a new profile with the given name.
name | The name of the profile. |
[Serializable]
-public abstract class CameraEffectProfile
The base class for camera effect profiles.
name | The name of the settings profile. |
CameraEffectProfile | Creates a new profile with the given name. |
[Serializable]
+public abstract class CameraEffectProfile
The base class for camera effect profiles.
name | The name of the settings profile. |
CameraEffectProfile | Creates a new profile with the given name. |
public string name
The name of the settings profile.
public string name
The name of the settings profile.
[Serializable]
-public abstract class CameraEffectSettings<T> : CameraBehaviorSettings where T : CameraEffectProfile
The base class for all camera effect settings.
T | The profile type to use for the effect. |
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public abstract class CameraEffectSettings<T> : CameraBehaviorSettings where T : CameraEffectProfile
The base class for all camera effect settings.
T | The profile type to use for the effect. |
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public T[] profiles
The settings profiles available to use.
public T[] profiles
The settings profiles available to use.
[Serializable]
+Camera System • Scripting API CameraEffectSettings<T, U>
Class in Zigurous.CameraSystemInherits from CameraEffectSettings<T>
Declaration
[Serializable]
public abstract class CameraEffectSettings<T, U> : CameraEffectSettings<U> where T : CameraModule, new()
- where U : CameraEffectProfile
Description
The base class for camera effect settings of a specified type.
Type Parameters
T The type of module associated with the settings. U The profile type to use for the settings.
InheritedProperties
profiles The settings profiles available to use. active Whether the settings are active on a camera profile. Inactive settings will not display in the editor. enabled Turns on or off the settings behavior. Enabled behaviors are updated every frame. isActiveAndEnabled Whether the settings are active and enabled.
\ No newline at end of file
+ where U : CameraEffectProfile
The base class for camera effect settings of a specified type.
T | The type of module associated with the settings. |
U | The profile type to use for the settings. |
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
protected Vector3 GetPositionModifier()
Gets the position modifier of the behavior.
Vector3 | The current position modifier. |
protected Vector3 GetPositionModifier()
Gets the position modifier of the behavior.
Vector3 | The current position modifier. |
protected Quaternion GetRotationModifier()
Gets the rotation modifier of the behavior.
Quaternion | The current rotation modifier. |
protected Quaternion GetRotationModifier()
Gets the rotation modifier of the behavior.
Quaternion | The current rotation modifier. |
protected Vector3 GetTrackingModifier()
Gets the tracking modifier of the behavior.
Vector3 | The current tracking modifier. |
protected Vector3 GetTrackingModifier()
Gets the tracking modifier of the behavior.
Vector3 | The current tracking modifier. |
protected void RemovePositionModifier()
Removes the position modifier of the behavior.
protected void RemovePositionModifier()
Removes the position modifier of the behavior.
protected void RemoveRotationModifier()
Removes the rotation modifier of the behavior.
protected void RemoveRotationModifier()
Removes the rotation modifier of the behavior.
protected void RemoveTrackingModifier()
Removes the tracking modifier of the behavior.
protected void RemoveTrackingModifier()
Removes the tracking modifier of the behavior.
protected void SetPositionModifier(Vector3 position)
Sets the position modifier of the behavior.
position | The new position modifier. |
protected void SetPositionModifier(Vector3 position)
Sets the position modifier of the behavior.
position | The new position modifier. |
protected void SetRotationModifier(Quaternion rotation)
Sets the rotation modifier of the behavior.
rotation | The new rotation modifier. |
protected void SetRotationModifier(Quaternion rotation)
Sets the rotation modifier of the behavior.
rotation | The new rotation modifier. |
protected void SetTrackingModifier(Vector3 offset)
Sets the tracking modifier of the behavior.
offset | The new tracking modifier. |
protected void SetTrackingModifier(Vector3 offset)
Sets the tracking modifier of the behavior.
offset | The new tracking modifier. |
public abstract class CameraModifier<T> : CameraBehavior<T> where T : CameraBehaviorSettings, new()
A camera behavior that applies a transform modifier to the camera.
T | The type of settings for the behavior. |
GetRotationModifier | Gets the rotation modifier of the behavior. |
GetPositionModifier | Gets the position modifier of the behavior. |
GetTrackingModifier | Gets the tracking modifier of the behavior. |
SetRotationModifier | Sets the rotation modifier of the behavior. |
SetPositionModifier | Sets the position modifier of the behavior. |
SetTrackingModifier | Sets the tracking modifier of the behavior. |
RemoveRotationModifier | Removes the rotation modifier of the behavior. |
RemovePositionModifier | Removes the position modifier of the behavior. |
RemoveTrackingModifier | Removes the tracking modifier of the behavior. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public abstract class CameraModifier<T> : CameraBehavior<T> where T : CameraBehaviorSettings, new()
A camera behavior that applies a transform modifier to the camera.
T | The type of settings for the behavior. |
GetRotationModifier | Gets the rotation modifier of the behavior. |
GetPositionModifier | Gets the position modifier of the behavior. |
GetTrackingModifier | Gets the tracking modifier of the behavior. |
SetRotationModifier | Sets the rotation modifier of the behavior. |
SetPositionModifier | Sets the position modifier of the behavior. |
SetTrackingModifier | Sets the tracking modifier of the behavior. |
RemoveRotationModifier | Removes the rotation modifier of the behavior. |
RemovePositionModifier | Removes the position modifier of the behavior. |
RemoveTrackingModifier | Removes the tracking modifier of the behavior. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public CameraController controller { get; }
The camera controller handling the module.
public CameraController controller { get; }
The camera controller handling the module.
public virtual int id { get; }
The unique identifier of the camera module.
public virtual int id { get; }
The unique identifier of the camera module.
public abstract class CameraModule
The base class for all camera modules which are registered to a camera controller and are updated every frame by the controller.
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public abstract class CameraModule
The base class for all camera modules which are registered to a camera controller and are updated every frame by the controller.
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public bool registered { get; }
Whether the module has been registered to a controller.
public bool registered { get; }
Whether the module has been registered to a controller.
public void Clear()
Clears all of the modules from the controller.
public void Clear()
Clears all of the modules from the controller.
public int Count { get; }
The number of modules registered to the controller.
public int Count { get; }
The number of modules registered to the controller.
public T Get<T>()
- where T : CameraModule
Returns the camera module of the specified type.
T | The type of module to retrieve. |
T | The camera module of the specified type, or null if not registered. |
public T Get<T>()
+ where T : CameraModule
Returns the camera module of the specified type.
T | The type of module to retrieve. |
T | The camera module of the specified type, or null if not registered. |
public CameraModule this[int index] { get; }
Gets the module at the specified index.
index | The index of the module to get. |
CameraModule | The module at the specified index. |
public CameraModule this[int index] { get; }
Gets the module at the specified index.
index | The index of the module to get. |
CameraModule | The module at the specified index. |
public T Register<T>()
- where T : CameraModule, new()
Registers a module to the controller of the specified type.
T | The type of module to register. |
T | The registered module. |
public T Register<T>()
+ where T : CameraModule, new()
Registers a module to the controller of the specified type.
T | The type of module to register. |
T | The registered module. |
public bool Register(CameraModule module)
Registers a module to the controller.
module | The module to register. |
bool | True if the module was registered, false if not. |
public bool Register(CameraModule module)
Registers a module to the controller.
module | The module to register. |
bool | True if the module was registered, false if not. |
public bool Unregister<T>()
- where T : CameraModule
Unregisters a module from the controller of the specified type.
T | The type of module to unregister. |
bool | True if the module was unregistered, false if not. |
public bool Unregister<T>()
+ where T : CameraModule
Unregisters a module from the controller of the specified type.
T | The type of module to unregister. |
bool | True if the module was unregistered, false if not. |
public bool Unregister(CameraModule module)
Unregisters a module from the controller.
module | The module to unregister. |
bool | True if the module was unregistered, false if not. |
public bool Unregister(CameraModule module)
Unregisters a module from the controller.
module | The module to unregister. |
bool | True if the module was unregistered, false if not. |
public CameraModuleManager(CameraController controller)
Initializes the module manager for the specified controller.
controller | The controller to initialize the manager for. |
public CameraModuleManager(CameraController controller)
Initializes the module manager for the specified controller.
controller | The controller to initialize the manager for. |
public sealed class CameraModuleManager
Manages the camera modules for a camera controller.
Count | The number of modules registered to the controller. |
Item[int] | Gets the module at the specified index. |
CameraModuleManager | Initializes the module manager for the specified controller. |
Get<T> | Returns the camera module of the specified type. |
Register<T> | Registers a module to the controller of the specified type. |
Register | Registers a module to the controller. |
Unregister<T> | Unregisters a module from the controller of the specified type. |
Unregister | Unregisters a module from the controller. |
Clear | Clears all of the modules from the controller. |
public sealed class CameraModuleManager
Manages the camera modules for a camera controller.
Count | The number of modules registered to the controller. |
Item[int] | Gets the module at the specified index. |
CameraModuleManager | Initializes the module manager for the specified controller. |
Get<T> | Returns the camera module of the specified type. |
Register<T> | Registers a module to the controller of the specified type. |
Register | Registers a module to the controller. |
Unregister<T> | Unregisters a module from the controller of the specified type. |
Unregister | Unregisters a module from the controller. |
Clear | Clears all of the modules from the controller. |
Custom = 0
Custom = 0
Dimetric = 9
Dimetric = 9
FirstPerson = 1
FirstPerson = 1
FirstPersonShooter = 2
FirstPersonShooter = 2
FreeFly = 11
FreeFly = 11
Isometric = 8
Isometric = 8
RealTimeStrategy = 6
RealTimeStrategy = 6
ThirdPerson = 3
ThirdPerson = 3
ThirdPersonAdventure = 4
ThirdPersonAdventure = 4
ThirdPersonShooter = 5
ThirdPersonShooter = 5
TopDown = 7
TopDown = 7
Trimetic = 10
Trimetic = 10
public enum CameraPreset
A preset for a camera settings profile.
Custom | |
FirstPerson | |
FirstPersonShooter | |
ThirdPerson | |
ThirdPersonAdventure | |
ThirdPersonShooter | |
RealTimeStrategy | |
TopDown | |
Isometric | |
Dimetric | |
Trimetic | |
FreeFly |
public enum CameraPreset
A preset for a camera settings profile.
Custom | |
FirstPerson | |
FirstPersonShooter | |
ThirdPerson | |
ThirdPersonAdventure | |
ThirdPersonShooter | |
RealTimeStrategy | |
TopDown | |
Isometric | |
Dimetric | |
Trimetic | |
FreeFly |
public static CameraProfile CreateProfile(this CameraPreset preset)
Creates a new camera settings profile from the specified preset.
preset | The preset to create the profile from. |
CameraProfile | The new camera settings profile. |
public static CameraProfile CreateProfile(this CameraPreset preset)
Creates a new camera settings profile from the specified preset.
preset | The preset to create the profile from. |
CameraProfile | The new camera settings profile. |
public static class CameraPresetExtensions
Extension methods for CameraPreset.
CreateProfile | Creates a new camera settings profile from the specified preset. |
public static class CameraPresetExtensions
Extension methods for CameraPreset.
CreateProfile | Creates a new camera settings profile from the specified preset. |
public T AddSettings<T>(bool enabled = true)
- where T : CameraSettings, new()
Adds the settings of the specified type to the profile.
T | The type of settings to add. |
enabled | Whether the settings behavior is enabled (default=true). |
T | The settings added to the profile. |
public T AddSettings<T>(bool enabled = true)
+ where T : CameraSettings, new()
Adds the settings of the specified type to the profile.
T | The type of settings to add. |
enabled | Whether the settings behavior is enabled (default=true). |
T | The settings added to the profile. |
public static CameraProfile Create()
Creates a new camera settings profile.
CameraProfile | The new camera settings profile. |
public static CameraProfile Create(CameraPreset preset)
Creates a new camera settings profile from the specified preset.
preset | The preset to create the profile from. |
CameraProfile | The new camera settings profile. |
public static CameraProfile Create()
Creates a new camera settings profile.
CameraProfile | The new camera settings profile. |
public static CameraProfile Create(CameraPreset preset)
Creates a new camera settings profile from the specified preset.
preset | The preset to create the profile from. |
CameraProfile | The new camera settings profile. |
public T GetSettings<T>()
- where T : CameraSettings
Gets the settings of the specified type.
T | The type of settings to get. |
T | The settings of the specified type, or null if not present. |
public T GetSettings<T>()
+ where T : CameraSettings
Gets the settings of the specified type.
T | The type of settings to get. |
T | The settings of the specified type, or null if not present. |
public void RemoveSettings<T>()
- where T : CameraSettings
Removes the settings of the specified type from the profile.
T | The type of settings to remove. |
public void RemoveSettings<T>()
+ where T : CameraSettings
Removes the settings of the specified type from the profile.
T | The type of settings to remove. |
public AimPunchSettings aimPunch { get; }
The aim punch settings.
public AimPunchSettings aimPunch { get; }
The aim punch settings.
public AnimatorMotionSettings animatorMotion { get; }
The animator motion settings.
public AnimatorMotionSettings animatorMotion { get; }
The animator motion settings.
public AutoFocusSettings autoFocus { get; }
The auto focus settings.
public AutoFocusSettings autoFocus { get; }
The auto focus settings.
public CameraShakeSettings cameraShake { get; }
The camera shake settings.
public CameraShakeSettings cameraShake { get; }
The camera shake settings.
public CameraCollisionSettings collision { get; }
The camera collision settings.
public CameraCollisionSettings collision { get; }
The camera collision settings.
public CameraProfile()
Creates a new camera settings profile.
public CameraProfile()
Creates a new camera settings profile.
public CameraCursorSettings cursor { get; }
The camera cursor settings.
public CameraCursorSettings cursor { get; }
The camera cursor settings.
public EyelineAdjustmentSettings eyelineAdjustment { get; }
The eyeline adjustment settings.
public EyelineAdjustmentSettings eyelineAdjustment { get; }
The eyeline adjustment settings.
public FollowSettings follow { get; }
The camera follow settings.
public FollowSettings follow { get; }
The camera follow settings.
public FOVKickSettings fovKick { get; }
The FOV "Kick" settings.
public FOVKickSettings fovKick { get; }
The FOV "Kick" settings.
public FreeFlySettings freeFly { get; }
The camera free fly settings.
public FreeFlySettings freeFly { get; }
The camera free fly settings.
public FreeLookSettings freeLook { get; }
The camera free look settings.
public FreeLookSettings freeLook { get; }
The camera free look settings.
public HeadBobSettings headBob { get; }
The head bob settings.
public HeadBobSettings headBob { get; }
The head bob settings.
public sealed class CameraProfile : ScriptableObject
The settings profile for a camera controller.
preset | The preset used to create the profile. |
aimPunch | The aim punch settings. |
animatorMotion | The animator motion settings. |
autoFocus | The auto focus settings. |
cameraShake | The camera shake settings. |
collision | The camera collision settings. |
cursor | The camera cursor settings. |
eyelineAdjustment | The eyeline adjustment settings. |
follow | The camera follow settings. |
fovKick | The FOV "Kick" settings. |
freeFly | The camera free fly settings. |
freeLook | The camera free look settings. |
headBob | The head bob settings. |
noise | The noise settings. |
panning | The camera panning settings. |
recoil | The recoil settings. |
screenFade | The screen fade settings. |
shoulderLean | The shoulder lean settings. |
shoulderSwap | The shoulder swap settings. |
targeting | The camera targeting settings. |
zoom | The camera zoom settings. |
CameraProfile | Creates a new camera settings profile. |
GetSettings<T> | Gets the settings of the specified type. |
AddSettings<T> | Adds the settings of the specified type to the profile. |
RemoveSettings<T> | Removes the settings of the specified type from the profile. |
Create | Creates a new camera settings profile. |
public sealed class CameraProfile : ScriptableObject
The settings profile for a camera controller.
preset | The preset used to create the profile. |
aimPunch | The aim punch settings. |
animatorMotion | The animator motion settings. |
autoFocus | The auto focus settings. |
cameraShake | The camera shake settings. |
collision | The camera collision settings. |
cursor | The camera cursor settings. |
eyelineAdjustment | The eyeline adjustment settings. |
follow | The camera follow settings. |
fovKick | The FOV "Kick" settings. |
freeFly | The camera free fly settings. |
freeLook | The camera free look settings. |
headBob | The head bob settings. |
noise | The noise settings. |
panning | The camera panning settings. |
recoil | The recoil settings. |
screenFade | The screen fade settings. |
shoulderLean | The shoulder lean settings. |
shoulderSwap | The shoulder swap settings. |
targeting | The camera targeting settings. |
zoom | The camera zoom settings. |
CameraProfile | Creates a new camera settings profile. |
GetSettings<T> | Gets the settings of the specified type. |
AddSettings<T> | Adds the settings of the specified type to the profile. |
RemoveSettings<T> | Removes the settings of the specified type from the profile. |
Create | Creates a new camera settings profile. |
public NoiseSettings noise { get; }
The noise settings.
public NoiseSettings noise { get; }
The noise settings.
public PanningSettings panning { get; }
The camera panning settings.
public PanningSettings panning { get; }
The camera panning settings.
public CameraPreset preset { get; }
The preset used to create the profile.
public CameraPreset preset { get; }
The preset used to create the profile.
public RecoilSettings recoil { get; }
The recoil settings.
public RecoilSettings recoil { get; }
The recoil settings.
public ScreenFadeSettings screenFade { get; }
The screen fade settings.
public ScreenFadeSettings screenFade { get; }
The screen fade settings.
public ShoulderLeanSettings shoulderLean { get; }
The shoulder lean settings.
public ShoulderLeanSettings shoulderLean { get; }
The shoulder lean settings.
public ShoulderSwapSettings shoulderSwap { get; }
The shoulder swap settings.
public ShoulderSwapSettings shoulderSwap { get; }
The shoulder swap settings.
public TargetingSettings targeting { get; }
The camera targeting settings.
public TargetingSettings targeting { get; }
The camera targeting settings.
public ZoomSettings zoom { get; }
The camera zoom settings.
public ZoomSettings zoom { get; }
The camera zoom settings.
protected virtual void OnActivate(CameraController controller)
A callback invoked when the settings are activated on a controller.
controller | The controller that activated the settings. |
protected virtual void OnActivate(CameraController controller)
A callback invoked when the settings are activated on a controller.
controller | The controller that activated the settings. |
protected virtual void OnDeactivate(CameraController controller)
A callback invoked when the settings are deactivated on a controller.
controller | The controller that deactivated the settings. |
protected virtual void OnDeactivate(CameraController controller)
A callback invoked when the settings are deactivated on a controller.
controller | The controller that deactivated the settings. |
public bool active { get; set; }
Whether the settings are active on a camera profile. Inactive settings will not display in the editor.
public bool active { get; set; }
Whether the settings are active on a camera profile. Inactive settings will not display in the editor.
public bool enabled { get; set; }
Turns on or off the settings behavior. Enabled behaviors are updated every frame.
public bool enabled { get; set; }
Turns on or off the settings behavior. Enabled behaviors are updated every frame.
[Serializable]
-public abstract class CameraSettings
The base class for all camera settings.
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
OnActivate | A callback invoked when the settings are activated on a controller. |
OnDeactivate | A callback invoked when the settings are deactivated on a controller. |
[Serializable]
+public abstract class CameraSettings
The base class for all camera settings.
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
OnActivate | A callback invoked when the settings are activated on a controller. |
OnDeactivate | A callback invoked when the settings are deactivated on a controller. |
public bool isActiveAndEnabled { get; }
Whether the settings are active and enabled.
public bool isActiveAndEnabled { get; }
Whether the settings are active and enabled.
public sealed class CameraShake : CameraEffect<CameraShakeSettings, CameraShakeProfile>, ICameraEffect
Rapidly changes the position and rotation of the camera to simulate the camera shaking.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class CameraShake : CameraEffect<CameraShakeSettings, CameraShakeProfile>, ICameraEffect
Rapidly changes the position and rotation of the camera to simulate the camera shaking.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float acceleration
The amount of seconds it takes the camera shake to accelerate to full strength.
public float acceleration
The amount of seconds it takes the camera shake to accelerate to full strength.
public float deceleration
The amount of seconds it takes the camera shake to decay back to zero.
public float deceleration
The amount of seconds it takes the camera shake to decay back to zero.
public float duration
The amount of seconds the camera shake lasts.
public float duration
The amount of seconds the camera shake lasts.
public float frequency
The frequency of the noise function. A higher value results in quicker camera movements.
public float frequency
The frequency of the noise function. A higher value results in quicker camera movements.
[Serializable]
-public sealed class CameraShakeProfile : CameraEffectProfile
A settings profile for a camera shake effect.
duration | The amount of seconds the camera shake lasts. |
acceleration | The amount of seconds it takes the camera shake to accelerate to full strength. |
deceleration | The amount of seconds it takes the camera shake to decay back to zero. |
frequency | The frequency of the noise function. A higher value results in quicker camera movements. |
magnitude | The magnitude of the noise vector. A higher value results in larger camera movements. |
positionalStrength | How much the camera shake impacts the position of the camera. |
rotationalStrength | How much the camera shake impacts the rotation of the camera. |
name | The name of the settings profile. |
[Serializable]
+public sealed class CameraShakeProfile : CameraEffectProfile
A settings profile for a camera shake effect.
duration | The amount of seconds the camera shake lasts. |
acceleration | The amount of seconds it takes the camera shake to accelerate to full strength. |
deceleration | The amount of seconds it takes the camera shake to decay back to zero. |
frequency | The frequency of the noise function. A higher value results in quicker camera movements. |
magnitude | The magnitude of the noise vector. A higher value results in larger camera movements. |
positionalStrength | How much the camera shake impacts the position of the camera. |
rotationalStrength | How much the camera shake impacts the rotation of the camera. |
name | The name of the settings profile. |
public float magnitude
The magnitude of the noise vector. A higher value results in larger camera movements.
public float magnitude
The magnitude of the noise vector. A higher value results in larger camera movements.
public float positionalStrength
How much the camera shake impacts the position of the camera.
public float positionalStrength
How much the camera shake impacts the position of the camera.
public float rotationalStrength
How much the camera shake impacts the rotation of the camera.
public float rotationalStrength
How much the camera shake impacts the rotation of the camera.
[Serializable]
-public sealed class CameraShakeSettings : CameraEffectSettings<CameraShake, CameraShakeProfile>
Settings for a camera shake effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class CameraShakeSettings : CameraEffectSettings<CameraShake, CameraShakeProfile>
Settings for a camera shake effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public Camera camera
The camera to measure the distance to.
public Camera camera
The camera to measure the distance to.
public UnityEvent enter
The event invoked when the target enters sight of the camera.
public UnityEvent enter
The event invoked when the target enters sight of the camera.
public UnityEvent exit
The event invoked when the target exits sight of the camera.
public UnityEvent exit
The event invoked when the target exits sight of the camera.
public bool inSight { get; }
Whether the target is currently within sight of the camera.
public bool inSight { get; }
Whether the target is currently within sight of the camera.
public sealed class CameraSightEvent : MonoBehaviour
Invokes an event when the camera is within a certain distance of a target.
enter | The event invoked when the target enters sight of the camera. |
exit | The event invoked when the target exits sight of the camera. |
camera | The camera to measure the distance to. |
target | The target to check if it is within sight of the camera. |
minimumDistance | The minimum distance for the target to be considered in sight. |
maximumDistance | The maximum distance for the target to be considered in sight. |
inSight | Whether the target is currently within sight of the camera. |
public sealed class CameraSightEvent : MonoBehaviour
Invokes an event when the camera is within a certain distance of a target.
enter | The event invoked when the target enters sight of the camera. |
exit | The event invoked when the target exits sight of the camera. |
camera | The camera to measure the distance to. |
target | The target to check if it is within sight of the camera. |
minimumDistance | The minimum distance for the target to be considered in sight. |
maximumDistance | The maximum distance for the target to be considered in sight. |
inSight | Whether the target is currently within sight of the camera. |
public float maximumDistance
The maximum distance for the target to be considered in sight.
public float maximumDistance
The maximum distance for the target to be considered in sight.
public float minimumDistance
The minimum distance for the target to be considered in sight.
public float minimumDistance
The minimum distance for the target to be considered in sight.
public Transform target
The target to check if it is within sight of the camera.
public Transform target
The target to check if it is within sight of the camera.
public CursorState(CursorLockMode lockMode, bool visible)
Creates a new cursor state.
lockMode | How the cursor should behave. |
visible | Shows or hides the cursor. |
public CursorState(CursorLockMode lockMode, bool visible)
Creates a new cursor state.
lockMode | How the cursor should behave. |
visible | Shows or hides the cursor. |
[Serializable]
-public struct CursorState
The cursor settings for a given state.
lockMode | How the cursor should behave. |
visible | Shows or hides the cursor. |
CursorState | Creates a new cursor state. |
[Serializable]
+public struct CursorState
The cursor settings for a given state.
lockMode | How the cursor should behave. |
visible | Shows or hides the cursor. |
CursorState | Creates a new cursor state. |
public CursorLockMode lockMode
How the cursor should behave.
public CursorLockMode lockMode
How the cursor should behave.
public bool visible
Shows or hides the cursor.
public bool visible
Shows or hides the cursor.
public sealed class EyelineAdjustment : CameraModifier<EyelineAdjustmentSettings>
Adjusts the position of the camera to match the eyeline of the character.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class EyelineAdjustment : CameraModifier<EyelineAdjustmentSettings>
Adjusts the position of the camera to match the eyeline of the character.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float eyelineHeight
The distance from the ground to the character's eyeline as a percentage of the character's height.
public float eyelineHeight
The distance from the ground to the character's eyeline as a percentage of the character's height.
[Serializable]
-public sealed class EyelineAdjustmentSettings : CameraBehaviorSettings<EyelineAdjustment>
Settings for an eyeline tracker modifier.
eyelineHeight | The distance from the ground to the character's eyeline as a percentage of the character's height. |
smoothing | How quickly eyeline adjustments are made. Larger numbers make the camera adjust more smoothly. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class EyelineAdjustmentSettings : CameraBehaviorSettings<EyelineAdjustment>
Settings for an eyeline tracker modifier.
eyelineHeight | The distance from the ground to the character's eyeline as a percentage of the character's height. |
smoothing | How quickly eyeline adjustments are made. Larger numbers make the camera adjust more smoothly. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float smoothing
How quickly eyeline adjustments are made. Larger numbers make the camera adjust more smoothly.
public float smoothing
How quickly eyeline adjustments are made. Larger numbers make the camera adjust more smoothly.
public sealed class FOVKick : CameraEffect<FOVKickSettings, FOVKickProfile>, ICameraEffect
Animates a subtle change in the field of view of the camera. For example, increasing the field of view when the player sprints creates a better feel for the faster motion.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class FOVKick : CameraEffect<FOVKickSettings, FOVKickProfile>, ICameraEffect
Animates a subtle change in the field of view of the camera. For example, increasing the field of view when the player sprints creates a better feel for the faster motion.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float amount
The amount of change in degrees to the camera's field of view.
public float amount
The amount of change in degrees to the camera's field of view.
[Serializable]
-public sealed class FOVKickProfile : CameraEffectProfile
A settings profile for a FOV "Kick" effect.
amount | The amount of change in degrees to the camera's field of view. |
kickIn | The transition settings when the FOV "kick" is enabled. |
kickOut | The transition settings when the FOV "kick" is disabled. |
name | The name of the settings profile. |
[Serializable]
+public sealed class FOVKickProfile : CameraEffectProfile
A settings profile for a FOV "Kick" effect.
amount | The amount of change in degrees to the camera's field of view. |
kickIn | The transition settings when the FOV "kick" is enabled. |
kickOut | The transition settings when the FOV "kick" is disabled. |
name | The name of the settings profile. |
public FOVKickTransition kickIn
The transition settings when the FOV "kick" is enabled.
public FOVKickTransition kickIn
The transition settings when the FOV "kick" is enabled.
public FOVKickTransition kickOut
The transition settings when the FOV "kick" is disabled.
public FOVKickTransition kickOut
The transition settings when the FOV "kick" is disabled.
[Serializable]
-public sealed class FOVKickSettings : CameraEffectSettings<FOVKick, FOVKickProfile>
Settings for a FOV "Kick" effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class FOVKickSettings : CameraEffectSettings<FOVKick, FOVKickProfile>
Settings for a FOV "Kick" effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float duration
The amount of seconds it takes to change the field of view.
public float duration
The amount of seconds it takes to change the field of view.
public AnimationCurve easing
The animation curve used when changing the field of view.
public AnimationCurve easing
The animation curve used when changing the field of view.
[Serializable]
-public sealed class FOVKickTransition
Settings for a FOV "Kick" transition.
duration | The amount of seconds it takes to change the field of view. |
easing | The animation curve used when changing the field of view. |
[Serializable]
+public sealed class FOVKickTransition
Settings for a FOV "Kick" transition.
duration | The amount of seconds it takes to change the field of view. |
easing | The animation curve used when changing the field of view. |
public static void GetTrackingData(CameraContext context, Transform target, Vector3 offset, out Vector3 trackingPoint, out Quaternion trackingRotation)
Calculates the tracking point and tracking rotation for the camera.
context | The camera context. |
target | The target to track. |
offset | The offset from the target. |
trackingPoint | The output tracking point. |
trackingRotation | The output tracking rotation. |
public static void GetTrackingData(CameraContext context, Transform target, Vector3 offset, out Vector3 trackingPoint, out Quaternion trackingRotation)
Calculates the tracking point and tracking rotation for the camera.
context | The camera context. |
target | The target to track. |
offset | The offset from the target. |
trackingPoint | The output tracking point. |
trackingRotation | The output tracking rotation. |
public Vector3 followPosition { get; }
The current tracked follow position (Read only).
public Vector3 followPosition { get; }
The current tracked follow position (Read only).
public sealed class Follow : CameraBehavior<FollowSettings>
Moves and rotates the camera to follow a tracked object.
followPosition | The current tracked follow position (Read only). |
lookRotation | The current tracked look rotation (Read only). |
GetTrackingData | Calculates the tracking point and tracking rotation for the camera. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class Follow : CameraBehavior<FollowSettings>
Moves and rotates the camera to follow a tracked object.
followPosition | The current tracked follow position (Read only). |
lookRotation | The current tracked look rotation (Read only). |
GetTrackingData | Calculates the tracking point and tracking rotation for the camera. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public Quaternion lookRotation { get; }
The current tracked look rotation (Read only).
public Quaternion lookRotation { get; }
The current tracked look rotation (Read only).
[Serializable]
-public sealed class FollowSettings : CameraBehaviorSettings<Follow>
Settings for a camera follow behavior.
offset | The camera offset in the tracking target's local space. Use this to fine-tune the tracking position when the desired position is not the center of the target. |
moveTracking | Moves the camera to follow the target. |
moveDamping | How quickly the camera follows the tracking target. Small numbers make the camera follow the target more closely. |
lookTracking | Rotates the camera to look at the tracking target. |
lookDamping | How quickly the camera looks toward the tracking target. Small numbers make the camera respond more quickly. |
lookDelay | The amount of seconds before the camera starts automatically looking at the tracking target after the player has manually looked away. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class FollowSettings : CameraBehaviorSettings<Follow>
Settings for a camera follow behavior.
offset | The camera offset in the tracking target's local space. Use this to fine-tune the tracking position when the desired position is not the center of the target. |
moveTracking | Moves the camera to follow the target. |
moveDamping | How quickly the camera follows the tracking target. Small numbers make the camera follow the target more closely. |
lookTracking | Rotates the camera to look at the tracking target. |
lookDamping | How quickly the camera looks toward the tracking target. Small numbers make the camera respond more quickly. |
lookDelay | The amount of seconds before the camera starts automatically looking at the tracking target after the player has manually looked away. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float lookDamping
How quickly the camera looks toward the tracking target. Small numbers make the camera respond more quickly.
public float lookDamping
How quickly the camera looks toward the tracking target. Small numbers make the camera respond more quickly.
public float lookDelay
The amount of seconds before the camera starts automatically looking at the tracking target after the player has manually looked away.
public float lookDelay
The amount of seconds before the camera starts automatically looking at the tracking target after the player has manually looked away.
public bool lookTracking
Rotates the camera to look at the tracking target.
public bool lookTracking
Rotates the camera to look at the tracking target.
public float moveDamping
How quickly the camera follows the tracking target. Small numbers make the camera follow the target more closely.
public float moveDamping
How quickly the camera follows the tracking target. Small numbers make the camera follow the target more closely.
public bool moveTracking
Moves the camera to follow the target.
public bool moveTracking
Moves the camera to follow the target.
public Vector3 offset
The camera offset in the tracking target's local space. Use this to fine-tune the tracking position when the desired position is not the center of the target.
public Vector3 offset
The camera offset in the tracking target's local space. Use this to fine-tune the tracking position when the desired position is not the center of the target.
public Vector3 direction { get; }
The direction the camera is flying in local space (Read only).
public Vector3 direction { get; }
The direction the camera is flying in local space (Read only).
public bool fast { get; }
Whether fast mode is activated (Read only).
public bool fast { get; }
Whether fast mode is activated (Read only).
public sealed class FreeFly : CameraBehavior<FreeFlySettings>
Handles free fly camera movement.
direction | The direction the camera is flying in local space (Read only). |
speed | The current speed of the camera (Read only). |
fast | Whether fast mode is activated (Read only). |
slow | Whether slow mode is activated (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class FreeFly : CameraBehavior<FreeFlySettings>
Handles free fly camera movement.
direction | The direction the camera is flying in local space (Read only). |
speed | The current speed of the camera (Read only). |
fast | Whether fast mode is activated (Read only). |
slow | Whether slow mode is activated (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public bool slow { get; }
Whether slow mode is activated (Read only).
public bool slow { get; }
Whether slow mode is activated (Read only).
public float speed { get; }
The current speed of the camera (Read only).
public float speed { get; }
The current speed of the camera (Read only).
public InputAxis axisX
Handles moving on the x axis.
public InputAxis axisX
Handles moving on the x axis.
public InputAxis axisY
Handles moving on the y axis.
public InputAxis axisY
Handles moving on the y axis.
public InputAxis axisZ
Handles moving on the z axis.
public InputAxis axisZ
Handles moving on the z axis.
public InputButton buttonFast
Makes the camera move faster when the button is performed.
public InputButton buttonFast
Makes the camera move faster when the button is performed.
public InputButton buttonSlow
Makes the camera move slower when the button is performed.
public InputButton buttonSlow
Makes the camera move slower when the button is performed.
[Serializable]
-public sealed class FreeFlyInputSettings
Input settings for a camera free fly behavior.
axisX | Handles moving on the x axis. |
axisY | Handles moving on the y axis. |
axisZ | Handles moving on the z axis. |
buttonFast | Makes the camera move faster when the button is performed. |
buttonSlow | Makes the camera move slower when the button is performed. |
[Serializable]
+public sealed class FreeFlyInputSettings
Input settings for a camera free fly behavior.
axisX | Handles moving on the x axis. |
axisY | Handles moving on the y axis. |
axisZ | Handles moving on the z axis. |
buttonFast | Makes the camera move faster when the button is performed. |
buttonSlow | Makes the camera move slower when the button is performed. |
[Serializable]
-public sealed class FreeFlySettings : CameraBehaviorSettings<FreeFly>
Settings for a camera free fly behavior.
input | The input settings. |
speed | The speed settings. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class FreeFlySettings : CameraBehaviorSettings<FreeFly>
Settings for a camera free fly behavior.
input | The input settings. |
speed | The speed settings. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public FreeFlyInputSettings input
The input settings.
public FreeFlyInputSettings input
The input settings.
public FreeFlySpeedSettings speed
The speed settings.
public FreeFlySpeedSettings speed
The speed settings.
public float baseSpeed
The base speed at which the camera moves.
public float baseSpeed
The base speed at which the camera moves.
public float fastMultiplier
The speed multiplier when fast speed is active.
public float fastMultiplier
The speed multiplier when fast speed is active.
[Serializable]
-public sealed class FreeFlySpeedSettings
Speed settings for a camera free fly behavior.
baseSpeed | The base speed at which the camera moves. |
fastMultiplier | The speed multiplier when fast speed is active. |
slowMultiplier | The speed multiplier when slow speed is active. |
smoothing | How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly. |
[Serializable]
+public sealed class FreeFlySpeedSettings
Speed settings for a camera free fly behavior.
baseSpeed | The base speed at which the camera moves. |
fastMultiplier | The speed multiplier when fast speed is active. |
slowMultiplier | The speed multiplier when slow speed is active. |
smoothing | How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly. |
public float slowMultiplier
The speed multiplier when slow speed is active.
public float slowMultiplier
The speed multiplier when slow speed is active.
public float smoothing
How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly.
public float smoothing
How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly.
public sealed class FreeLook : CameraBehavior<FreeLookSettings>
Handles looking around while orbiting a pivot point.
input | The look input axis values (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class FreeLook : CameraBehavior<FreeLookSettings>
Handles looking around while orbiting a pivot point.
input | The look input axis values (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public Vector2 input { get; }
The look input axis values (Read only).
public Vector2 input { get; }
The look input axis values (Read only).
public FreeLookAxis(float min, float max)
Creates new axis settings.
min | The minimum value of the axis. |
max | The maximum value of the axis. |
public FreeLookAxis(float min, float max)
Creates new axis settings.
min | The minimum value of the axis. |
max | The maximum value of the axis. |
[Serializable]
-public sealed class FreeLookAxis
Settings for a look axis.
input | The input axis. |
range | The minimum and maximum angle of the look axis. |
initialAngle | The initial angle of the look axis. |
FreeLookAxis | Creates new axis settings. |
[Serializable]
+public sealed class FreeLookAxis
Settings for a look axis.
input | The input axis. |
range | The minimum and maximum angle of the look axis. |
initialAngle | The initial angle of the look axis. |
FreeLookAxis | Creates new axis settings. |
public FreeLookInitialAngle initialAngle
The initial angle of the look axis.
public FreeLookInitialAngle initialAngle
The initial angle of the look axis.
public InputAxis input
The input axis.
public InputAxis input
The input axis.
public FloatRange range
The minimum and maximum angle of the look axis.
public FloatRange range
The minimum and maximum angle of the look axis.
[Serializable]
-public sealed class FreeLookInitialAngle
Settings for the initial angle of a look axis.
matchTransform | Sets the initial angle to match the transform rotation. |
value | A custom initial angle for the look axis. |
[Serializable]
+public sealed class FreeLookInitialAngle
Settings for the initial angle of a look axis.
matchTransform | Sets the initial angle to match the transform rotation. |
value | A custom initial angle for the look axis. |
public bool matchTransform
Sets the initial angle to match the transform rotation.
public bool matchTransform
Sets the initial angle to match the transform rotation.
public float value
A custom initial angle for the look axis.
public float value
A custom initial angle for the look axis.
[Serializable]
-public sealed class FreeLookSettings : CameraBehaviorSettings<FreeLook>
Settings for a camera free look behavior.
xAxis | The x-axis settings. |
yAxis | The y-axis settings. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class FreeLookSettings : CameraBehaviorSettings<FreeLook>
Settings for a camera free look behavior.
xAxis | The x-axis settings. |
yAxis | The y-axis settings. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public FreeLookAxis xAxis
The x-axis settings.
public FreeLookAxis xAxis
The x-axis settings.
public FreeLookAxis yAxis
The y-axis settings.
public FreeLookAxis yAxis
The y-axis settings.
public sealed class HeadBob : CameraModifier<HeadBobSettings>
Simulates the effect of a person's head moving very slightly when walking or running.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class HeadBob : CameraModifier<HeadBobSettings>
Simulates the effect of a person's head moving very slightly when walking or running.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float amplitude
The amount the head moves up and down.
public float amplitude
The amount the head moves up and down.
public LayerMask groundLayers
The layer(s) to raycast against when checking if the character is grounded. Raycasting is only performed for rigidbodies since character controllers have a built-in isGrounded property.
public LayerMask groundLayers
The layer(s) to raycast against when checking if the character is grounded. Raycasting is only performed for rigidbodies since character controllers have a built-in isGrounded property.
[Serializable]
-public sealed class HeadBobSettings : CameraBehaviorSettings<HeadBob>
Settings for a head bob modifier.
amplitude | The amount the head moves up and down. |
period | The speed of the head bob. This is measured in time, so smaller values create a faster head bob. |
velocityFactor | The percent of the character's velocity that is factored into the speed of the head bob. |
minimumVelocity | The minimum amount of velocity required by the character in order for the head bob to take effect. |
groundLayers | The layer(s) to raycast against when checking if the character is grounded. Raycasting is only performed for rigidbodies since character controllers have a built-in isGrounded property. |
onlyGrounded | Only bobs the head while the character is grounded. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class HeadBobSettings : CameraBehaviorSettings<HeadBob>
Settings for a head bob modifier.
amplitude | The amount the head moves up and down. |
period | The speed of the head bob. This is measured in time, so smaller values create a faster head bob. |
velocityFactor | The percent of the character's velocity that is factored into the speed of the head bob. |
minimumVelocity | The minimum amount of velocity required by the character in order for the head bob to take effect. |
groundLayers | The layer(s) to raycast against when checking if the character is grounded. Raycasting is only performed for rigidbodies since character controllers have a built-in isGrounded property. |
onlyGrounded | Only bobs the head while the character is grounded. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float minimumVelocity
The minimum amount of velocity required by the character in order for the head bob to take effect.
public float minimumVelocity
The minimum amount of velocity required by the character in order for the head bob to take effect.
public bool onlyGrounded
Only bobs the head while the character is grounded.
public bool onlyGrounded
Only bobs the head while the character is grounded.
public float period
The speed of the head bob. This is measured in time, so smaller values create a faster head bob.
public float period
The speed of the head bob. This is measured in time, so smaller values create a faster head bob.
public float velocityFactor
The percent of the character's velocity that is factored into the speed of the head bob.
public float velocityFactor
The percent of the character's velocity that is factored into the speed of the head bob.
void Activate()
Activates the effect.
void Activate()
Activates the effect.
void Deactivate()
Deactivates the effect.
void Deactivate()
Deactivates the effect.
bool SetProfile(string name)
Sets the profile with the given name to be active.
name | The name of the profile to set active. |
bool | True if the profile was set, false otherwise. |
bool SetProfile(int index)
Sets the profile at the given index to be active.
index | The index of the profile to set active. |
bool | True if the profile was set, false otherwise. |
bool SetProfile(string name)
Sets the profile with the given name to be active.
name | The name of the profile to set active. |
bool | True if the profile was set, false otherwise. |
bool SetProfile(int index)
Sets the profile at the given index to be active.
index | The index of the profile to set active. |
bool | True if the profile was set, false otherwise. |
bool active { get; }
Whether the effect is currently active.
bool active { get; }
Whether the effect is currently active.
public interface ICameraEffect
An interface for a simulated effect that is applied to the camera.
active | Whether the effect is currently active. |
Activate | Activates the effect. |
Deactivate | Deactivates the effect. |
SetProfile | Sets the profile with the given name to be active. |
public interface ICameraEffect
An interface for a simulated effect that is applied to the camera.
active | Whether the effect is currently active. |
Activate | Activates the effect. |
Deactivate | Deactivates the effect. |
SetProfile | Sets the profile with the given name to be active. |
public sealed class Noise : CameraModifier<NoiseSettings>
Applies a subtle motion to the camera using a noise function. This can be used to give the camera a more hand-held feel.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class Noise : CameraModifier<NoiseSettings>
Applies a subtle motion to the camera using a noise function. This can be used to give the camera a more hand-held feel.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float frequency
The frequency of the noise function. A higher value results in quicker camera movements.
public float frequency
The frequency of the noise function. A higher value results in quicker camera movements.
[Serializable]
-public sealed class NoiseSettings : CameraBehaviorSettings<Noise>
Settings for a noise modifier.
frequency | The frequency of the noise function. A higher value results in quicker camera movements. |
magnitude | The magnitude of the noise vector. A higher value results in larger camera movements. |
positionalStrength | How much the camera noise impacts the position of the camera. |
rotationalStrength | How much the camera noise impacts the rotation of the camera. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class NoiseSettings : CameraBehaviorSettings<Noise>
Settings for a noise modifier.
frequency | The frequency of the noise function. A higher value results in quicker camera movements. |
magnitude | The magnitude of the noise vector. A higher value results in larger camera movements. |
positionalStrength | How much the camera noise impacts the position of the camera. |
rotationalStrength | How much the camera noise impacts the rotation of the camera. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float magnitude
The magnitude of the noise vector. A higher value results in larger camera movements.
public float magnitude
The magnitude of the noise vector. A higher value results in larger camera movements.
public float positionalStrength
How much the camera noise impacts the position of the camera.
public float positionalStrength
How much the camera noise impacts the position of the camera.
public float rotationalStrength
How much the camera noise impacts the rotation of the camera.
public float rotationalStrength
How much the camera noise impacts the rotation of the camera.
public sealed class Panning : CameraBehavior<PanningSettings>
Pans the camera around on the XZ plane usually from mouse input.
position | The current camera pan position (Read only). |
startTime | The time at which the camera started panning (Read only). |
stopTime | The time at which the camera stopped panning (Read only). |
panning | Whether the camera is currently panning (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class Panning : CameraBehavior<PanningSettings>
Pans the camera around on the XZ plane usually from mouse input.
position | The current camera pan position (Read only). |
startTime | The time at which the camera started panning (Read only). |
stopTime | The time at which the camera stopped panning (Read only). |
panning | Whether the camera is currently panning (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public bool panning { get; }
Whether the camera is currently panning (Read only).
public bool panning { get; }
Whether the camera is currently panning (Read only).
public Vector3 position { get; }
The current camera pan position (Read only).
public Vector3 position { get; }
The current camera pan position (Read only).
public float startTime { get; }
The time at which the camera started panning (Read only).
public float startTime { get; }
The time at which the camera started panning (Read only).
public float stopTime { get; }
The time at which the camera stopped panning (Read only).
public float stopTime { get; }
The time at which the camera stopped panning (Read only).
[Serializable]
-public sealed class PanningSettings : CameraBehaviorSettings<Panning>
Settings for a camera panning behavior.
inputAxisX | The input axis for panning on the x-axis. |
inputAxisY | The input axis for panning on the y-axis. |
inputButton | An optional input button required to pan the camera. The camera will always be panning if no button is provided. |
smoothing | How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly. |
resetTime | The amount of seconds it takes the camera to reset back to the tracking point after panning stops. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class PanningSettings : CameraBehaviorSettings<Panning>
Settings for a camera panning behavior.
inputAxisX | The input axis for panning on the x-axis. |
inputAxisY | The input axis for panning on the y-axis. |
inputButton | An optional input button required to pan the camera. The camera will always be panning if no button is provided. |
smoothing | How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly. |
resetTime | The amount of seconds it takes the camera to reset back to the tracking point after panning stops. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public InputAxis inputAxisX
The input axis for panning on the x-axis.
public InputAxis inputAxisX
The input axis for panning on the x-axis.
public InputAxis inputAxisY
The input axis for panning on the y-axis.
public InputAxis inputAxisY
The input axis for panning on the y-axis.
public InputButton inputButton
An optional input button required to pan the camera. The camera will always be panning if no button is provided.
public InputButton inputButton
An optional input button required to pan the camera. The camera will always be panning if no button is provided.
public float resetTime
The amount of seconds it takes the camera to reset back to the tracking point after panning stops.
public float resetTime
The amount of seconds it takes the camera to reset back to the tracking point after panning stops.
public float smoothing
How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly.
public float smoothing
How quickly the camera responds to changes in movement. Larger numbers make the camera move more smoothly.
public float distanceThreshold
The distance from the camera to the player below which the player model will be hidden.
public float distanceThreshold
The distance from the camera to the player below which the player model will be hidden.
public sealed class PlayerModelHider : MonoBehaviour
Hides the player model based on the camera zoom distance. This is intended for games that are both 1st and 3rd person.
playerModel | The player model to show/hide. |
zoomThreshold | The zoom percent below which the player model will be hidden. |
distanceThreshold | The distance from the camera to the player below which the player model will be hidden. |
public sealed class PlayerModelHider : MonoBehaviour
Hides the player model based on the camera zoom distance. This is intended for games that are both 1st and 3rd person.
playerModel | The player model to show/hide. |
zoomThreshold | The zoom percent below which the player model will be hidden. |
distanceThreshold | The distance from the camera to the player below which the player model will be hidden. |
public GameObject playerModel
The player model to show/hide.
public GameObject playerModel
The player model to show/hide.
public float zoomThreshold
The zoom percent below which the player model will be hidden.
public float zoomThreshold
The zoom percent below which the player model will be hidden.
public static bool Raycast(this Camera camera, out RaycastHit hit)
Performs a raycast from the camera.
camera | The camera to perform the raycast from. |
hit | The raycast hit information output. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this Camera camera, out RaycastHit hit, float maxDistance)
Performs a raycast from the camera.
camera | The camera to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this Camera camera, out RaycastHit hit, float maxDistance, int layerMask)
Performs a raycast from the camera.
camera | The camera to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
layerMask | The layer mask to use for the raycast. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this CameraController controller, out RaycastHit hit)
Performs a raycast from the camera.
controller | The camera controller to perform the raycast from. |
hit | The raycast hit information output. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this CameraController controller, out RaycastHit hit, float maxDistance)
Performs a raycast from the camera.
controller | The camera controller to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this CameraController controller, out RaycastHit hit, float maxDistance, int layerMask)
Performs a raycast from the camera.
controller | The camera controller to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
layerMask | The layer mask to use for the raycast. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this Camera camera, out RaycastHit hit)
Performs a raycast from the camera.
camera | The camera to perform the raycast from. |
hit | The raycast hit information output. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this Camera camera, out RaycastHit hit, float maxDistance)
Performs a raycast from the camera.
camera | The camera to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this Camera camera, out RaycastHit hit, float maxDistance, int layerMask)
Performs a raycast from the camera.
camera | The camera to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
layerMask | The layer mask to use for the raycast. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this CameraController controller, out RaycastHit hit)
Performs a raycast from the camera.
controller | The camera controller to perform the raycast from. |
hit | The raycast hit information output. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this CameraController controller, out RaycastHit hit, float maxDistance)
Performs a raycast from the camera.
controller | The camera controller to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
bool | True if the raycast hit something, false otherwise. |
public static bool Raycast(this CameraController controller, out RaycastHit hit, float maxDistance, int layerMask)
Performs a raycast from the camera.
controller | The camera controller to perform the raycast from. |
hit | The raycast hit information output. |
maxDistance | The maximum distance the raycast can travel. |
layerMask | The layer mask to use for the raycast. |
bool | True if the raycast hit something, false otherwise. |
public static class Raycasting
Extension methods for performing raycasts from the camera.
Raycast | Performs a raycast from the camera. |
public static class Raycasting
Extension methods for performing raycasts from the camera.
Raycast | Performs a raycast from the camera. |
public Vector2 amount { get; set; }
The current amount of recoil.
public Vector2 amount { get; set; }
The current amount of recoil.
public sealed class Recoil : CameraModifier<RecoilSettings>
Quickly changes the orientation of the camera to simulate recoil, such as when shooting a gun.
amount | The current amount of recoil. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class Recoil : CameraModifier<RecoilSettings>
Quickly changes the orientation of the camera to simulate recoil, such as when shooting a gun.
amount | The current amount of recoil. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float decayRate
How quickly the recoil returns to zero. The higher the value, the faster the recoil will return to zero.
public float decayRate
How quickly the recoil returns to zero. The higher the value, the faster the recoil will return to zero.
[Serializable]
-public sealed class RecoilSettings : CameraBehaviorSettings<Recoil>
Settings for a recoil modifier.
decayRate | How quickly the recoil returns to zero. The higher the value, the faster the recoil will return to zero. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class RecoilSettings : CameraBehaviorSettings<Recoil>
Settings for a recoil modifier.
decayRate | How quickly the recoil returns to zero. The higher the value, the faster the recoil will return to zero. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public Color color { get; }
The current color of the fade (Read only).
public Color color { get; }
The current color of the fade (Read only).
public sealed class ScreenFade : CameraEffect<ScreenFadeSettings, ScreenFadeProfile>, ICameraEffect
Fades the screen in and out.
color | The current color of the fade (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class ScreenFade : CameraEffect<ScreenFadeSettings, ScreenFadeProfile>, ICameraEffect
Fades the screen in and out.
color | The current color of the fade (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
FadeIn = 1
Fades the screen in on start.
FadeIn = 1
Fades the screen in on start.
FadeOut = 2
Fades the screen out on start.
FadeOut = 2
Fades the screen out on start.
None = 0
Does nothing on start.
None = 0
Does nothing on start.
public enum ScreenFadeInitialState
An initial screen fade state when the camera is first activated.
None | Does nothing on start. |
FadeIn | Fades the screen in on start. |
FadeOut | Fades the screen out on start. |
public enum ScreenFadeInitialState
An initial screen fade state when the camera is first activated.
None | Does nothing on start. |
FadeIn | Fades the screen in on start. |
FadeOut | Fades the screen out on start. |
public ScreenFadeTransition fadeIn
The transition settings for fading in the camera.
public ScreenFadeTransition fadeIn
The transition settings for fading in the camera.
public ScreenFadeTransition fadeOut
The transition settings for fading out the camera.
public ScreenFadeTransition fadeOut
The transition settings for fading out the camera.
[Serializable]
-public sealed class ScreenFadeProfile : CameraEffectProfile
A settings profile for a screen fade effect.
initialState | The initial screen fade state when the camera is first activated. For example, you could use this start the game fading in from black. |
fadeIn | The transition settings for fading in the camera. |
fadeOut | The transition settings for fading out the camera. |
name | The name of the settings profile. |
[Serializable]
+public sealed class ScreenFadeProfile : CameraEffectProfile
A settings profile for a screen fade effect.
initialState | The initial screen fade state when the camera is first activated. For example, you could use this start the game fading in from black. |
fadeIn | The transition settings for fading in the camera. |
fadeOut | The transition settings for fading out the camera. |
name | The name of the settings profile. |
public ScreenFadeInitialState initialState
The initial screen fade state when the camera is first activated. For example, you could use this start the game fading in from black.
public ScreenFadeInitialState initialState
The initial screen fade state when the camera is first activated. For example, you could use this start the game fading in from black.
[Serializable]
-public sealed class ScreenFadeSettings : CameraEffectSettings<ScreenFade, ScreenFadeProfile>
Settings for a screen fade effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class ScreenFadeSettings : CameraEffectSettings<ScreenFade, ScreenFadeProfile>
Settings for a screen fade effect.
profiles | The settings profiles available to use. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public Color color
The color of the fade.
public Color color
The color of the fade.
public AnimationCurve curve
The animation curve to use while fading.
public AnimationCurve curve
The animation curve to use while fading.
public float delay
The amount of seconds to wait before fading.
public float delay
The amount of seconds to wait before fading.
public bool disableInput
Disables camera input while the screen is fading.
public bool disableInput
Disables camera input while the screen is fading.
public float duration
The amount of seconds it takes to fade.
public float duration
The amount of seconds it takes to fade.
[Serializable]
-public sealed class ScreenFadeTransition
Settings for a fade transition.
color | The color of the fade. |
duration | The amount of seconds it takes to fade. |
delay | The amount of seconds to wait before fading. |
curve | The animation curve to use while fading. |
disableInput | Disables camera input while the screen is fading. |
[Serializable]
+public sealed class ScreenFadeTransition
Settings for a fade transition.
color | The color of the fade. |
duration | The amount of seconds it takes to fade. |
delay | The amount of seconds to wait before fading. |
curve | The animation curve to use while fading. |
disableInput | Disables camera input while the screen is fading. |
public float direction { get; }
The current lean direction in the range [-1..1] (Read only).
public float direction { get; }
The current lean direction in the range [-1..1] (Read only).
public sealed class ShoulderLean : CameraModifier<ShoulderLeanSettings>
Handles tilting the camera to the left or right to lean around corners.
direction | The current lean direction in the range [-1..1] (Read only). |
snappedDirection | The current lean direction snapped to the nearest increment in the range [-1..1] (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class ShoulderLean : CameraModifier<ShoulderLeanSettings>
Handles tilting the camera to the left or right to lean around corners.
direction | The current lean direction in the range [-1..1] (Read only). |
snappedDirection | The current lean direction snapped to the nearest increment in the range [-1..1] (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float snappedDirection { get; }
The current lean direction snapped to the nearest increment in the range [-1..1] (Read only).
public float snappedDirection { get; }
The current lean direction snapped to the nearest increment in the range [-1..1] (Read only).
[Serializable]
-public sealed class ShoulderLeanInputSettings
Input settings for a shoulder lean modifier.
leanLeft | The input button to lean left. |
leanRight | The input button to lean right. |
[Serializable]
+public sealed class ShoulderLeanInputSettings
Input settings for a shoulder lean modifier.
leanLeft | The input button to lean left. |
leanRight | The input button to lean right. |
public InputButton leanLeft
The input button to lean left.
public InputButton leanLeft
The input button to lean left.
public InputButton leanRight
The input button to lean right.
public InputButton leanRight
The input button to lean right.
public float animationTime
The amount of seconds it takes to animate the lean direction.
public float animationTime
The amount of seconds it takes to animate the lean direction.
public float increment
Aligns the lean direction to set increments.
public float increment
Aligns the lean direction to set increments.
[Serializable]
-public sealed class ShoulderLeanSettings : CameraBehaviorSettings<ShoulderLean>
Settings for a shoulder lean modifier.
input | The input settings. |
increment | Aligns the lean direction to set increments. |
animationTime | The amount of seconds it takes to animate the lean direction. |
positionOffset | The distance from the center of the character to the offset lean position in either direction. |
tiltAngle | The amount in degrees to tilt the camera while leaning. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class ShoulderLeanSettings : CameraBehaviorSettings<ShoulderLean>
Settings for a shoulder lean modifier.
input | The input settings. |
increment | Aligns the lean direction to set increments. |
animationTime | The amount of seconds it takes to animate the lean direction. |
positionOffset | The distance from the center of the character to the offset lean position in either direction. |
tiltAngle | The amount in degrees to tilt the camera while leaning. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public ShoulderLeanInputSettings input
The input settings.
public ShoulderLeanInputSettings input
The input settings.
public float positionOffset
The distance from the center of the character to the offset lean position in either direction.
public float positionOffset
The distance from the center of the character to the offset lean position in either direction.
public float tiltAngle
The amount in degrees to tilt the camera while leaning.
public float tiltAngle
The amount in degrees to tilt the camera while leaning.
public sealed class ShoulderSwap : CameraModifier<ShoulderSwapSettings>
Handles swapping the camera offset from one side of the character's shoulders to the other.
position | The current shoulder swap position (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class ShoulderSwap : CameraModifier<ShoulderSwapSettings>
Handles swapping the camera offset from one side of the character's shoulders to the other.
position | The current shoulder swap position (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public ShoulderSwapPosition position { get; }
The current shoulder swap position (Read only).
public ShoulderSwapPosition position { get; }
The current shoulder swap position (Read only).
[Serializable]
-public sealed class ShoulderSwapInputSettings
Input settings for a shoulder swap modifier.
swapLeft | The input button to swap to the left shoulder. |
swapRight | The input button to swap to the right shoulder. |
[Serializable]
+public sealed class ShoulderSwapInputSettings
Input settings for a shoulder swap modifier.
swapLeft | The input button to swap to the left shoulder. |
swapRight | The input button to swap to the right shoulder. |
public InputButton swapLeft
The input button to swap to the left shoulder.
public InputButton swapLeft
The input button to swap to the left shoulder.
public InputButton swapRight
The input button to swap to the right shoulder.
public InputButton swapRight
The input button to swap to the right shoulder.
Center = 2
Centered behind the character.
Center = 2
Centered behind the character.
Left = 1
Positioned behind the left shoulder.
Left = 1
Positioned behind the left shoulder.
Right = 0
Positioned behind the right shoulder.
Right = 0
Positioned behind the right shoulder.
public enum ShoulderSwapPosition
A shoulder swap position, i.e., right, left, or center.
Right | Positioned behind the right shoulder. |
Left | Positioned behind the left shoulder. |
Center | Centered behind the character. |
public enum ShoulderSwapPosition
A shoulder swap position, i.e., right, left, or center.
Right | Positioned behind the right shoulder. |
Left | Positioned behind the left shoulder. |
Center | Centered behind the character. |
public float angle
The difference in angle between shoulders. This can be used to ensure the camera looks at the same point after swapping shoulders.
public float angle
The difference in angle between shoulders. This can be used to ensure the camera looks at the same point after swapping shoulders.
public float animationTime
The amount of seconds it takes to swap shoulders.
public float animationTime
The amount of seconds it takes to swap shoulders.
[Serializable]
-public sealed class ShoulderSwapSettings : CameraBehaviorSettings<ShoulderSwap>
Settings for a shoulder swap modifier.
input | The input settings. |
initialPosition | The initial shoulder swap position. |
offset | The distance from the center of the character to the offset shoulder point. |
angle | The difference in angle between shoulders. This can be used to ensure the camera looks at the same point after swapping shoulders. |
animationTime | The amount of seconds it takes to swap shoulders. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class ShoulderSwapSettings : CameraBehaviorSettings<ShoulderSwap>
Settings for a shoulder swap modifier.
input | The input settings. |
initialPosition | The initial shoulder swap position. |
offset | The distance from the center of the character to the offset shoulder point. |
angle | The difference in angle between shoulders. This can be used to ensure the camera looks at the same point after swapping shoulders. |
animationTime | The amount of seconds it takes to swap shoulders. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public ShoulderSwapPosition initialPosition
The initial shoulder swap position.
public ShoulderSwapPosition initialPosition
The initial shoulder swap position.
public ShoulderSwapInputSettings input
The input settings.
public ShoulderSwapInputSettings input
The input settings.
public float offset
The distance from the center of the character to the offset shoulder point.
public float offset
The distance from the center of the character to the offset shoulder point.
public bool TryTargeting(Transform newTarget)
Attempts to target the given transform if it is within the target radius and line of sight.
newTarget |
bool | True if the transform was targeted, false otherwise. |
public bool TryTargeting(Transform newTarget)
Attempts to target the given transform if it is within the target radius and line of sight.
newTarget |
bool | True if the transform was targeted, false otherwise. |
public void Untarget()
Untargets the current target.
public void Untarget()
Untargets the current target.
public sealed class Targeting : CameraBehavior<TargetingSettings>
Allows the camera to track targetable objects.
target | The transform the camera is currently targeting (Read only). |
targetPosition | The position of the transform the camera is currently targeting (Read only). |
locating | The locating module of the camera targeting behavior (Read only). |
lookAt | The look at module of the camera targeting behavior (Read only). |
lineOfSight | The line of sight module of the camera targeting behavior (Read only). |
switching | The switching module of the camera targeting behavior (Read only). |
recentering | The recentering module of the camera targeting behavior (Read only). |
userInterface | The UI module of the camera targeting behavior (Read only). |
Target | Targets the given transform. |
Untarget | Untargets the current target. |
TryTargeting | Attempts to target the given transform if it is within the target radius and line of sight. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class Targeting : CameraBehavior<TargetingSettings>
Allows the camera to track targetable objects.
target | The transform the camera is currently targeting (Read only). |
targetPosition | The position of the transform the camera is currently targeting (Read only). |
locating | The locating module of the camera targeting behavior (Read only). |
lookAt | The look at module of the camera targeting behavior (Read only). |
lineOfSight | The line of sight module of the camera targeting behavior (Read only). |
switching | The switching module of the camera targeting behavior (Read only). |
recentering | The recentering module of the camera targeting behavior (Read only). |
userInterface | The UI module of the camera targeting behavior (Read only). |
Target | Targets the given transform. |
Untarget | Untargets the current target. |
TryTargeting | Attempts to target the given transform if it is within the target radius and line of sight. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public TargetingLineOfSightModule lineOfSight { get; }
The line of sight module of the camera targeting behavior (Read only).
public TargetingLineOfSightModule lineOfSight { get; }
The line of sight module of the camera targeting behavior (Read only).
public TargetingLocatingModule locating { get; }
The locating module of the camera targeting behavior (Read only).
public TargetingLocatingModule locating { get; }
The locating module of the camera targeting behavior (Read only).
public TargetingLookAtModule lookAt { get; }
The look at module of the camera targeting behavior (Read only).
public TargetingLookAtModule lookAt { get; }
The look at module of the camera targeting behavior (Read only).
public TargetingRecenteringModule recentering { get; }
The recentering module of the camera targeting behavior (Read only).
public TargetingRecenteringModule recentering { get; }
The recentering module of the camera targeting behavior (Read only).
public TargetingSwitchingModule switching { get; }
The switching module of the camera targeting behavior (Read only).
public TargetingSwitchingModule switching { get; }
The switching module of the camera targeting behavior (Read only).
public void Target(Transform newTarget)
Targets the given transform.
newTarget | The transform to target. |
public void Target(Transform newTarget)
Targets the given transform.
newTarget | The transform to target. |
public Vector3 targetPosition { get; }
The position of the transform the camera is currently targeting (Read only).
public Vector3 targetPosition { get; }
The position of the transform the camera is currently targeting (Read only).
public TargetingUIModule userInterface { get; }
The UI module of the camera targeting behavior (Read only).
public TargetingUIModule userInterface { get; }
The UI module of the camera targeting behavior (Read only).
public bool IsVisible(Transform target)
Determines if a transform is visible from the position of another transform.
target | The transform to check if visible. |
bool | True if the target is visible. |
public bool IsVisible(Transform target)
Determines if a transform is visible from the position of another transform.
target | The transform to check if visible. |
bool | True if the target is visible. |
public sealed class TargetingLineOfSightModule : TargetingModule<TargetingLineOfSightSettings>
A camera targeting module that performs line of sight checks to determine if targets are visible.
timeLastVisible | The time the active target was last in sight (Read only). |
IsVisible | Determines if a transform is visible from the position of another transform. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class TargetingLineOfSightModule : TargetingModule<TargetingLineOfSightSettings>
A camera targeting module that performs line of sight checks to determine if targets are visible.
timeLastVisible | The time the active target was last in sight (Read only). |
IsVisible | Determines if a transform is visible from the position of another transform. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float timeLastVisible { get; }
The time the active target was last in sight (Read only).
public float timeLastVisible { get; }
The time the active target was last in sight (Read only).
[Serializable]
-public sealed class TargetingLineOfSightSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera checks if a target is visible.
obstacles | The Unity layer(s) of the obstacles that can occlude the target. |
maxDistance | The maximum distance the camera can see targets. |
outOfSightTime | The amount of seconds the target can remain out of sight before the camera stops targeting it. This is useful to ensure the camera does not stop targeting the object if it is occluded for only a brief second. |
updateInterval | The amount of seconds between line of sight checks (used for optimization purposes). |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class TargetingLineOfSightSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera checks if a target is visible.
obstacles | The Unity layer(s) of the obstacles that can occlude the target. |
maxDistance | The maximum distance the camera can see targets. |
outOfSightTime | The amount of seconds the target can remain out of sight before the camera stops targeting it. This is useful to ensure the camera does not stop targeting the object if it is occluded for only a brief second. |
updateInterval | The amount of seconds between line of sight checks (used for optimization purposes). |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float maxDistance
The maximum distance the camera can see targets.
public float maxDistance
The maximum distance the camera can see targets.
public LayerMask obstacles
The Unity layer(s) of the obstacles that can occlude the target.
public LayerMask obstacles
The Unity layer(s) of the obstacles that can occlude the target.
public float outOfSightTime
The amount of seconds the target can remain out of sight before the camera stops targeting it. This is useful to ensure the camera does not stop targeting the object if it is occluded for only a brief second.
public float outOfSightTime
The amount of seconds the target can remain out of sight before the camera stops targeting it. This is useful to ensure the camera does not stop targeting the object if it is occluded for only a brief second.
public float updateInterval
The amount of seconds between line of sight checks (used for optimization purposes).
public float updateInterval
The amount of seconds between line of sight checks (used for optimization purposes).
public Transform FindNearestTarget()
Finds the nearest targetable transform within the camera's view frustum.
Transform | The transform that can be targeted, or null otherwise. |
public Transform FindNearestTarget()
Finds the nearest targetable transform within the camera's view frustum.
Transform | The transform that can be targeted, or null otherwise. |
public Transform FindNearestTargetLeft()
Finds the nearest targetable transform within the camera's view frustum to the left of the current target.
Transform | The transform that can be targeted, or null otherwise. |
public Transform FindNearestTargetLeft()
Finds the nearest targetable transform within the camera's view frustum to the left of the current target.
Transform | The transform that can be targeted, or null otherwise. |
public Transform FindNearestTargetRight()
Finds the nearest targetable transform within the camera's view frustum to the right of the current target.
Transform | The transform that can be targeted, or null otherwise. |
public Transform FindNearestTargetRight()
Finds the nearest targetable transform within the camera's view frustum to the right of the current target.
Transform | The transform that can be targeted, or null otherwise. |
public sealed class TargetingLocatingModule : TargetingModule<TargetingLocatingSettings>
A camera targeting module to locate targets within the camera's view.
FindNearestTarget | Finds the nearest targetable transform within the camera's view frustum. |
FindNearestTargetRight | Finds the nearest targetable transform within the camera's view frustum to the right of the current target. |
FindNearestTargetLeft | Finds the nearest targetable transform within the camera's view frustum to the left of the current target. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class TargetingLocatingModule : TargetingModule<TargetingLocatingSettings>
A camera targeting module to locate targets within the camera's view.
FindNearestTarget | Finds the nearest targetable transform within the camera's view frustum. |
FindNearestTargetRight | Finds the nearest targetable transform within the camera's view frustum to the right of the current target. |
FindNearestTargetLeft | Finds the nearest targetable transform within the camera's view frustum to the left of the current target. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
[Serializable]
-public sealed class TargetingLocatingSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera locates targets.
targetableLayers | The Unity layer(s) of the objects that can be targeted. |
radius | The maximum distance objects can be targeted from the camera. |
maxTargets | The maximum amount of targets to locate within a single search (used for optimization purposes). |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class TargetingLocatingSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera locates targets.
targetableLayers | The Unity layer(s) of the objects that can be targeted. |
radius | The maximum distance objects can be targeted from the camera. |
maxTargets | The maximum amount of targets to locate within a single search (used for optimization purposes). |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public int maxTargets
The maximum amount of targets to locate within a single search (used for optimization purposes).
public int maxTargets
The maximum amount of targets to locate within a single search (used for optimization purposes).
public float radius
The maximum distance objects can be targeted from the camera.
public float radius
The maximum distance objects can be targeted from the camera.
public LayerMask targetableLayers
The Unity layer(s) of the objects that can be targeted.
public LayerMask targetableLayers
The Unity layer(s) of the objects that can be targeted.
public sealed class TargetingLookAtModule : TargetingModule<TargetingLookAtSettings>
A camera targeting module that rotates the camera to look at the target.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class TargetingLookAtModule : TargetingModule<TargetingLookAtSettings>
A camera targeting module that rotates the camera to look at the target.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
[Serializable]
-public sealed class TargetingLookAtSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera looks at targeted objects.
smoothing | How quickly the camera looks at the target. Larger numbers make the camera rotate more smoothly. |
maxSpeed | The max speed the camera can rotate to look at the target. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class TargetingLookAtSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera looks at targeted objects.
smoothing | How quickly the camera looks at the target. Larger numbers make the camera rotate more smoothly. |
maxSpeed | The max speed the camera can rotate to look at the target. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float maxSpeed
The max speed the camera can rotate to look at the target.
public float maxSpeed
The max speed the camera can rotate to look at the target.
public float smoothing
How quickly the camera looks at the target. Larger numbers make the camera rotate more smoothly.
public float smoothing
How quickly the camera looks at the target. Larger numbers make the camera rotate more smoothly.
protected virtual void OnTargetChanged(Transform newTarget, Transform oldTarget)
A callback invoked when the camera target has changed.
newTarget | The new target. |
oldTarget | The old target. |
protected virtual void OnTargetChanged(Transform newTarget, Transform oldTarget)
A callback invoked when the camera target has changed.
newTarget | The new target. |
oldTarget | The old target. |
public abstract class TargetingModule<T> : CameraBehavior<T> where T : CameraBehaviorSettings, new()
The base class for all camera targeting modules.
T | The type of settings for the module. |
parent | The camera targeting behavior the module belongs to. |
OnTargetChanged | A callback invoked when the camera target has changed. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public abstract class TargetingModule<T> : CameraBehavior<T> where T : CameraBehaviorSettings, new()
The base class for all camera targeting modules.
T | The type of settings for the module. |
parent | The camera targeting behavior the module belongs to. |
OnTargetChanged | A callback invoked when the camera target has changed. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
protected Targeting parent { get; }
The camera targeting behavior the module belongs to.
protected Targeting parent { get; }
The camera targeting behavior the module belongs to.
public sealed class TargetingRecenteringModule : TargetingModule<TargetingRecenteringSettings>
A camera targeting module that resets the rotation of the camera to face the default forward direction when not targeting an object.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class TargetingRecenteringModule : TargetingModule<TargetingRecenteringSettings>
A camera targeting module that resets the rotation of the camera to face the default forward direction when not targeting an object.
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
[Serializable]
-public sealed class TargetingRecenteringSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera recenters back to a forward position.
recenterTime | The amount of seconds it takes the camera to recenter to the forward direction. |
maxSpeed | The max speed the camera can rotate to recenter. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class TargetingRecenteringSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera recenters back to a forward position.
recenterTime | The amount of seconds it takes the camera to recenter to the forward direction. |
maxSpeed | The max speed the camera can rotate to recenter. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float maxSpeed
The max speed the camera can rotate to recenter.
public float maxSpeed
The max speed the camera can rotate to recenter.
public float recenterTime
The amount of seconds it takes the camera to recenter to the forward direction.
public float recenterTime
The amount of seconds it takes the camera to recenter to the forward direction.
[Serializable]
-public sealed class TargetingSettings : CameraBehaviorSettings<Targeting>
Settings for a camera targeting behavior.
lockOnButton | The input button to toggle on/off target lock. |
locating | Settings to indicate how the camera locates targets. |
lookAt | Settings to indicate how the camera looks at targeted objects. |
lineOfSight | Settings to indicate how the camera checks if a target is visible. |
switching | Settings to indicate how the camera switches between targets. |
recentering | Settings to indicate how the camera recenters back to a forward position. |
userInterface | Settings to indicate how the camera displays tracking UI. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class TargetingSettings : CameraBehaviorSettings<Targeting>
Settings for a camera targeting behavior.
lockOnButton | The input button to toggle on/off target lock. |
locating | Settings to indicate how the camera locates targets. |
lookAt | Settings to indicate how the camera looks at targeted objects. |
lineOfSight | Settings to indicate how the camera checks if a target is visible. |
switching | Settings to indicate how the camera switches between targets. |
recentering | Settings to indicate how the camera recenters back to a forward position. |
userInterface | Settings to indicate how the camera displays tracking UI. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public TargetingLineOfSightSettings lineOfSight
Settings to indicate how the camera checks if a target is visible.
public TargetingLineOfSightSettings lineOfSight
Settings to indicate how the camera checks if a target is visible.
public TargetingLocatingSettings locating
Settings to indicate how the camera locates targets.
public TargetingLocatingSettings locating
Settings to indicate how the camera locates targets.
public InputButton lockOnButton
The input button to toggle on/off target lock.
public InputButton lockOnButton
The input button to toggle on/off target lock.
public TargetingLookAtSettings lookAt
Settings to indicate how the camera looks at targeted objects.
public TargetingLookAtSettings lookAt
Settings to indicate how the camera looks at targeted objects.
public TargetingRecenteringSettings recentering
Settings to indicate how the camera recenters back to a forward position.
public TargetingRecenteringSettings recentering
Settings to indicate how the camera recenters back to a forward position.
public TargetingSwitchingSettings switching
Settings to indicate how the camera switches between targets.
public TargetingSwitchingSettings switching
Settings to indicate how the camera switches between targets.
public TargetingUISettings userInterface
Settings to indicate how the camera displays tracking UI.
public TargetingUISettings userInterface
Settings to indicate how the camera displays tracking UI.
public sealed class TargetingSwitchingModule : TargetingModule<TargetingSwitchingSettings>
A camera targeting module that handles switching to new targets to the left or right of the current target. The module also marks new targets as "sticky" so they cannot be switched from too quickly on accident.
sticky | Whether the current target is sticky and thus cannot be changed (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class TargetingSwitchingModule : TargetingModule<TargetingSwitchingSettings>
A camera targeting module that handles switching to new targets to the left or right of the current target. The module also marks new targets as "sticky" so they cannot be switched from too quickly on accident.
sticky | Whether the current target is sticky and thus cannot be changed (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public bool sticky { get; }
Whether the current target is sticky and thus cannot be changed (Read only).
public bool sticky { get; }
Whether the current target is sticky and thus cannot be changed (Read only).
[Serializable]
-public sealed class TargetingSwitchingSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera switches between targets.
stickyDuration | The amount of seconds before another target can be switched to. This ensures targets are not switched to accidentally based on the sensitivity of the input device. |
inputSensitivity | The sensitivity multiplier applied to inputs to prevent switching targets too quickly. |
inputDecay | The rate at which input values decay back to zero. The decay is used to force a quick input movement rather than a continuous slow movement. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class TargetingSwitchingSettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera switches between targets.
stickyDuration | The amount of seconds before another target can be switched to. This ensures targets are not switched to accidentally based on the sensitivity of the input device. |
inputSensitivity | The sensitivity multiplier applied to inputs to prevent switching targets too quickly. |
inputDecay | The rate at which input values decay back to zero. The decay is used to force a quick input movement rather than a continuous slow movement. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float inputDecay
The rate at which input values decay back to zero. The decay is used to force a quick input movement rather than a continuous slow movement.
public float inputDecay
The rate at which input values decay back to zero. The decay is used to force a quick input movement rather than a continuous slow movement.
public float inputSensitivity
The sensitivity multiplier applied to inputs to prevent switching targets too quickly.
public float inputSensitivity
The sensitivity multiplier applied to inputs to prevent switching targets too quickly.
public float stickyDuration
The amount of seconds before another target can be switched to. This ensures targets are not switched to accidentally based on the sensitivity of the input device.
public float stickyDuration
The amount of seconds before another target can be switched to. This ensures targets are not switched to accidentally based on the sensitivity of the input device.
public GameObject content { get; }
The UI content being displayed (Read only).
public GameObject content { get; }
The UI content being displayed (Read only).
public sealed class TargetingUIModule : TargetingModule<TargetingUISettings>
A camera targeting module that displays UI while targeting objects.
content | The UI content being displayed (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class TargetingUIModule : TargetingModule<TargetingUISettings>
A camera targeting module that displays UI while targeting objects.
content | The UI content being displayed (Read only). |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
[Serializable]
-public sealed class TargetingUISettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera displays tracking UI.
prefab | The UI content to instantiate. |
tracking | Changes the position of the UI content to track the target. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class TargetingUISettings : CameraBehaviorSettings
Settings for a camera targeting module to indicate how the camera displays tracking UI.
prefab | The UI content to instantiate. |
tracking | Changes the position of the UI content to track the target. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public GameObject prefab
The UI content to instantiate.
public GameObject prefab
The UI content to instantiate.
public bool tracking
Changes the position of the UI content to track the target.
public bool tracking
Changes the position of the UI content to track the target.
public void ResetDistance()
Resets the zoom percentage to the initial distance.
public void ResetDistance()
Resets the zoom percentage to the initial distance.
public void SetDistance(float distance)
Sets the zoom distance to the given value. The distance will be clamped within the zoom range.
distance | The camera zoom distance. |
public void SetDistance(float distance)
Sets the zoom distance to the given value. The distance will be clamped within the zoom range.
distance | The camera zoom distance. |
public void SetPercent(float percent)
Sets the zoom percentage to the given value.
percent | The zoom percentage in the range [0..1]. |
public void SetPercent(float percent)
Sets the zoom percentage to the given value.
percent | The zoom percentage in the range [0..1]. |
public sealed class Zoom : CameraBehavior<ZoomSettings>
Changes the distance of the camera from the pivot point.
input | The current input axis value with sensitivity applied (Read only). |
percent | The current zoom percentage in the range [0..1] (Read only). |
smoothPercent | The smoothed zoom percentage in the range [0..1] (Read only). |
snappedPercent | The current zoom percentage snapped to the nearest increment in the range [0..1] (Read only). |
SetPercent | Sets the zoom percentage to the given value. |
SetDistance | Sets the zoom distance to the given value. The distance will be clamped within the zoom range. |
ResetDistance | Resets the zoom percentage to the initial distance. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public sealed class Zoom : CameraBehavior<ZoomSettings>
Changes the distance of the camera from the pivot point.
input | The current input axis value with sensitivity applied (Read only). |
percent | The current zoom percentage in the range [0..1] (Read only). |
smoothPercent | The smoothed zoom percentage in the range [0..1] (Read only). |
snappedPercent | The current zoom percentage snapped to the nearest increment in the range [0..1] (Read only). |
SetPercent | Sets the zoom percentage to the given value. |
SetDistance | Sets the zoom distance to the given value. The distance will be clamped within the zoom range. |
ResetDistance | Resets the zoom percentage to the initial distance. |
settings | The settings for the behavior. |
enabled | Enables or disables the behavior from being updated. |
controller | The camera controller handling the module. |
registered | Whether the module has been registered to a controller. |
id | The unique identifier of the camera module. |
public float input { get; }
The current input axis value with sensitivity applied (Read only).
public float input { get; }
The current input axis value with sensitivity applied (Read only).
public float percent { get; }
The current zoom percentage in the range [0..1] (Read only).
public float percent { get; }
The current zoom percentage in the range [0..1] (Read only).
public float smoothPercent { get; }
The smoothed zoom percentage in the range [0..1] (Read only).
public float smoothPercent { get; }
The smoothed zoom percentage in the range [0..1] (Read only).
public float snappedPercent { get; }
The current zoom percentage snapped to the nearest increment in the range [0..1] (Read only).
public float snappedPercent { get; }
The current zoom percentage snapped to the nearest increment in the range [0..1] (Read only).
public FloatRange distanceRange
The minimum and maximum distance of the camera from the pivot point. Set the min and max to the same value for a fixed zoom distance.
public FloatRange distanceRange
The minimum and maximum distance of the camera from the pivot point. Set the min and max to the same value for a fixed zoom distance.
public float increment
Aligns the camera zoom to set increments.
public float increment
Aligns the camera zoom to set increments.
[Serializable]
-public sealed class ZoomSettings : CameraBehaviorSettings<Zoom>
Settings for a camera zoom behavior.
inputAxis | The input axis to change the camera zoom. |
distanceRange | The minimum and maximum distance of the camera from the pivot point. Set the min and max to the same value for a fixed zoom distance. |
initialDistance | The initial distance of the camera from the pivot point. |
smoothing | How quickly the camera zoom changes to the intended distance. Larger numbers make the camera zoom more smoothly. |
transitionDuration | The amount of seconds it takes to transition zoom distance when the camera profile is changed. For example, this is used when transitioning from first-person to third-person, or vice versa. |
increment | Aligns the camera zoom to set increments. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
[Serializable]
+public sealed class ZoomSettings : CameraBehaviorSettings<Zoom>
Settings for a camera zoom behavior.
inputAxis | The input axis to change the camera zoom. |
distanceRange | The minimum and maximum distance of the camera from the pivot point. Set the min and max to the same value for a fixed zoom distance. |
initialDistance | The initial distance of the camera from the pivot point. |
smoothing | How quickly the camera zoom changes to the intended distance. Larger numbers make the camera zoom more smoothly. |
transitionDuration | The amount of seconds it takes to transition zoom distance when the camera profile is changed. For example, this is used when transitioning from first-person to third-person, or vice versa. |
increment | Aligns the camera zoom to set increments. |
active | Whether the settings are active on a camera profile. Inactive settings will not display in the editor. |
enabled | Turns on or off the settings behavior. Enabled behaviors are updated every frame. |
isActiveAndEnabled | Whether the settings are active and enabled. |
public float initialDistance
The initial distance of the camera from the pivot point.
public float initialDistance
The initial distance of the camera from the pivot point.
public InputAxis inputAxis
The input axis to change the camera zoom.
public InputAxis inputAxis
The input axis to change the camera zoom.
public float smoothing
How quickly the camera zoom changes to the intended distance. Larger numbers make the camera zoom more smoothly.
public float smoothing
How quickly the camera zoom changes to the intended distance. Larger numbers make the camera zoom more smoothly.
public float transitionDuration
The amount of seconds it takes to transition zoom distance when the camera profile is changed. For example, this is used when transitioning from first-person to third-person, or vice versa.
public float transitionDuration
The amount of seconds it takes to transition zoom distance when the camera profile is changed. For example, this is used when transitioning from first-person to third-person, or vice versa.
Quickly "punches" the camera's rotation in one direction then resets to the resting position. This is often used to indicate the player was hit by an object or attack.
A settings profile for an aim punch effect.
Settings for an aim punch effect.
Tracks the motion of the character's animator component and applies it as a modifier to the camera.
Settings for an animator motion modifier.
Changes the depth of field based on where the camera is looking.
Settings for a depth of field effect.
The base class for all camera behaviors which are enabled and disabled based on the settings of the behavior.
The base class for all camera behavior settings.
The base class for camera behavior settings of a specified type.
Adjusts the camera's position to avoid colliding with objects or occluding the tracking target.
Settings for camera collision.
A context object that represents a camera's state.
Controls and handles the behaviors of a camera.
Changes the mouse cursor settings.
Settings for the camera cursor.
A simulated effect that is applied to the camera.
Extension methods for ICameraEffect.
The base class for camera effect profiles.
The base class for camera effect settings of a specified type.
The base class for all camera effect settings.
A camera behavior that applies a transform modifier to the camera.
The base class for all camera modules which are registered to a camera controller and are updated every frame by the controller.
Manages the camera modules for a camera controller.
Extension methods for CameraPreset.
The settings profile for a camera controller.
The base class for all camera settings.
Rapidly changes the position and rotation of the camera to simulate the camera shaking.
A settings profile for a camera shake effect.
Settings for a camera shake effect.
Invokes an event when the camera is within a certain distance of a target.
Adjusts the position of the camera to match the eyeline of the character.
Settings for an eyeline tracker modifier.
Animates a subtle change in the field of view of the camera. For example, increasing the field of view when the player sprints creates a better feel for the faster motion.
A settings profile for a FOV "Kick" effect.
Settings for a FOV "Kick" effect.
Settings for a FOV "Kick" transition.
Moves and rotates the camera to follow a tracked object.
Settings for a camera follow behavior.
Handles free fly camera movement.
Input settings for a camera free fly behavior.
Settings for a camera free fly behavior.
Speed settings for a camera free fly behavior.
Handles looking around while orbiting a pivot point.
Settings for a look axis.
Settings for the initial angle of a look axis.
Settings for a camera free look behavior.
Simulates the effect of a person's head moving very slightly when walking or running.
Settings for a head bob modifier.
Applies a subtle motion to the camera using a noise function. This can be used to give the camera a more hand-held feel.
Settings for a noise modifier.
Pans the camera around on the XZ plane usually from mouse input.
Settings for a camera panning behavior.
Hides the player model based on the camera zoom distance. This is intended for games that are both 1st and 3rd person.
Extension methods for performing raycasts from the camera.
Quickly changes the orientation of the camera to simulate recoil, such as when shooting a gun.
Settings for a recoil modifier.
Fades the screen in and out.
A settings profile for a screen fade effect.
Settings for a screen fade effect.
Settings for a fade transition.
Handles tilting the camera to the left or right to lean around corners.
Input settings for a shoulder lean modifier.
Settings for a shoulder lean modifier.
Handles swapping the camera offset from one side of the character's shoulders to the other.
Input settings for a shoulder swap modifier.
Settings for a shoulder swap modifier.
Allows the camera to track targetable objects.
A camera targeting module that performs line of sight checks to determine if targets are visible.
Settings for a camera targeting module to indicate how the camera checks if a target is visible.
A camera targeting module to locate targets within the camera's view.
Settings for a camera targeting module to indicate how the camera locates targets.
A camera targeting module that rotates the camera to look at the target.
Settings for a camera targeting module to indicate how the camera looks at targeted objects.
The base class for all camera targeting modules.
A camera targeting module that resets the rotation of the camera to face the default forward direction when not targeting an object.
Settings for a camera targeting module to indicate how the camera recenters back to a forward position.
Settings for a camera targeting behavior.
A camera targeting module that handles switching to new targets to the left or right of the current target. The module also marks new targets as "sticky" so they cannot be switched from too quickly on accident.
Settings for a camera targeting module to indicate how the camera switches between targets.
A camera targeting module that displays UI while targeting objects.
Settings for a camera targeting module to indicate how the camera displays tracking UI.
Changes the distance of the camera from the pivot point.
Settings for a camera zoom behavior.
The cursor settings for a given state.
An interface for a simulated effect that is applied to the camera.
A type of auto focus mode.
A preset for a camera settings profile.
An initial screen fade state when the camera is first activated.
A shoulder swap position, i.e., right, left, or center.
Quickly "punches" the camera's rotation in one direction then resets to the resting position. This is often used to indicate the player was hit by an object or attack.
A settings profile for an aim punch effect.
Settings for an aim punch effect.
Tracks the motion of the character's animator component and applies it as a modifier to the camera.
Settings for an animator motion modifier.
Changes the depth of field based on where the camera is looking.
Settings for a depth of field effect.
The base class for all camera behaviors which are enabled and disabled based on the settings of the behavior.
The base class for all camera behavior settings.
The base class for camera behavior settings of a specified type.
Adjusts the camera's position to avoid colliding with objects or occluding the tracking target.
Settings for camera collision.
A context object that represents a camera's state.
Controls and handles the behaviors of a camera.
Changes the mouse cursor settings.
Settings for the camera cursor.
A simulated effect that is applied to the camera.
Extension methods for ICameraEffect.
The base class for camera effect profiles.
The base class for camera effect settings of a specified type.
The base class for all camera effect settings.
A camera behavior that applies a transform modifier to the camera.
The base class for all camera modules which are registered to a camera controller and are updated every frame by the controller.
Manages the camera modules for a camera controller.
Extension methods for CameraPreset.
The settings profile for a camera controller.
The base class for all camera settings.
Rapidly changes the position and rotation of the camera to simulate the camera shaking.
A settings profile for a camera shake effect.
Settings for a camera shake effect.
Invokes an event when the camera is within a certain distance of a target.
Adjusts the position of the camera to match the eyeline of the character.
Settings for an eyeline tracker modifier.
Animates a subtle change in the field of view of the camera. For example, increasing the field of view when the player sprints creates a better feel for the faster motion.
A settings profile for a FOV "Kick" effect.
Settings for a FOV "Kick" effect.
Settings for a FOV "Kick" transition.
Moves and rotates the camera to follow a tracked object.
Settings for a camera follow behavior.
Handles free fly camera movement.
Input settings for a camera free fly behavior.
Settings for a camera free fly behavior.
Speed settings for a camera free fly behavior.
Handles looking around while orbiting a pivot point.
Settings for a look axis.
Settings for the initial angle of a look axis.
Settings for a camera free look behavior.
Simulates the effect of a person's head moving very slightly when walking or running.
Settings for a head bob modifier.
Applies a subtle motion to the camera using a noise function. This can be used to give the camera a more hand-held feel.
Settings for a noise modifier.
Pans the camera around on the XZ plane usually from mouse input.
Settings for a camera panning behavior.
Hides the player model based on the camera zoom distance. This is intended for games that are both 1st and 3rd person.
Extension methods for performing raycasts from the camera.
Quickly changes the orientation of the camera to simulate recoil, such as when shooting a gun.
Settings for a recoil modifier.
Fades the screen in and out.
A settings profile for a screen fade effect.
Settings for a screen fade effect.
Settings for a fade transition.
Handles tilting the camera to the left or right to lean around corners.
Input settings for a shoulder lean modifier.
Settings for a shoulder lean modifier.
Handles swapping the camera offset from one side of the character's shoulders to the other.
Input settings for a shoulder swap modifier.
Settings for a shoulder swap modifier.
Allows the camera to track targetable objects.
A camera targeting module that performs line of sight checks to determine if targets are visible.
Settings for a camera targeting module to indicate how the camera checks if a target is visible.
A camera targeting module to locate targets within the camera's view.
Settings for a camera targeting module to indicate how the camera locates targets.
A camera targeting module that rotates the camera to look at the target.
Settings for a camera targeting module to indicate how the camera looks at targeted objects.
The base class for all camera targeting modules.
A camera targeting module that resets the rotation of the camera to face the default forward direction when not targeting an object.
Settings for a camera targeting module to indicate how the camera recenters back to a forward position.
Settings for a camera targeting behavior.
A camera targeting module that handles switching to new targets to the left or right of the current target. The module also marks new targets as "sticky" so they cannot be switched from too quickly on accident.
Settings for a camera targeting module to indicate how the camera switches between targets.
A camera targeting module that displays UI while targeting objects.
Settings for a camera targeting module to indicate how the camera displays tracking UI.
Changes the distance of the camera from the pivot point.
Settings for a camera zoom behavior.
The cursor settings for a given state.
An interface for a simulated effect that is applied to the camera.
A type of auto focus mode.
A preset for a camera settings profile.
An initial screen fade state when the camera is first activated.
A shoulder swap position, i.e., right, left, or center.
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Copyright (c) 2022 Zigurous. All Rights Reserved.
+Copyright (c) 2022 Zigurous. All Rights Reserved.
Licensed under the Unity Asset Store Terms of Service and EULA.
-Unless expressly provided otherwise, the Software under this license is made available strictly on an "AS IS" BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions.
Unless expressly provided otherwise, the Software under this license is made available strictly on an "AS IS" BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions.
The Aim Punch effect quickly "punches" the camera's rotation in one direction then resets to the resting position. This is often used to indicate the player was hit by an object or attack.
The Animator Motion module tracks the motion of a character and applies it as a modifier to the camera. This is useful to give the camera more dynamic motion as the character moves, such as when crouching, jumping, and sprinting.
Note: The Camera Controller must have a tracking target assigned, usually the player/character, and the tracking target must have an Animator
component somewhere in its hierarchy.
The Auto Focus module is a post processing effect that changes the depth of field based on where the camera is looking.
Unity's Post Processing Package must be installed for the Auto Focus module to work. A post processing profile and volume will be created automatically, so nothing needs to be done manually other than having the package installed.
The Camera Shake effect rapidly changes the position and rotation of the camera to simulate the camera shaking.
The Collision module adjusts the camera's position to avoid colliding with objects or occluding the tracking target.
The Cursor module changes the mouse cursor settings. Currently, it only supports changing the visibility and lock state of the cursor.
The Eyeline Adjustment module adjusts the position of the camera to match the eyeline of the character. One benefit of this is the camera will adjust accordingly any time the character collider changes. For example, if the character crouches, then the camera will also move down to match the character's crouch height.
Note: The Camera Controller must have a tracking target assigned with either a CharacterController
or Collider
component attached to it.
The Follow module moves and rotates the camera to follow a tracked object.
The FOV Kick effect animates a subtle change in the field of view of the camera. For example, increasing the field of view when the player sprints creates a better feel for the faster motion.
The Free Fly module handles free fly camera movement. The free fly module is often used for strategy games or even simply for debugging purposes.
The Free Look module handles looking around while orbiting a pivot point. Free look is the most common camera module to handle basic look functionality.
The Head Bob module simulates the effect of a person's head moving very slightly when walking or running.
The Camera System package is a modular system for controlling cameras in Unity games. The package supports endless camera configurations through 20+ highly customizable camera modules edited from a single camera controller component.
Connect with us on Discord
-Reach out to support@zigurous.com
The Camera System supports the new Input System Package, the legacy Input Manager, and even custom input handlers. This is configured via the Input module.
Input is managed by the Input Manager which can be accessed from the Camera Controller and has the following available properties:
The Noise module applies a subtle motion to the camera using a noise function. This can be used to give the camera a more hand-held feel.
The Panning module pans the camera around on the XZ plane usually from mouse input. Panning is commonly used for real-time strategy (RTS) games.
The Recoil module quickly changes the orientation of the camera to simulate recoil, such as when shooting a gun. Recoil is most commonly used for any kind of shooting game.
The Screen Fade effect handles fading the screen in and out. This is often used during scene transitions and cutscenes.
The Shoulder Lean module handles tilting the camera to the left or right to lean around corners. This is often used for first-person shooting games.
The Shoulder Swap module handles tilting the camera to the left or right to lean around corners. This is often used for third-person shooting games.
The Targeting module allows the camera to track targetable objects. This is commonly used for tracking enemies in action-adventure games. The system was designed after the targeting/tracking systems used in souls-like games, but it can be used in many different ways.
The Zoom module changes the distance of the camera from the pivot point. This module is used for most third-person camera systems even if the player can't actively change the zoom distance—the module is still required to pull the camera behind the player.
t
.\n","syntax":{"content":"public float Lerp(float t)","parameters":[{"description":"The interpolant value between [0..1].","id":"t","type":"System.Single"}],"return":{"description":"The interpolated value.","type":"System.Single"},"typeParameters":null},"type":"Method","uid":"Zigurous.CameraSystem.Utils.FloatRange.Lerp(System.Single)"},{"children":null,"id":"InverseLerp(System.Single)","implements":null,"inheritance":null,"inheritedMembers":null,"name":"InverseLerp(Single)","nameWithType":"FloatRange.InverseLerp(Single)","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.FloatRange","remarks":null,"summary":"\nCalculates the linear parameter t that produces the interpolant\nvalue within the range.\n","syntax":{"content":"public float InverseLerp(float value)","parameters":[{"description":"The value within the range you want to calculate.","id":"value","type":"System.Single"}],"return":{"description":"The interpolant value between [0..1].","type":"System.Single"},"typeParameters":null},"type":"Method","uid":"Zigurous.CameraSystem.Utils.FloatRange.InverseLerp(System.Single)"}]},{"items":[{"children":["Zigurous.CameraSystem.Utils.IKTracker.animator","Zigurous.CameraSystem.Utils.IKTracker.bodyPosition","Zigurous.CameraSystem.Utils.IKTracker.bodyRotation","Zigurous.CameraSystem.Utils.IKTracker.localPosition","Zigurous.CameraSystem.Utils.IKTracker.localRotation"],"id":"IKTracker","implements":null,"inheritance":["System.Object"],"inheritedMembers":null,"name":"IKTracker","nameWithType":"IKTracker","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils","remarks":null,"summary":"\nKeeps track of the body position and rotation of an animator component.\n","syntax":{"content":"public sealed class IKTracker : MonoBehaviour","parameters":null,"return":null,"typeParameters":null},"type":"Class","uid":"Zigurous.CameraSystem.Utils.IKTracker"},{"children":null,"id":"animator","implements":null,"inheritance":null,"inheritedMembers":null,"name":"animator","nameWithType":"IKTracker.animator","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.IKTracker","remarks":null,"summary":"\nThe animator component to track.\n","syntax":{"content":"public Animator animator { get; }","parameters":[],"return":{"description":null,"type":"Global.Animator"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.IKTracker.animator"},{"children":null,"id":"bodyPosition","implements":null,"inheritance":null,"inheritedMembers":null,"name":"bodyPosition","nameWithType":"IKTracker.bodyPosition","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.IKTracker","remarks":null,"summary":"\nThe position of the body center of mass.\n","syntax":{"content":"public Vector3 bodyPosition { get; }","parameters":[],"return":{"description":null,"type":"Global.Vector3"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.IKTracker.bodyPosition"},{"children":null,"id":"bodyRotation","implements":null,"inheritance":null,"inheritedMembers":null,"name":"bodyRotation","nameWithType":"IKTracker.bodyRotation","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.IKTracker","remarks":null,"summary":"\nThe rotation of the body center of mass.\n","syntax":{"content":"public Quaternion bodyRotation { get; }","parameters":[],"return":{"description":null,"type":"Global.Quaternion"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.IKTracker.bodyRotation"},{"children":null,"id":"localPosition","implements":null,"inheritance":null,"inheritedMembers":null,"name":"localPosition","nameWithType":"IKTracker.localPosition","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.IKTracker","remarks":null,"summary":"\nThe position of the body center of mass in local space.\n","syntax":{"content":"public Vector3 localPosition { get; }","parameters":[],"return":{"description":null,"type":"Global.Vector3"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.IKTracker.localPosition"},{"children":null,"id":"localRotation","implements":null,"inheritance":null,"inheritedMembers":null,"name":"localRotation","nameWithType":"IKTracker.localRotation","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.IKTracker","remarks":null,"summary":"\nThe rotation of the body center of mass in local space.\n","syntax":{"content":"public Quaternion localRotation { get; }","parameters":[],"return":{"description":null,"type":"Global.Quaternion"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.IKTracker.localRotation"}]},{"items":[{"children":["Zigurous.CameraSystem.Utils.QuaternionAccumulator.Add(Quaternion)","Zigurous.CameraSystem.Utils.QuaternionAccumulator.defaultValue","Zigurous.CameraSystem.Utils.QuaternionAccumulator.Subtract(Quaternion)"],"id":"QuaternionAccumulator","implements":null,"inheritance":["System.Object","Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}"],"inheritedMembers":["Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}.values","Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}.count","Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}.totalValue","Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}.GetValue(System.Int32)","Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}.SetValue(System.Int32,Quaternion)","Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}.RemoveValue(System.Int32)","Zigurous.CameraSystem.Utils.ValueAccumulator{Quaternion}.Clear"],"name":"QuaternionAccumulator","nameWithType":"QuaternionAccumulator","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils","remarks":null,"summary":"\nAccumulates Quaternion values into a single total value.\n","syntax":{"content":"public sealed class QuaternionAccumulator : ValueAccumulatorQuaternion.identity
\n","syntax":{"content":"protected override Quaternion defaultValue { get; }","parameters":[],"return":{"description":null,"type":"Global.Quaternion"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.QuaternionAccumulator.defaultValue"},{"children":null,"id":"Add(Quaternion)","implements":null,"inheritance":null,"inheritedMembers":null,"name":"Add(Quaternion)","nameWithType":"QuaternionAccumulator.Add(Quaternion)","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.QuaternionAccumulator","remarks":null,"summary":"\nIncreases the accumulated total by a given value.\n","syntax":{"content":"protected override Quaternion Add(Quaternion value)","parameters":[{"description":"The value to add to the total.","id":"value","type":"Global.Quaternion"}],"return":{"description":"The new total value.","type":"Global.Quaternion"},"typeParameters":null},"type":"Method","uid":"Zigurous.CameraSystem.Utils.QuaternionAccumulator.Add(Quaternion)"},{"children":null,"id":"Subtract(Quaternion)","implements":null,"inheritance":null,"inheritedMembers":null,"name":"Subtract(Quaternion)","nameWithType":"QuaternionAccumulator.Subtract(Quaternion)","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.QuaternionAccumulator","remarks":null,"summary":"\nDecreases the accumulated total by a given value.\n","syntax":{"content":"protected override Quaternion Subtract(Quaternion value)","parameters":[{"description":"The value to subtract from the total.","id":"value","type":"Global.Quaternion"}],"return":{"description":"The new total value.","type":"Global.Quaternion"},"typeParameters":null},"type":"Method","uid":"Zigurous.CameraSystem.Utils.QuaternionAccumulator.Subtract(Quaternion)"}]},{"items":[{"children":["Zigurous.CameraSystem.Utils.ValueAccumulator`1.#ctor","Zigurous.CameraSystem.Utils.ValueAccumulator`1.Add(`0)","Zigurous.CameraSystem.Utils.ValueAccumulator`1.Clear","Zigurous.CameraSystem.Utils.ValueAccumulator`1.count","Zigurous.CameraSystem.Utils.ValueAccumulator`1.defaultValue","Zigurous.CameraSystem.Utils.ValueAccumulator`1.GetValue(System.Int32)","Zigurous.CameraSystem.Utils.ValueAccumulator`1.RemoveValue(System.Int32)","Zigurous.CameraSystem.Utils.ValueAccumulator`1.SetValue(System.Int32,`0)","Zigurous.CameraSystem.Utils.ValueAccumulator`1.Subtract(`0)","Zigurous.CameraSystem.Utils.ValueAccumulator`1.totalValue","Zigurous.CameraSystem.Utils.ValueAccumulator`1.values"],"id":"ValueAccumulator`1","implements":null,"inheritance":["System.Object"],"inheritedMembers":null,"name":"ValueAccumulatorT
.\n","syntax":{"content":"protected virtual T defaultValue { get; }","parameters":[],"return":{"description":null,"type":"{T}"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.ValueAccumulator`1.defaultValue"},{"children":null,"id":"#ctor","implements":null,"inheritance":null,"inheritedMembers":null,"name":"ValueAccumulator()","nameWithType":"ValueAccumulatordefault(T)
if the value does not exist.","type":"{T}"},"typeParameters":null},"type":"Method","uid":"Zigurous.CameraSystem.Utils.ValueAccumulator`1.GetValue(System.Int32)"},{"children":null,"id":"SetValue(System.Int32,`0)","implements":null,"inheritance":null,"inheritedMembers":null,"name":"SetValue(Int32, T)","nameWithType":"ValueAccumulatorVector3.zero
\n","syntax":{"content":"protected override Vector3 defaultValue { get; }","parameters":[],"return":{"description":null,"type":"Global.Vector3"},"typeParameters":null},"type":"Property","uid":"Zigurous.CameraSystem.Utils.Vector3Accumulator.defaultValue"},{"children":null,"id":"Add(Vector3)","implements":null,"inheritance":null,"inheritedMembers":null,"name":"Add(Vector3)","nameWithType":"Vector3Accumulator.Add(Vector3)","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.Vector3Accumulator","remarks":null,"summary":"\nIncreases the accumulated total by a given value.\n","syntax":{"content":"protected override Vector3 Add(Vector3 value)","parameters":[{"description":"The value to add to the total.","id":"value","type":"Global.Vector3"}],"return":{"description":"The new total value.","type":"Global.Vector3"},"typeParameters":null},"type":"Method","uid":"Zigurous.CameraSystem.Utils.Vector3Accumulator.Add(Vector3)"},{"children":null,"id":"Subtract(Vector3)","implements":null,"inheritance":null,"inheritedMembers":null,"name":"Subtract(Vector3)","nameWithType":"Vector3Accumulator.Subtract(Vector3)","namespace":"Zigurous.CameraSystem.Utils","parent":"Zigurous.CameraSystem.Utils.Vector3Accumulator","remarks":null,"summary":"\nDecreases the accumulated total by a given value.\n","syntax":{"content":"protected override Vector3 Subtract(Vector3 value)","parameters":[{"description":"The value to subtract from the total.","id":"value","type":"Global.Vector3"}],"return":{"description":"The new total value.","type":"Global.Vector3"},"typeParameters":null},"type":"Method","uid":"Zigurous.CameraSystem.Utils.Vector3Accumulator.Subtract(Vector3)"}]},{"items":[{"children":["Zigurous.CameraSystem.Utils.DrawGUITexture","Zigurous.CameraSystem.Utils.FloatRange","Zigurous.CameraSystem.Utils.IKTracker","Zigurous.CameraSystem.Utils.QuaternionAccumulator","Zigurous.CameraSystem.Utils.ValueAccumulator`1","Zigurous.CameraSystem.Utils.Vector3Accumulator"],"id":"Zigurous.CameraSystem.Utils","implements":null,"inheritance":null,"inheritedMembers":null,"name":"Zigurous.CameraSystem.Utils","nameWithType":"Zigurous.CameraSystem.Utils","namespace":null,"parent":null,"remarks":null,"summary":null,"syntax":null,"type":"Namespace","uid":"Zigurous.CameraSystem.Utils"}]},{"items":[{"children":["Zigurous.CameraSystem.AimPunch","Zigurous.CameraSystem.AimPunchProfile","Zigurous.CameraSystem.AimPunchSettings","Zigurous.CameraSystem.AnimatorMotion","Zigurous.CameraSystem.AnimatorMotionSettings","Zigurous.CameraSystem.AutoFocus","Zigurous.CameraSystem.AutoFocusMode","Zigurous.CameraSystem.AutoFocusSettings","Zigurous.CameraSystem.CameraBehavior`1","Zigurous.CameraSystem.CameraBehaviorSettings","Zigurous.CameraSystem.CameraBehaviorSettings`1","Zigurous.CameraSystem.CameraCollision","Zigurous.CameraSystem.CameraCollisionSettings","Zigurous.CameraSystem.CameraContext","Zigurous.CameraSystem.CameraController","Zigurous.CameraSystem.CameraCursor","Zigurous.CameraSystem.CameraCursorSettings","Zigurous.CameraSystem.CameraEffect`2","Zigurous.CameraSystem.CameraEffectExtensions","Zigurous.CameraSystem.CameraEffectProfile","Zigurous.CameraSystem.CameraEffectSettings`1","Zigurous.CameraSystem.CameraEffectSettings`2","Zigurous.CameraSystem.CameraModifier`1","Zigurous.CameraSystem.CameraModule","Zigurous.CameraSystem.CameraModuleManager","Zigurous.CameraSystem.CameraPreset","Zigurous.CameraSystem.CameraPresetExtensions","Zigurous.CameraSystem.CameraProfile","Zigurous.CameraSystem.CameraSettings","Zigurous.CameraSystem.CameraShake","Zigurous.CameraSystem.CameraShakeProfile","Zigurous.CameraSystem.CameraShakeSettings","Zigurous.CameraSystem.CameraSightEvent","Zigurous.CameraSystem.CursorState","Zigurous.CameraSystem.EyelineAdjustment","Zigurous.CameraSystem.EyelineAdjustmentSettings","Zigurous.CameraSystem.Follow","Zigurous.CameraSystem.FollowSettings","Zigurous.CameraSystem.FOVKick","Zigurous.CameraSystem.FOVKickProfile","Zigurous.CameraSystem.FOVKickSettings","Zigurous.CameraSystem.FOVKickTransition","Zigurous.CameraSystem.FreeFly","Zigurous.CameraSystem.FreeFlyInputSettings","Zigurous.CameraSystem.FreeFlySettings","Zigurous.CameraSystem.FreeFlySpeedSettings","Zigurous.CameraSystem.FreeLook","Zigurous.CameraSystem.FreeLookAxis","Zigurous.CameraSystem.FreeLookInitialAngle","Zigurous.CameraSystem.FreeLookSettings","Zigurous.CameraSystem.HeadBob","Zigurous.CameraSystem.HeadBobSettings","Zigurous.CameraSystem.ICameraEffect","Zigurous.CameraSystem.Noise","Zigurous.CameraSystem.NoiseSettings","Zigurous.CameraSystem.Panning","Zigurous.CameraSystem.PanningSettings","Zigurous.CameraSystem.PlayerModelHider","Zigurous.CameraSystem.Raycasting","Zigurous.CameraSystem.Recoil","Zigurous.CameraSystem.RecoilSettings","Zigurous.CameraSystem.ScreenFade","Zigurous.CameraSystem.ScreenFadeInitialState","Zigurous.CameraSystem.ScreenFadeProfile","Zigurous.CameraSystem.ScreenFadeSettings","Zigurous.CameraSystem.ScreenFadeTransition","Zigurous.CameraSystem.ShoulderLean","Zigurous.CameraSystem.ShoulderLeanInputSettings","Zigurous.CameraSystem.ShoulderLeanSettings","Zigurous.CameraSystem.ShoulderSwap","Zigurous.CameraSystem.ShoulderSwapInputSettings","Zigurous.CameraSystem.ShoulderSwapPosition","Zigurous.CameraSystem.ShoulderSwapSettings","Zigurous.CameraSystem.Targeting","Zigurous.CameraSystem.TargetingLineOfSightModule","Zigurous.CameraSystem.TargetingLineOfSightSettings","Zigurous.CameraSystem.TargetingLocatingModule","Zigurous.CameraSystem.TargetingLocatingSettings","Zigurous.CameraSystem.TargetingLookAtModule","Zigurous.CameraSystem.TargetingLookAtSettings","Zigurous.CameraSystem.TargetingModule`1","Zigurous.CameraSystem.TargetingRecenteringModule","Zigurous.CameraSystem.TargetingRecenteringSettings","Zigurous.CameraSystem.TargetingSettings","Zigurous.CameraSystem.TargetingSwitchingModule","Zigurous.CameraSystem.TargetingSwitchingSettings","Zigurous.CameraSystem.TargetingUIModule","Zigurous.CameraSystem.TargetingUISettings","Zigurous.CameraSystem.Zoom","Zigurous.CameraSystem.ZoomSettings"],"id":"Zigurous.CameraSystem","implements":null,"inheritance":null,"inheritedMembers":null,"name":"Zigurous.CameraSystem","nameWithType":"Zigurous.CameraSystem","namespace":null,"parent":null,"remarks":null,"summary":null,"syntax":null,"type":"Namespace","uid":"Zigurous.CameraSystem"}]},{"items":[{"children":["Zigurous.CameraSystem.Zoom.input","Zigurous.CameraSystem.Zoom.percent","Zigurous.CameraSystem.Zoom.ResetDistance","Zigurous.CameraSystem.Zoom.SetDistance(System.Single)","Zigurous.CameraSystem.Zoom.SetPercent(System.Single)","Zigurous.CameraSystem.Zoom.smoothPercent","Zigurous.CameraSystem.Zoom.snappedPercent"],"id":"Zoom","implements":null,"inheritance":["System.Object","Zigurous.CameraSystem.CameraModule","Zigurous.CameraSystem.CameraBehavior{Zigurous.CameraSystem.ZoomSettings}"],"inheritedMembers":["Zigurous.CameraSystem.CameraBehavior{Zigurous.CameraSystem.ZoomSettings}.settings","Zigurous.CameraSystem.CameraBehavior{Zigurous.CameraSystem.ZoomSettings}.enabled","Zigurous.CameraSystem.CameraBehavior{Zigurous.CameraSystem.ZoomSettings}.OnEnable","Zigurous.CameraSystem.CameraBehavior{Zigurous.CameraSystem.ZoomSettings}.OnDisable","Zigurous.CameraSystem.CameraBehavior{Zigurous.CameraSystem.ZoomSettings}.StartCoroutine(System.Collections.IEnumerator)","Zigurous.CameraSystem.CameraBehavior{Zigurous.CameraSystem.ZoomSettings}.StopCoroutine(Coroutine)","Zigurous.CameraSystem.CameraModule.controller","Zigurous.CameraSystem.CameraModule.registered","Zigurous.CameraSystem.CameraModule.id"],"name":"Zoom","nameWithType":"Zoom","namespace":"Zigurous.CameraSystem","parent":"Zigurous.CameraSystem","remarks":null,"summary":"\nChanges the distance of the camera from the pivot point.\n","syntax":{"content":"public sealed class Zoom : CameraBehavior