• Public
  • Public/Protected
  • All

Class CameraInputsManager<TCamera>

This represents the input manager used within a camera. It helps dealing with all the different kind of input attached to a camera.



Type parameters





  • Instantiate a new Camera Input Manager.


    • camera: TCamera

      Defines the camera the input manager belongs to

    Returns CameraInputsManager


attachedSearch playground for attached

attached: CameraInputsMap<TCamera>

Defines the list of inputs attached to the camera.

attachedToElementSearch playground for attachedToElement

attachedToElement: boolean

Defines the dom element the camera is collecting inputs from. This is null if the controls have not been attached.

cameraSearch playground for camera

camera: TCamera

Defined the camera the input manager belongs to.

checkInputsSearch playground for checkInputs

checkInputs: () => void

Update the current camera state depending on the inputs that have been used this frame. This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.

Type declaration

    • (): void
    • Returns void

noPreventDefaultSearch playground for noPreventDefault

noPreventDefault: boolean

Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)


addSearch playground for add

attachElementSearch playground for attachElement

  • attachElement(noPreventDefault?: boolean): void
  • Attach the current manager inputs controls to a specific dom element to listen the events from.


    Returns void

attachInputSearch playground for attachInput

  • Attach the input controls to the currently attached dom element to listen the events from.


    Returns void

clearSearch playground for clear

  • clear(): void
  • Remove all attached input methods from a camera

    Returns void

detachElementSearch playground for detachElement

  • detachElement(disconnect?: boolean): void
  • Detach the current manager inputs controls from a specific dom element.


    • Optional disconnect: boolean

      Defines whether the input should be removed from the current list of attached inputs

    Returns void

parseSearch playground for parse

  • parse(parsedCamera: any): void
  • Parses an input manager serialized JSON to restore the previous list of inputs and states associated to a camera.


    • parsedCamera: any

      Defines the JSON to parse

    Returns void

rebuildInputCheckSearch playground for rebuildInputCheck

  • rebuildInputCheck(): void
  • Rebuild the dynamic inputCheck function from the current list of defined inputs in the manager.

    Returns void

removeSearch playground for remove

  • Remove a specific input method from a camera example: camera.inputs.remove(camera.inputs.attached.mouse);


    Returns void

removeByTypeSearch playground for removeByType

  • removeByType(inputType: string): void
  • Remove a specific input type from a camera example: camera.inputs.remove("ArcRotateCameraGamepadInput");


    • inputType: string

      the type of the input to remove

    Returns void

serializeSearch playground for serialize

  • serialize(serializedCamera: any): void
  • Serialize the current input manager attached to a camera. This ensures than once parsed, the input associated to the camera will be identical to the current ones


    • serializedCamera: any

      Defines the camera serialization JSON the input serialization should write to

    Returns void


  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method
  • Static property
  • Static method