Skip to content

Documentation / scene / ControllerConfig

Interface: ControllerConfig ​

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:81

Top-level configuration for the physics controller

Properties ​

gravity ​

gravity: Vector3

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:83

Global gravity vector


windForce ​

windForce: Vector3

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:85

Global wind force vector applied to all dynamic points


relaxation ​

relaxation: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:87

Number of constraint relaxation iterations per substep. Higher = more stable but slower


subSteps ​

subSteps: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:89

Number of simulation substeps per frame. Higher = more stable at cost of performance


rootSlideLimit ​

rootSlideLimit: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:91

Max system-local root slide distance retained after root motion. Excess is applied to physics state. -1 = unlimited


rootRotateLimit ​

rootRotateLimit: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:93

Max root bone rotation angle (degrees) per substep. Excess is distributed. -1 = unlimited


constraintShrinkLimit ​

constraintShrinkLimit: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:95

Upper limit for horizontal/shear constraint shrink power. Prevents over-compression


blendRatio ​

blendRatio: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:97

Global blend ratio between physics and animation [0-1]. 0 = full physics, 1 = full animation


stabilizationFrameRate ​

stabilizationFrameRate: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:99

Target frame rate for stabilization (currently unused, reserved)


isFakeWave ​

isFakeWave: boolean

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:101

Enable sinusoidal fake wave effect on leaf bones


fakeWaveSpeed ​

fakeWaveSpeed: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:103

Fake wave global speed (accumulates over time)


fakeWavePower ​

fakeWavePower: number

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:105

Fake wave global amplitude multiplier


enableSurfaceCollision ​

enableSurfaceCollision: boolean

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:107

Enable triangle-based surface collision (cloth vs colliders)


enableBroadPhase ​

enableBroadPhase: boolean

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:109

Enable broad-phase pruning before precise collider tests


preserveTwist ​

preserveTwist: boolean

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:111

Preserve each joint's initial local twist (axial roll) after physics simulation


angleLimitConfig ​

angleLimitConfig: AngleLimitConfig

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:113

Post-simulation angle limiting between parent-child bones


curves ​

curves: PhysicsCurves

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:115

Depth-based physics parameter curves


constraintOptions ​

constraintOptions: ConstraintBuildOptions

Defined in: libs/scene/src/animation/joint_dynamics/controller.ts:117

Which constraint types to generate and their collision flags

Released under the MIT License.