Renderer · type

ShotKind

Where a shot puts the camera, and what it frames.

Explained in Hello world.

type ShotKind = 'chase' | 'lowWide' | 'orbit' | 'flyby' | 'overhead' | 'lookAt'
import type { ShotKind } from '@driftengine/core';

In depth

Pure: a shot plus a subject pose plus how far into the shot it is, in and a placement out. No state, no smoothing, no collision — those belong to the rig (cinematicCamera.ts), and keeping them apart is what lets the rig evaluate the same shot at two poses in a frame, which is how it learns the speed its target is travelling at instead of trailing behind it.

Game-agnostic, like the rig: a shot is a placement rule and a subject. Nothing here knows what a character is.