Class CinemachineGroupComposer
This is a CinemachineComponent in the Aim section of the component pipeline. Its job is to aim the camera at a target object, with configurable offsets, damping, and composition rules.
In addition, if the target is a ICinemachineTargetGroup, the behaviour will adjust the FOV and the camera distance to ensure that the entire group of targets is framed properly.
Inheritance
Inherited Members
Namespace: Cinemachine
Syntax
[DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)]
[AddComponentMenu("")]
public class CinemachineGroupComposer : CinemachineComposer
Fields
m_AdjustmentMode
How to adjust the camera to get the desired framing
Declaration
[Tooltip("How to adjust the camera to get the desired framing. You can zoom, dolly in/out, or do both.")]
public CinemachineGroupComposer.AdjustmentMode m_AdjustmentMode
Field Value
Type | Description |
---|---|
CinemachineGroupComposer.AdjustmentMode |
m_FrameDamping
How aggressively the camera tries to frame the group. Small numbers are more responsive
Declaration
[Range(0F, 20F)]
[Tooltip("How aggressively the camera tries to frame the group. Small numbers are more responsive, rapidly adjusting the camera to keep the group in the frame. Larger numbers give a more heavy slowly responding camera.")]
public float m_FrameDamping
Field Value
Type | Description |
---|---|
Single |
m_FramingMode
What screen dimensions to consider when framing
Declaration
[Tooltip("What screen dimensions to consider when framing. Can be Horizontal, Vertical, or both")]
public CinemachineGroupComposer.FramingMode m_FramingMode
Field Value
Type | Description |
---|---|
CinemachineGroupComposer.FramingMode |
m_GroupFramingSize
How much of the screen to fill with the bounding box of the targets.
Declaration
[Space]
[Tooltip("The bounding box of the targets should occupy this amount of the screen space. 1 means fill the whole screen. 0.5 means fill half the screen, etc.")]
public float m_GroupFramingSize
Field Value
Type | Description |
---|---|
Single |
m_MaxDollyIn
How much closer to the target can the camera go?
Declaration
[Tooltip("The maximum distance toward the target that this behaviour is allowed to move the camera.")]
public float m_MaxDollyIn
Field Value
Type | Description |
---|---|
Single |
m_MaxDollyOut
How much farther from the target can the camera go?
Declaration
[Tooltip("The maximum distance away the target that this behaviour is allowed to move the camera.")]
public float m_MaxDollyOut
Field Value
Type | Description |
---|---|
Single |
m_MaximumDistance
Set this to limit how far from the taregt the camera can get
Declaration
[Tooltip("Set this to limit how far from the target the camera can get.")]
public float m_MaximumDistance
Field Value
Type | Description |
---|---|
Single |
m_MaximumFOV
If adjusting FOV, will not set the FOV higher than this
Declaration
[Range(1F, 179F)]
[Tooltip("If adjusting FOV, will not set the FOV higher than this.")]
public float m_MaximumFOV
Field Value
Type | Description |
---|---|
Single |
m_MaximumOrthoSize
If adjusting Orthographic Size, will not set it higher than this
Declaration
[Tooltip("If adjusting Orthographic Size, will not set it higher than this.")]
public float m_MaximumOrthoSize
Field Value
Type | Description |
---|---|
Single |
m_MinimumDistance
Set this to limit how close to the target the camera can get
Declaration
[Tooltip("Set this to limit how close to the target the camera can get.")]
public float m_MinimumDistance
Field Value
Type | Description |
---|---|
Single |
m_MinimumFOV
If adjusting FOV, will not set the FOV lower than this
Declaration
[Range(1F, 179F)]
[Tooltip("If adjusting FOV, will not set the FOV lower than this.")]
public float m_MinimumFOV
Field Value
Type | Description |
---|---|
Single |
m_MinimumOrthoSize
If adjusting Orthographic Size, will not set it lower than this
Declaration
[Tooltip("If adjusting Orthographic Size, will not set it lower than this.")]
public float m_MinimumOrthoSize
Field Value
Type | Description |
---|---|
Single |
Properties
LastBounds
For editor visulaization of the calculated bounding box of the group
Declaration
public Bounds LastBounds { get; }
Property Value
Type | Description |
---|---|
Bounds |
LastBoundsMatrix
For editor visualization of the calculated bounding box of the group
Declaration
public Matrix4x4 LastBoundsMatrix { get; }
Property Value
Type | Description |
---|---|
Matrix4x4 |
Methods
GetMaxDampTime()
Report maximum damping time needed for this component.
Declaration
public override float GetMaxDampTime()
Returns
Type | Description |
---|---|
Single | Highest damping setting in this component |
Overrides
MutateCameraState(ref CameraState, Single)
Applies the composer rules and orients the camera accordingly
Declaration
public override void MutateCameraState(ref CameraState curState, float deltaTime)
Parameters
Type | Name | Description |
---|---|---|
CameraState | curState | The current camera state |
Single | deltaTime | Used for calculating damping. If less than zero, then target will snap to the center of the dead zone. |