Skip to main content

CutsceneFrame

@zylem/game-lib


@zylem/game-lib / cinematics / CutsceneFrame

Interface: CutsceneFrame

Defined in: packages/game-lib/src/lib/cinematics/cutscene-math.ts:211

Properties​

blend​

blend: number

Defined in: packages/game-lib/src/lib/cinematics/cutscene-math.ts:217

0…1 while blending in from the previous shot, else 1.


camera​

camera: \{ damping: number; dollyEasing: "linear" | "easeInOut" | "easeIn" | "easeOut"; dollyId?: string; fov: number; id: string; keyframes: object[]; kind: "static" | "dolly" | "follow"; name: string; offset?: \{ x: number; y: number; z: number; \}; pose: \{ lookAt: \{ x: number; y: number; z: number; \}; position: \{ x: number; y: number; z: number; \}; \}; target?: string; \} | undefined

Defined in: packages/game-lib/src/lib/cinematics/cutscene-math.ts:214

Union Members​

Type Literal​

\{ damping: number; dollyEasing: "linear" | "easeInOut" | "easeIn" | "easeOut"; dollyId?: string; fov: number; id: string; keyframes: object[]; kind: "static" | "dolly" | "follow"; name: string; offset?: \{ x: number; y: number; z: number; \}; pose: \{ lookAt: \{ x: number; y: number; z: number; \}; position: \{ x: number; y: number; z: number; \}; \}; target?: string; \}

damping​

damping: number

Smoothing for follow cameras, 0 (instant) … 1 (very slow).

dollyEasing​

dollyEasing: "linear" | "easeInOut" | "easeIn" | "easeOut" = CutsceneEasingSchema

Progress curve along the dolly path (0 → 1 over the shot).

dollyId?​

optional dollyId?: string

dolly cameras ride this path over each shot.

fov​

fov: number

Vertical field of view in degrees.

id​

id: string

keyframes​

keyframes: object[]

kind​

kind: "static" | "dolly" | "follow" = CutsceneCameraKindSchema

name​

name: string

offset?​

optional offset?: object

Offset from the target for follow cameras.

offset.x​

x: number

offset.y​

y: number

offset.z​

z: number

pose​

pose: object = CameraPoseDefSchema

Base pose; static cameras hold it, keyframes and dollies start from it.

pose.lookAt​

lookAt: object = Vec3Schema

pose.lookAt.x​

x: number

pose.lookAt.y​

y: number

pose.lookAt.z​

z: number

pose.position​

position: object = Vec3Schema

pose.position.x​

x: number

pose.position.y​

y: number

pose.position.z​

z: number

target?​

optional target?: string

Entity name a follow camera tracks, and what a dolly looks at when set.


undefined


pose​

pose: EvaluatedPose | undefined

Defined in: packages/game-lib/src/lib/cinematics/cutscene-math.ts:215


scene​

scene: \{ end: number; id: string; name: string; start: number; transitionIn: \{ duration: number; easing: "linear" | "easeInOut" | "easeIn" | "easeOut"; type: "fade" | "cut" | "wipe" | "radial" | "noise" | "cells"; \}; \} | undefined

Defined in: packages/game-lib/src/lib/cinematics/cutscene-math.ts:212

Union Members​

Type Literal​

\{ end: number; id: string; name: string; start: number; transitionIn: \{ duration: number; easing: "linear" | "easeInOut" | "easeIn" | "easeOut"; type: "fade" | "cut" | "wipe" | "radial" | "noise" | "cells"; \}; \}

end​

end: number

id​

id: string

name​

name: string

start​

start: number

Seconds from the cutscene start.

transitionIn​

transitionIn: object = SceneTransitionSchema

How the picture arrives at this scene's start.

transitionIn.duration​

duration: number

Seconds; ignored for cut.

transitionIn.easing​

easing: "linear" | "easeInOut" | "easeIn" | "easeOut" = CutsceneEasingSchema

transitionIn.type​

type: "fade" | "cut" | "wipe" | "radial" | "noise" | "cells" = SceneTransitionTypeSchema


undefined


shot​

shot: \{ blend: \{ duration: number; easing: "linear" | "easeInOut" | "easeIn" | "easeOut"; \}; cameraId: string; end: number; id: string; start: number; \} | undefined

Defined in: packages/game-lib/src/lib/cinematics/cutscene-math.ts:213