OrbitCamera

Read with AI
All docs in one file (llms-full.txt)
OrbitCamera #3D #Node
OrbitCamera

The camera moves along a circle of radius Radius and height Height centered on the target position, and outputs camera values that always face the target. There are two ways the angle is determined: when Phase is connected, its value is used directly as the amount of rotation (0→1 is one full turn), and when it is not connected, the camera runs on its own at Speed (degrees per second). Plugging an LFO with a Saw waveform into Phase gives you camera work you can talk about in beats, such as one turn per bar.

  • TargetX / TargetY / TargetZ — The center of the orbit (default 0)
  • Radius (default 30, minimum 0.01)
  • Height — Height offset from the target (default 8)
  • Speed — Rotation speed when Phase is not connected, in degrees per second (default 20)
  • Phase — Only active when connected. 0→1 is one full turn
  • FOV — Clamped to 1-179 degrees (default 60)

Speed is ignored the moment you connect Phase. This node always outputs perspective camera values (it cannot be made orthographic). Near 0.1 / far 1000 are fixed as well.

Input ports

Port IDType
TargetXfloat
TargetYfloat
TargetZfloat
Radiusfloat
Heightfloat
Speedfloat
Phasefloat
FOVfloat

Output ports

Port IDType
CameraCameraDataOutput

Scriptable members

PathType
targetXInputfloat
targetYInputfloat
targetZInputfloat
radiusInputfloat
heightInputfloat
speedInputfloat
phaseInputfloat
fovInputfloat

Synapse Apps (scripting)

await synapse.modules.create({ type: "OrbitCamera" })

Also referenced from