Interface BankedFreeCamera
angularSensitivity: number;
children: SceneNode[];
farPlane: number;
fov: number;
inertia: number;
name?: string;
nearPlane: number;
ortho?: OrthographicBounds | null;
parent: IWorldMatrixProvider | null;
position: ObservableVec3;
speed: number;
target: ObservableVec3;
upVector: ObservableVec3;
viewport?: NormalizedViewport;
worldMatrix: Mat4;
worldMatrixVersion: number;
}
Hierarchy (View Summary)
- FreeCamera
- BankedFreeCamera
Properties
angular Sensitivity
Mouse rotation sensitivity (higher = less sensitive). Default 2000 (matches BJS).
children
far Plane
fov
inertia
Inertia damping factor (0 = instant stop, 0.9 = smooth). Default 0.9 (matches BJS).
Optionalname
Optional source/debug name. Imported glTF cameras use the glTF camera name,
or camera{index} when the source definition is unnamed.
near Plane
Optionalortho
Live orthographic view-volume extents, installed by enableOrthographicCamera
and mutable/animatable thereafter. Null or undefined means the camera projects
perspectively through fov.
parent
Readonlyposition
speed
Movement speed. Default 2.0 (matches BJS).
Readonlytarget
Readonlyup Vector
World-space up vector used to build the look-at basis. Mutate it to roll the camera.
Writes invalidate the camera's world matrix exactly like position / target do.
Optionalviewport
Readonlyworld Matrix
World-space 4×4 column-major matrix. May trigger lazy recomputation.
Readonlyworld Matrix Version
Monotonically increasing counter — bumped each time worldMatrix recomputes.
Children snapshot this value to detect when their parent has changed.
Must never decrease: _cameraChangeKey sums it with the projection revision
and relies on that to detect every change without aliasing.
A FreeCamera with an explicit, mutable world-space up vector.