Class CinemachineOrbitalTransposer
This is a CinemachineComponent in the the Body section of the component pipeline. Its job is to position the camera in a variable relationship to a the vcam's Follow target object, with offsets and damping.
This component is typically used to implement a camera that follows its target. It can accept player input from an input device, which allows the player to dynamically control the relationship between the camera and the target, for example with a joystick.
The OrbitalTransposer introduces the concept of Heading, which is the direction in which the target is moving, and the OrbitalTransposer will attempt to position the camera in relationship to the heading, which is by default directly behind the target. You can control the default relationship by adjusting the Heading Bias setting.
If you attach an input controller to the OrbitalTransposer, then the player can also control the way the camera positions itself in relation to the target heading. This allows the camera to move to any spot on an orbit around the target.
Inheritance
Inherited Members
Namespace: Cinemachine
Syntax
[DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)]
public class CinemachineOrbitalTransposer : CinemachineTransposer
Fields
m_Heading
The definition of Forward. Camera will follow behind.
Declaration
public CinemachineOrbitalTransposer.Heading m_Heading
Field Value
Type | Description |
---|---|
CinemachineOrbitalTransposer.Heading |
m_HeadingIsSlave
Drive the x-axis setting programmatically. Automatic heading updating will be disabled.
Declaration
public bool m_HeadingIsSlave
Field Value
Type | Description |
---|---|
System.Boolean |
m_RecenterToTargetHeading
Parameters that control Automating Heading Recentering
Declaration
public AxisState.Recentering m_RecenterToTargetHeading
Field Value
Type | Description |
---|---|
AxisState.Recentering |
m_XAxis
Axis representing the current heading. Value is in degrees and represents a rotation about the up vector
Declaration
public AxisState m_XAxis
Field Value
Type | Description |
---|---|
AxisState |
Methods
MutateCameraState(ref CameraState, Single)
Positions the virtual camera according to the transposer rules.
Declaration
public override void MutateCameraState(ref CameraState curState, float deltaTime)
Parameters
Type | Name | Description |
---|---|---|
CameraState | curState | The current camera state |
System.Single | deltaTime | Used for damping. If less than 0, no damping is done. |
Overrides
OnTargetObjectWarped(Transform, Vector3)
This is called to notify the us that a target got warped, so that we can update its internal state to make the camera also warp seamlessy.
Declaration
public override 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 |
Overrides
OnValidate()
Declaration
protected override void OnValidate()
Overrides
UpdateHeading(Single, Vector3, ref AxisState)
Update the X axis and calculate the heading. This can be called by a delegate
with a custom axis.
Used for damping. If less than 0, no damping is done.
World Up, set by the CinemachineBrain
Declaration
public float UpdateHeading(float deltaTime, Vector3 up, ref AxisState axis)
Parameters
Type | Name | Description |
---|---|---|
System.Single | deltaTime | |
Vector3 | up | |
AxisState | axis |
Returns
Type | Description |
---|---|
System.Single |