Runtime configuration for AircraftController.

Most fields are optional overrides around practical defaults. Distances, speeds and offsets are in the active Scene coordinate system. Directional vectors follow the Scene coordinate system's world-up convention.

interface AircraftControllerConfig {
    acceleration?: number;
    afterburner?: boolean | AircraftAfterburnerConfig;
    bodyRadius?: number;
    brakeDeceleration?: number;
    cameraCockpitEyeOffset?: ArrayLike<number>;
    cameraCockpitLookOffset?: ArrayLike<number>;
    cameraDistance?: number;
    cameraExteriorDistanceScale?: number;
    cameraExteriorDistanceStep?: number;
    cameraExteriorMaxDistanceScale?: number;
    cameraExteriorMinDistanceScale?: number;
    cameraFollowSmoothing?: number;
    cameraFrontDistanceScale?: number;
    cameraFrontHeightScale?: number;
    cameraFrontLookAheadScale?: number;
    cameraFrontMinDistance?: number;
    cameraFrontMinDistanceScale?: number;
    cameraHeight?: number;
    cameraLateralOffset?: number;
    cameraLookAhead?: number;
    cameraLookHeight?: number;
    cameraLookSmoothing?: number;
    cameraRearWideDistanceScale?: number;
    cameraRearWideHeightScale?: number;
    cameraRearWideLookAheadScale?: number;
    cameraSideDistanceScale?: number;
    cameraSideHeightScale?: number;
    cameraSideLookAheadScale?: number;
    cameraTopHeight?: number;
    cameraTopTrailingDistance?: number;
    cameraTrailFollow?: number;
    cameraTrailHeight?: number;
    coastDeceleration?: number;
    collision?: boolean;
    exhaust?: AircraftExhaustConfig;
    exhaustPlume?: boolean | AircraftExhaustConfig;
    flightAcceleration?: number;
    flightAirDrag?: number;
    flightBrakeDeceleration?: number;
    flightGravity?: number;
    flightLandingFallSpeed?: number;
    flightMinGlideSpeed?: number;
    flightPitchRateDegreesPerSecond?: number;
    flightSoftLandingRange?: number;
    flightSteeringResponse?: number;
    flightTakeoffHeight?: number;
    flightTakeoffSpeed?: number;
    forwardAxis?: string;
    gravity?: boolean;
    initialShipPosition?: ArrayLike<number>;
    keySteerInitialScale?: number;
    keySteerRampSeconds?: number;
    leanDegrees?: number;
    leanSmoothing?: number;
    maxForwardSpeed?: number;
    maxMouseDragInputPerFrame?: number;
    maxReverseSpeed?: number;
    maxShipMouseDragInputPerFrame?: number;
    maxShipPitchDegrees?: number;
    maxVisualRollDegrees?: number;
    minAltitude?: number;
    minForwardSpeed?: number;
    minShipPitchDegrees?: number;
    modelId?: string;
    mouseDragPitchSensitivity?: number;
    mouseDragResponse?: number;
    mouseDragYawSensitivity?: number;
    rollSmoothing?: number;
    shipKeyYawInitialScale?: number;
    shipKeyYawRampSeconds?: number;
    shipMouseDragPitchSensitivity?: number;
    shipMouseDragResponse?: number;
    shipMouseDragSensitivity?: number;
    shipMouseDragYawSensitivity?: number;
    shipPitchRateDegreesPerSecond?: number;
    shipYawRateDegreesPerSecond?: number;
    startFlying?: boolean;
    startSpeed?: number;
    turnRateDegreesPerSecond?: number;
    vehicleVisualSmoothing?: number;
    [key: string]: unknown;
}

Indexable

  • [key: string]: unknown

    Allows demos to pass through extra controller-specific values.

Properties

acceleration? afterburner? bodyRadius? brakeDeceleration? cameraCockpitEyeOffset? cameraCockpitLookOffset? cameraDistance? cameraExteriorDistanceScale? cameraExteriorDistanceStep? cameraExteriorMaxDistanceScale? cameraExteriorMinDistanceScale? cameraFollowSmoothing? cameraFrontDistanceScale? cameraFrontHeightScale? cameraFrontLookAheadScale? cameraFrontMinDistance? cameraFrontMinDistanceScale? cameraHeight? cameraLateralOffset? cameraLookAhead? cameraLookHeight? cameraLookSmoothing? cameraRearWideDistanceScale? cameraRearWideHeightScale? cameraRearWideLookAheadScale? cameraSideDistanceScale? cameraSideHeightScale? cameraSideLookAheadScale? cameraTopHeight? cameraTopTrailingDistance? cameraTrailFollow? cameraTrailHeight? coastDeceleration? collision? exhaust? exhaustPlume? flightAcceleration? flightAirDrag? flightBrakeDeceleration? flightGravity? flightLandingFallSpeed? flightMinGlideSpeed? flightPitchRateDegreesPerSecond? flightSoftLandingRange? flightSteeringResponse? flightTakeoffHeight? flightTakeoffSpeed? forwardAxis? gravity? initialShipPosition? keySteerInitialScale? keySteerRampSeconds? leanDegrees? leanSmoothing? maxForwardSpeed? maxMouseDragInputPerFrame? maxReverseSpeed? maxShipMouseDragInputPerFrame? maxShipPitchDegrees? maxVisualRollDegrees? minAltitude? minForwardSpeed? minShipPitchDegrees? modelId? mouseDragPitchSensitivity? mouseDragResponse? mouseDragYawSensitivity? rollSmoothing? shipKeyYawInitialScale? shipKeyYawRampSeconds? shipMouseDragPitchSensitivity? shipMouseDragResponse? shipMouseDragSensitivity? shipMouseDragYawSensitivity? shipPitchRateDegreesPerSecond? shipYawRateDegreesPerSecond? startFlying? startSpeed? turnRateDegreesPerSecond? vehicleVisualSmoothing?

Properties

acceleration?: number

Ground acceleration.

afterburner?: boolean | AircraftAfterburnerConfig

Afterburner config, shared with the exhaust emitter.

bodyRadius?: number

Collision body radius supplied to vehicle navigation.

brakeDeceleration?: number

Ground braking deceleration.

cameraCockpitEyeOffset?: ArrayLike<number>

Aircraft-local cockpit eye offset.

cameraCockpitLookOffset?: ArrayLike<number>

Aircraft-local cockpit look target offset.

cameraDistance?: number

Base chase-camera distance.

cameraExteriorDistanceScale?: number

Initial multiplier for exterior camera distances.

cameraExteriorDistanceStep?: number

Multiplicative step used by - / + exterior-camera zoom keys.

cameraExteriorMaxDistanceScale?: number

Maximum exterior distance multiplier.

cameraExteriorMinDistanceScale?: number

Minimum exterior distance multiplier.

cameraFollowSmoothing?: number

Smoothing factor for exterior camera eye movement.

cameraFrontDistanceScale?: number

Front-camera distance multiplier.

cameraFrontHeightScale?: number

Front-camera height multiplier.

cameraFrontLookAheadScale?: number

Front-camera look-ahead multiplier.

cameraFrontMinDistance?: number

Minimum front-camera distance from the aircraft.

cameraFrontMinDistanceScale?: number

Front-camera minimum distance as a fraction of desired distance.

cameraHeight?: number

Base chase-camera height.

cameraLateralOffset?: number

Right-axis offset for the trailing camera.

cameraLookAhead?: number

Distance ahead of the aircraft that the chase camera looks.

cameraLookHeight?: number

World-up offset added to camera look targets.

cameraLookSmoothing?: number

Smoothing factor for exterior camera look movement.

cameraRearWideDistanceScale?: number

Rear-wide camera distance multiplier.

cameraRearWideHeightScale?: number

Rear-wide camera height multiplier.

cameraRearWideLookAheadScale?: number

Rear-wide camera look-ahead multiplier.

cameraSideDistanceScale?: number

Side-camera distance multiplier.

cameraSideHeightScale?: number

Side-camera height multiplier.

cameraSideLookAheadScale?: number

Side-camera look-ahead multiplier.

cameraTopHeight?: number

Top-camera height.

cameraTopTrailingDistance?: number

Backward offset for the top-trailing camera.

cameraTrailFollow?: number

Blend amount toward an exhaust-tethered trailing camera.

cameraTrailHeight?: number

Up offset used by the exhaust-tethered trailing camera.

coastDeceleration?: number

Passive deceleration while coasting.

collision?: boolean

Enables collision against non-aircraft objects.

Exhaust trail configuration.

exhaustPlume?: boolean | AircraftExhaustConfig

Backward-compatible exhaust trail flag/config alias.

flightAcceleration?: number

Flight acceleration.

flightAirDrag?: number

Flight drag coefficient.

flightBrakeDeceleration?: number

Flight braking deceleration.

flightGravity?: number

Flight gravity acceleration.

flightLandingFallSpeed?: number

Falling speed used during landing.

flightMinGlideSpeed?: number

Minimum glide speed while flying.

flightPitchRateDegreesPerSecond?: number

Flight pitch rate in degrees per second.

flightSoftLandingRange?: number

Distance over which landing is softened.

flightSteeringResponse?: number

Responsiveness of flight steering.

flightTakeoffHeight?: number

Altitude at which flight mode starts.

flightTakeoffSpeed?: number

Speed required before takeoff.

forwardAxis?: string

Which local aircraft axis points forward. Defaults to "-Z".

gravity?: boolean

Enables gravity in the underlying vehicle controller.

initialShipPosition?: ArrayLike<number>

Initial world-space aircraft position. If omitted, derived from the View camera.

keySteerInitialScale?: number

Generic alias for keyboard steer initial multiplier.

keySteerRampSeconds?: number

Generic alias for keyboard steering ramp seconds.

leanDegrees?: number

Generic alias for maximum visual roll/lean in degrees.

leanSmoothing?: number

Generic alias for roll smoothing.

maxForwardSpeed?: number

Maximum forward speed.

maxMouseDragInputPerFrame?: number

Generic alias for maximum mouse-drag input per frame.

maxReverseSpeed?: number

Maximum reverse speed.

maxShipMouseDragInputPerFrame?: number

Maximum mouse-drag input consumed in one frame.

maxShipPitchDegrees?: number

Maximum pitch angle in degrees.

maxVisualRollDegrees?: number

Maximum visual roll/lean in degrees.

minAltitude?: number

Minimum altitude along world-up; below this, the controller clamps upward.

minForwardSpeed?: number

Alias for minimum forward/glide speed.

minShipPitchDegrees?: number

Minimum pitch angle in degrees.

modelId?: string

ID prefix for the aircraft SceneModel, used by the default collision filter.

mouseDragPitchSensitivity?: number

Generic alias for mouse-drag pitch sensitivity.

mouseDragResponse?: number

Generic mouse-drag response smoothing.

mouseDragYawSensitivity?: number

Generic alias for mouse-drag yaw sensitivity.

rollSmoothing?: number

Roll smoothing factor.

shipKeyYawInitialScale?: number

Initial keyboard steer multiplier before ramping.

shipKeyYawRampSeconds?: number

Seconds for keyboard steering to ramp to full strength.

shipMouseDragPitchSensitivity?: number

Mouse-drag pitch sensitivity.

shipMouseDragResponse?: number

Aircraft-demo alias for mouse-drag response smoothing.

shipMouseDragSensitivity?: number

Shared mouse-drag sensitivity fallback.

shipMouseDragYawSensitivity?: number

Mouse-drag yaw sensitivity.

shipPitchRateDegreesPerSecond?: number

Aircraft-demo alias for flight pitch rate.

shipYawRateDegreesPerSecond?: number

Preferred yaw rate name for aircraft demos, in degrees per second.

startFlying?: boolean

Whether to start in flight mode. Defaults to true.

startSpeed?: number

Initial forward speed.

turnRateDegreesPerSecond?: number

Generic yaw rate alias, in degrees per second.

vehicleVisualSmoothing?: number

Smoothing factor for rendered aircraft pose. Use 0 for exact pose.