Skip to main content

Interface: ThreeDSceneOptions

Defined in: src/core/ThreeDScene.ts:50

Options for configuring a ThreeDScene.

Extends​

Extended by​

Properties​

autoRender?​

optional autoRender: boolean

Defined in: src/core/Scene.ts:70

Enable auto-render on add/remove. Defaults to true.

Inherited from​

SceneOptions.autoRender


autoResize?​

optional autoResize: boolean

Defined in: src/core/Scene.ts:81

Automatically resize the canvas when its container (or the window, on mobile rotation) changes size. Only active when both width and height are omitted — passing either dimension is treated as a request for a pinned canvas size, so auto-resize stays off. Defaults to true.

Inherited from​

SceneOptions.autoResize


backgroundColor?​

optional backgroundColor: string

Defined in: src/core/Scene.ts:60

Background color as CSS color string. Defaults to Manim's dark gray (#1C1C1C).

Inherited from​

SceneOptions.backgroundColor


backgroundOpacity?​

optional backgroundOpacity: number

Defined in: src/core/Scene.ts:72

Background opacity (0 = fully transparent, 1 = fully opaque). Defaults to 1. Not supported when exporting to video or GIF formats.

Inherited from​

SceneOptions.backgroundOpacity


distance?​

optional distance: number

Defined in: src/core/ThreeDScene.ts:58

Initial camera distance from origin. Defaults to 15.


enableOrbitControls?​

optional enableOrbitControls: boolean

Defined in: src/core/ThreeDScene.ts:60

Enable orbit controls for user interaction. Defaults to true.


fov?​

optional fov: number

Defined in: src/core/ThreeDScene.ts:52

Camera field of view in degrees. Defaults to 45.


frameHeight?​

optional frameHeight: number

Defined in: src/core/Scene.ts:64

Frame height in world units. Defaults to 8 (Manim standard).

Inherited from​

SceneOptions.frameHeight


frameWidth?​

optional frameWidth: number

Defined in: src/core/Scene.ts:62

Frame width in world units. Defaults to 14 (Manim standard).

Inherited from​

SceneOptions.frameWidth


frustumCulling?​

optional frustumCulling: boolean

Defined in: src/core/Scene.ts:68

Enable frustum culling optimization. Defaults to true.

Inherited from​

SceneOptions.frustumCulling


headless?​

optional headless: boolean

Defined in: src/core/Scene.ts:74

Enable headless mode (no WebGL renderer). Useful for testing scene logic without a DOM.

Inherited from​

SceneOptions.headless


height?​

optional height: number

Defined in: src/core/Scene.ts:58

Canvas height in pixels. Defaults to container height.

Inherited from​

SceneOptions.height


orbitControlsOptions?​

optional orbitControlsOptions: OrbitControlsOptions

Defined in: src/core/ThreeDScene.ts:64

Orbit controls configuration options.


orbitControlsUp?​

optional orbitControlsUp: "x" | "y" | "z"

Defined in: src/core/ThreeDScene.ts:62

Vertical rotation axis for orbit controls: 'x', 'y', or 'z'. If not provided, camera.up is computed from initial phi/theta via orbit() formula.


phi?​

optional phi: number

Defined in: src/core/ThreeDScene.ts:54

Initial camera phi angle (polar, from Y axis). Defaults to PI/4.


setupLighting?​

optional setupLighting: boolean

Defined in: src/core/ThreeDScene.ts:66

Whether to set up default lighting. Defaults to true.


targetFps?​

optional targetFps: number

Defined in: src/core/Scene.ts:66

Target frame rate in fps. Defaults to 60.

Inherited from​

SceneOptions.targetFps


theta?​

optional theta: number

Defined in: src/core/ThreeDScene.ts:56

Initial camera theta angle (azimuthal, in XZ plane). Defaults to -PI/4.


width?​

optional width: number

Defined in: src/core/Scene.ts:56

Canvas width in pixels. Defaults to container width.

Inherited from​

SceneOptions.width