Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/Cinemachine2D.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# 2D graphics

[!include[](includes/deprecation-message.md)]

Cinemachine supports orthographic cameras. When you set the Unity camera's projection to Orthographic, Cinemachine adjusts to accommodate it. In Virtual Camera properties for __Lens__, __FOV__ is replaced by __Orthographic Size__. Note that settings related to FOV and certain FOV-oriented behaviors such as [Follow Zoom](CinemachineFollowZoom.md) have no effect if the camera is orthographic.

In orthographic environments, it doesn’t usually make sense to rotate the camera. Accordingly, Cinemachine offers the [Framing Transposer](CinemachineBodyFramingTransposer.md) to handle framing and composition without rotating the camera.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine 3rd Person Aim Extension

[!include[](includes/deprecation-message.md)]

This extension is created to be a part of a 3rd-person camera rig.

To preserve aiming accuracy, this extension deliberately cancels out all rotational noise, and forces a hard look at the target point. However, it's still possible to use camera noise with this extension, provided that the noise affects the camera position, instead of the rotation.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# 3rd Person Follow

[!include[](includes/deprecation-message.md)]

Use Cinemachine Virtual Camera’s **3rd Person Follow** to keep the camera at a constant position and distance relative to a Follow target (subject to damping controls), tracking the target’s movement and rotation.

The 3rd Person Follow’s mini-rig setup defines the camera position and distance relative to the target. With a suitable shoulder offset, this mini-rig can produce a 3rd-person camera, where the character is offset in the frame and the camera looks over the character’s shoulder. With different settings, it can produce a first-person camera.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Composer

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Aim__ algorithm rotates the camera to face the __Look At__ target. It also applies offsets, damping, and composition rules. Examples of targets for aiming: the upper spine or head bone of a character, vehicles, or dummy objects which are controlled or animated programmatically.

## Properties:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Do Nothing

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Aim__ algorithm does not aim the Virtual Camera. Choose this algorithm for static shots or for animating the rotation directly with custom scripts.

Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Group Composer

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Aim__ algorithm aims the camera at multiple GameObjects. Otherwise, it behaves identically to the Composer and has the same settings. If the Look At target is a [Cinemachine Target Group](CinemachineTargetGroup.md), the algorithm adjusts the FOV and the camera distance to ensure that the group of targets is framed properly.

Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Hard Look At

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Aim__ algorithm rotates the Virtual Camera to keep the __Look At__ target in the center of the camera frame.

2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachineAimPOV.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# POV

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Aim__ algorithm aims the camera in response to the user’s input.

## Properties:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Same As Follow Target

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Aim__ algorithm matches the orientation of the __Follow__ target. When used with the __Hard Lock to Target__ algorithm in the __Body__ properties, this algorithm makes the Virtual Camera match the path and rotation of a control GameObject.

Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Alternative Input Systems

[!include[](includes/deprecation-message.md)]

Some Cinemachine components (e.g. FreeLook, POV, OrbitalTransposer) require user input to position or orient the camera. By default, Cinemachine gets user input by querying the standard Unity `Input.GetAxis(name)`.

When alternative input systems are used in a project, this default behaviour must be overridden so that input is obtained from the appropriate source.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Binding Modes

[!include[](includes/deprecation-message.md)]

The binding mode defines the coordinate space Unity uses to interpret the camera offset from the target and the damping.
</br></br>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Blend List Camera

[!include[](includes/deprecation-message.md)]

The __Cinemachine Blend List Camera__ component executes a sequence of blends or cuts among its child Virtual Cameras.

When the Blend List camera is activated, it executes its list of instructions, activating the first child Virtual Camera in the list, holding for a designated time, then cutting or blending to the next child, and so on. The Blend List camera holds the last Virtual Camera until Cinemachine Brain or Timeline deactivates the Blend List camera.
Expand Down
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachineBlending.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Blending between Virtual Cameras

[!include[](includes/deprecation-message.md)]

Use blending properties to specify how the Cinemachine Brain component performs a blend between virtual cameras.

A Cinemachine blend is not a fade, wipe, or dissolve. Rather, Cinemachine Brain performs a smooth animation of the position, rotation, and other settings of the Unity camera from one Virtual Camera to the next.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# 3rd Person Follow

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Body__ algorithm is intended for use to implement a 3rd-person or 1st person camera. The algorithm places the camera on a mini-rig with 3 pivot points:

Pivot point 1 is the _origin_, which is the Follow target's position. When the target rotates horizontally, the rig rotates with it around this point.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Do Nothing

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Body__ algorithm does not move the Virtual Camera; it does not modify its position. Choose this algorithm for static shots or for animating the camera position directly with your custom scripts.

Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Framing Transposer

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Body__ algorithm moves the camera in a fixed screen-space relationship to the __Follow__ target. You can also specify offsets, damping, and composition rules. __Framing Transposer__ only changes the camera’s position in space. It does not re-orient or otherwise aim the camera.

__Framing Transposer__ is designed for 2D and orthographic cameras. But it works also with perspective cameras and 3D environments.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Hard Lock to Target

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Body__ algorithm uses the same position at the __Follow__ target. In other words, the target acts as a mounting point for the Virtual Camera.

Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Orbital Transposer

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Body__ algorithm moves the Unity camera in a variable relationship to the Virtual Camera’s __Follow__ target. It optionally accepts [player input](https://docs.unity3d.com/Manual/ConventionalGameInput.html), which allows the player to dynamically control the position of the camera relative to the target.

The __Orbital Transposer__ introduces the concept of __heading__, which is the direction in which the target is moving or facing. Orbital Transposer attempts to position the camera so that it points in the same direction as the heading direction. By default, this position is directly behind the target. Control this relationship by adjusting the __Heading Bias__ property.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Tracked Dolly

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Body__ algorithm restricts the Virtual Camera to move along a predefined [path](CinemachineDolly.md). Use the __Path Position__ property to specify where to put the Virtual Camera on the path.

Use __Auto-Dolly__ mode to move the Virtual Camera to a position on the path that is closest to the __Follow__ target. When enabled, __Auto-Dolly__ automatically animates the position of the Virtual Camera to the position on the path that’s closest to the target.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Transposer

[!include[](includes/deprecation-message.md)]

This Virtual Camera __Body__ algorithm moves the Virtual Camera in a fixed offset to the __Follow__ target. It also applies damping.

The fixed offset can be interpreted in various ways, depending on the Binding Mode.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Setting Cinemachine Brain properties

[!include[](includes/deprecation-message.md)]

The Cinemachine Brain is a component in the Unity camera itself. Cinemachine Brain monitors all active Virtual Cameras in the Scene. It chooses the next Virtual Camera to control the Unity camera. It also controls the [cut or blend](CinemachineBlending.md) from the current Virtual Camera to the next.

To add a Cinemachine Brain component to a Unity camera, do __one__ of the following:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Clear Shot Camera

[!include[](includes/deprecation-message.md)]

The __Cinemachine ClearShot Camera__ component chooses among its children Virtual Cameras for the best quality shot of the target. Use Clear Shot to set up complex multi-camera coverage of a Scene to guarantee a clear view of the target.

This can be a very powerful tool. Virtual Camera children with [Cinemachine Collider](CinemachineCollider.md) extensions analyze the Scene for target obstructions, optimal target distance, and so on. Clear Shot uses this information to choose the best child to activate.
Expand Down
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachineCollider.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Collider

[!include[](includes/deprecation-message.md)]

__Cinemachine Collider__ is an [extension](CinemachineVirtualCameraExtensions.md) for the Cinemachine Virtual Camera. It post-processes the final position of the Virtual Camera to attempt to preserve the line of sight with the __Look At__ target of the Virtual Camera. It does this by moving away from the GameObjects that obstruct the view.

Add a Cinemachine Collider extension to a Cinemachine Virtual Camera to do any of the following tasks:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Avoiding collisions and evaluating shots

[!include[](includes/deprecation-message.md)]

As characters and objects move around in a complex Scene, obstacles in the Scene sometimes come between a camera and its target. Similarly, you might need to move a camera to a position in the Scene that another GameObject already occupies. Cinemachine provides extensions to handle these situations:

* [Cinemachine Collider](CinemachineCollider.md)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#Cinemachine Collision Impulse Source

[!include[](includes/deprecation-message.md)]

For collision-based impulses, attach a **CinemachineCollisionImpulseSource** component to a GameObject that has a Collider or Collider2D component. **CinemachineCollisionImpulseSource** generates an impulse when something collides with the GameObject or enters a trigger zone.

To add a Collision Impulse Source component:
Expand Down
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachineConfiner.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Confiner

[!include[](includes/deprecation-message.md)]

Use the __Cinemachine Confiner__ [extension](CinemachineVirtualCameraExtensions.md) to limit the camera’s position to a volume or area.

Confiner operates in 2D or 3D mode. The mode influences the kind of bounding shape it accepts. In 3D mode, the camera’s position in 3D is confined to a volume. This also works for 2D games, but you need to take the depth into account. In 2D mode, you don’t have to worry about depth.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Confiner 2D

[!include[](includes/deprecation-message.md)]

![](images/CinemachineConfiner2Dc.png)

Use the Cinemachine Confiner 2D [extension](https://docs.unity3d.com/Packages/com.unity.cinemachine@2.6/manual/CinemachineVirtualCameraExtensions.html) to confine the camera’s position so that the screen edges stay within a shape defined by a 2D polygon. This works for orthographic or perspective cameras, provided that the camera's forward vector remains parallel to the bounding shape’s normal (that is, that the camera is looking straight at the polygon, and not obliquely at it).
Expand Down
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachineDolly.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Using dolly paths

[!include[](includes/deprecation-message.md)]

A dolly path is an array of waypoints in a Scene. Use a dolly path to specify a fixed course to position or animate a Virtual Camera. Use the [Tracked Dolly](CinemachineBodyTrackedDolly.md) algorithm to use a dolly path with your Virtual Camera.

![Editing a dolly path in the Scene view](images/CinemachinePathScene.png)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Dolly Cart

[!include[](includes/deprecation-message.md)]

__Cinemachine Dolly Cart__ is a component that constrains the transform of its GameObject to a __Cinemachine Path__ or __Cinemachine Smooth Path__. Use it to animate a GameObject along a path, or as a __Follow__ target for Virtual Cameras.

## Properties:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine External Camera - (deprecated)

[!include[](includes/deprecation-message.md)]

**Note:** This component is **deprecated** in favour of using a normal CinemachineVirtualCamera with Do Nothing in both Aim and Body.

This component will expose a non-cinemachine camera to the cinemachine system, allowing it to participate in blends. Just add it as a component alongside an existing Unity Camera component. You will need to take steps (e.g. disabling the Camera component) to ensure that the Camera doesn't fight with the main Cinemachine Camera.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Follow Zoom

[!include[](includes/deprecation-message.md)]

This [extension](CinemachineVirtualCameraExtensions.md) adjusts the FOV of the lens to keep the target object at a constant size on the screen, regardless of camera and target position.

## Properties:
Expand Down
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachineFreeLook.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Free Look Camera

[!include[](includes/deprecation-message.md)]

The __Cinemachine Free Look Camera__ component provides a third-person camera experience. This Cinemachine Virtual Camera orbits around its subject along a position specified by three separate camera rigs: __Top__, __Middle__, and __Bottom__.

![Cinemachine Free Look in the Scene window](images/CinemachineFreelook.png)
Expand Down
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachineImpulse.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Impulse

[!include[](includes/deprecation-message.md)]

Cinemachine Impulse generates and manages camera shake in response to game events. For example, you can use Impulse to make a Cinemachine Virtual Camera shake when one GameObject collides with another, or when something in your Scene explodes.

Impulse has two parts:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Filtering impulses

[!include[](includes/deprecation-message.md)]

Filtering lets you fine-tune how and when an Impulse Source generates impulses. Cinemachine Impulse allows two types of filtering:

- Use channel filtering to set things up so that an Impulse Listener reacts to certain Impulse Sources and ignores others. See [Filtering with channels](#ChannelFiltering) below for details.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Impulse Listener

[!include[](includes/deprecation-message.md)]

Impulse signals and [sources](CinemachineImpulseSourceOverview.md) don’t do anything on their own. An **Impulse Listener** is a Cinemachine extension that allows a virtual camera to “hear” impulse vibration signals and react to them.

Default implementations shipped with Cinemachine respond by applying the received signal directly to the listener’s transform position, causing it to shake along with the signal. Additionally, it’s possible to specify a secondary response - usually a randomized vibration along all positions and rotation axes - to give character to the listener’s movement. It’s as if the listener were supported on springs and then kicked by the impulse signal. In addition to the thrust given by the kick itself, there will be randomized shaking due to the springs.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Impulse Source

[!include[](includes/deprecation-message.md)]

Use the **Cinemachine Impulse Source** component to generate impulses on events that are not collisions or Collider triggers. This is a generic Impulse Source that exposes a family of `GenerateImpulse()` API methods. These methods generate impulses at the specified locations and with the specified velocities and strengths. Call these methods directly from your game logic, or use them with [UnityEvents](https://docs.unity3d.com/Manual/UnityEvents.html).

>**TIP:** You can use the script for this component as an example to reference when creating your own custom impulse-generating classes.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Impulse Sources

[!include[](includes/deprecation-message.md)]

An Impulse Source is a component that emits a vibration signal from a point in Scene space. Game events can cause an Impulse Source to emit a signal from the place where the event occurs. The event _triggers_ impulses, and the source _generates_ impulses. Virtual cameras with an Impulse Listener extension _react_ to impulses by shaking.

In the image below, the figure's feet are Impulse Sources. When they collide with the floor (A) they generate impulses. The camera is an Impulse Listener and reacts to the impulses by shaking (B), which shakes the resulting image in the game view (C).
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Managing and grouping Virtual Cameras

[!include[](includes/deprecation-message.md)]

A __manager__ camera oversees many Virtual Cameras but acts as a single Virtual Camera from the point of view of Cinemachine Brain and Timeline.

Cinemachine includes these manager cameras:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Mixing Camera

[!include[](includes/deprecation-message.md)]

The __Cinemachine Mixing Camera__ component uses the weighted average of its child Virtual Cameras to compute the position and other properties of the Unity camera.

![Cinemachine Mixing Camera with two child Virtual Cameras (red)](images/CinemachineMixingCamera.png)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Multiple Unity cameras

[!include[](includes/deprecation-message.md)]

Split-screen and picture-in-picture effects require the use of more than one Unity camera. Each Unity camera presents its own view on the player’s screen.

To use a multi-camera split-screen for two players:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Working with noise profiles

[!include[](includes/deprecation-message.md)]

A __noise profile__ is an asset that defines a procedural curve for camera noise. The __Basic Multi Channel Perlin__ component applies a noise profile to the movement of the camera. Cinemachine applies noise movement after computing the position of the camera. This way, camera noise does not affect the computation of camera movement in future updates.

Cinemachine includes some predefined profile assets. Choose a predefined noise profile in the Noise component. Create your own noise profile asset by choosing __Create > Cinemachine > NoiseSettings__ in the [Project window](https://docs.unity3d.com/Manual/ProjectView.html).
Expand Down
2 changes: 2 additions & 0 deletions com.unity.cinemachine/Documentation~/CinemachinePath.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Cinemachine Path

[!include[](includes/deprecation-message.md)]

__Cinemachine Path__ is a component that defines a world-space path, consisting of an array of waypoints. Each waypoint specifies position, tangent, and roll settings. Bezier interpolation is performed between the waypoints, to get a smooth and continuous path.

**Tip**: While the path position will always be smooth and continuous, it is still possible to get jarring movement when animating along the path. This happens when tangents aren’t set to ensure continuity of both the first and second order derivatives. It is not easy to get this right. To avoid this potentially jarring movement, use Cinemachine Smooth Path. CinemachineSmoothPath sets the tangents automatically to ensure complete smoothness.
Expand Down
Loading
Loading