Class CinemachineComponentBase
An abstract representation of a mutator acting on a Cinemachine Virtual Camera
Inherited Members
Namespace: Cinemachine
Syntax
[DocumentationSorting(DocumentationSortingAttribute.Level.API)]
public abstract class CinemachineComponentBase : MonoBehaviour
Fields
Epsilon
Useful constant for very small floats
Declaration
protected const float Epsilon = 0.0001F
Field Value
Type | Description |
---|---|
Single |
Properties
AbstractFollowTargetGroup
Get Follow target as ICinemachineTargetGroup, or null if target is not a group
Declaration
public ICinemachineTargetGroup AbstractFollowTargetGroup { get; }
Property Value
Type | Description |
---|---|
ICinemachineTargetGroup |
AbstractLookAtTargetGroup
Get LookAt target as ICinemachineTargetGroup, or null if target is not a group
Declaration
public ICinemachineTargetGroup AbstractLookAtTargetGroup { get; }
Property Value
Type | Description |
---|---|
ICinemachineTargetGroup |
BodyAppliesAfterAim
Special for Body Stage compoments that want to be applied after Aim stage because they use the aim as inout for the procedural placement
Declaration
public virtual bool BodyAppliesAfterAim { get; }
Property Value
Type | Description |
---|---|
Boolean |
FollowTarget
Returns the owner vcam's Follow target.
Declaration
public Transform FollowTarget { get; }
Property Value
Type | Description |
---|---|
Transform |
FollowTargetGroup
Get Follow target as CinemachineTargetGroup, or null if target is not a CinemachineTargetGroup
Declaration
public CinemachineTargetGroup FollowTargetGroup { get; }
Property Value
Type | Description |
---|---|
CinemachineTargetGroup |
FollowTargetPosition
Get the position of the Follow target. Special handling: If the Follow target is a VirtualCamera, returns the vcam State's position, not the transform's position
Declaration
public Vector3 FollowTargetPosition { get; }
Property Value
Type | Description |
---|---|
Vector3 |
FollowTargetRotation
Get the rotation of the Follow target. Special handling: If the Follow target is a VirtualCamera, returns the vcam State's rotation, not the transform's rotation
Declaration
public Quaternion FollowTargetRotation { get; }
Property Value
Type | Description |
---|---|
Quaternion |
IsValid
Returns true if this object is enabled and set up to produce results.
Declaration
public abstract bool IsValid { get; }
Property Value
Type | Description |
---|---|
Boolean |
LookAtTarget
Returns the owner vcam's LookAt target.
Declaration
public Transform LookAtTarget { get; }
Property Value
Type | Description |
---|---|
Transform |
LookAtTargetGroup
Get LookAt target as CinemachineTargetGroup, or null if target is not a CinemachineTargetGroup
Declaration
public CinemachineTargetGroup LookAtTargetGroup { get; }
Property Value
Type | Description |
---|---|
CinemachineTargetGroup |
LookAtTargetPosition
Get the position of the LookAt target. Special handling: If the LookAt target is a VirtualCamera, returns the vcam State's position, not the transform's position
Declaration
public Vector3 LookAtTargetPosition { get; }
Property Value
Type | Description |
---|---|
Vector3 |
LookAtTargetRotation
Get the rotation of the LookAt target. Special handling: If the LookAt target is a VirtualCamera, returns the vcam State's rotation, not the transform's rotation
Declaration
public Quaternion LookAtTargetRotation { get; }
Property Value
Type | Description |
---|---|
Quaternion |
RequiresUserInput
Components that require user input should implement this and return true.
Declaration
public virtual bool RequiresUserInput { get; }
Property Value
Type | Description |
---|---|
Boolean |
Stage
What part of the pipeline this fits into
Declaration
public abstract CinemachineCore.Stage Stage { get; }
Property Value
Type | Description |
---|---|
CinemachineCore.Stage |
VcamState
Returns the owner vcam's CameraState.
Declaration
public CameraState VcamState { get; }
Property Value
Type | Description |
---|---|
CameraState |
VirtualCamera
Get the associated CinemachineVirtualCameraBase
Declaration
public CinemachineVirtualCameraBase VirtualCamera { get; }
Property Value
Type | Description |
---|---|
CinemachineVirtualCameraBase |
Methods
ForceCameraPosition(Vector3, Quaternion)
Force the virtual camera to assume a given position and orientation.
Procedural placement then takes over.
Base class implementation does nothing.
Declaration
public virtual void ForceCameraPosition(Vector3 pos, Quaternion rot)
Parameters
Type | Name | Description |
---|---|---|
Vector3 | pos | Worldspace pposition to take |
Quaternion | rot | Worldspace orientation to take |
GetMaxDampTime()
Report maximum damping time needed for this component. Only used in editor for timeline scrubbing.
Declaration
public virtual float GetMaxDampTime()
Returns
Type | Description |
---|---|
Single | Highest damping setting in this component |
MutateCameraState(ref CameraState, Single)
Mutates the camera state. This state will later be applied to the camera.
Declaration
public abstract void MutateCameraState(ref CameraState curState, float deltaTime)
Parameters
Type | Name | Description |
---|---|---|
CameraState | curState | Input state that must be mutated |
Single | deltaTime | Delta time for time-based effects (ignore if less than 0) |
OnTargetObjectWarped(Transform, Vector3)
This is called to notify the component that a target got warped, so that the component can update its internal state to make the camera also warp seamlessy. Base class implementation does nothing.
Declaration
public virtual void OnTargetObjectWarped(Transform target, Vector3 positionDelta)
Parameters
Type | Name | Description |
---|---|---|
Transform | target | The object that was warped |
Vector3 | positionDelta | The amount the target's position changed |
OnTransitionFromCamera(ICinemachineCamera, Vector3, Single, ref CinemachineVirtualCameraBase.TransitionParams)
Notification that this virtual camera is going live. Base class implementation does nothing.
Declaration
public virtual bool OnTransitionFromCamera(ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime, ref CinemachineVirtualCameraBase.TransitionParams transitionParams)
Parameters
Type | Name | Description |
---|---|---|
ICinemachineCamera | fromCam | The camera being deactivated. May be null. |
Vector3 | worldUp | Default world Up, set by the CinemachineBrain |
Single | deltaTime | Delta time for time-based effects (ignore if less than or equal to 0) |
CinemachineVirtualCameraBase.TransitionParams | transitionParams | Transition settings for this vcam |
Returns
Type | Description |
---|---|
Boolean | True if the vcam should do an internal update as a result of this call |
PrePipelineMutateCameraState(ref CameraState, Single)
Override this to do such things as offset the RefereceLookAt. Base class implementation does nothing.
Declaration
public virtual void PrePipelineMutateCameraState(ref CameraState curState, float deltaTime)
Parameters
Type | Name | Description |
---|---|---|
CameraState | curState | Input state that must be mutated |
Single | deltaTime | Current effective deltaTime |