Vixen
02b45cc4
csharp
public struct CameraDirector

Put beside a Camera: it chooses which shot that camera is currently taking, and blends when the choice changes.

No guide page documents this yet — the page shows what the code says about itself.

As a scene component

Size
16 bytes — 585 rows in a 16 KB chunk, alone on the archetype

Remarks

Cinemachine's Brain. It owns the real camera's transform for as long as it is there, and everything it does is decided by two numbers on the shots themselves — which one has the highest Priority, and which was enabled most recently. Nothing anywhere calls "switch to camera B": B is given a higher priority, or A is disabled, and the cut happens because the answer to the question changed.

⚠ The blend in flight is not in this component. What is here is authored settings; which shot is live and how far through a transition it is lives in CameraDirectorSystem, keyed by the director's entity. A saved game that captured a half-finished blend would reload into the middle of a camera move nobody asked for, and a component that is written sixty times a second would mark its chunk dirty for every change filter in the frame.

Fields and properties (4)

  • public CameraBlend DefaultBlend

    The blend used for any transition a CameraBlendTable has no rule for.

  • public bool WriteLens

    Whether the live shot's lens is copied onto the camera each frame.

  • public int Channel

    Which shots this director considers. Only those on the same channel.

  • public static CameraDirector Default

    A director that blends over two seconds and owns its camera's lens.

Used by (9)

  • CameraDirectorSystemVixen.Engine
  • CameraDirectorTestsVixen.Engine.Tests
  • ComponentRegistrationVixen.Engine
  • PlayerCameraTestsVixen.Engine.Tests
  • PlayerCamerasVixen.Engine
  • RigVixen.Engine.Tests
  • TypeRegistrationVixen.Engine
  • Vixen_Engine_Cameras_CameraDirectorSerializerVixen.Engine
  • MaterialIconsVixen.Editor.App