Module Ticker-PIXI.Impl

let create: unit => t;
let getAutoStart: Js.t(_t) => bool;

Whether or not this ticker should invoke the method PIXI.Ticker#start automatically when a listener is added. @default: false

let setAutoStart: Js.t(_t) => bool => unit;

Whether or not this ticker should invoke the method PIXI.Ticker#start automatically when a listener is added. @default: false

let getCount: Js.t(_t) => int;

Counts the number of listeners on this ticker.

let getDeltaMS: Js.t(_t) => float;

Scaler time elapsed in milliseconds from last frame to this frame. This value is capped by setting PIXI.Ticker#minFPS and is scaled with PIXI.Ticker#speed. Note: The cap may be exceeded by scaling. If the platform supports DOMHighResTimeStamp, this value will have a precision of 1 µs. Defaults to target frame time 16.66

let getDeltaTime: Js.t(_t) => float;

Scalar time value from last frame to this frame. This value is capped by setting PIXI.Ticker#minFPS and is scaled with PIXI.Ticker#speed. Note: The cap may be exceeded by scaling. @default: 1

let getElapsedMS: Js.t(_t) => float;

Time elapsed in milliseconds from last frame to this frame. Opposed to what the scalar PIXI.Ticker#deltaTime is based, this value is neither capped nor scaled. If the platform supports DOMHighResTimeStamp, this value will have a precision of 1 µs. @default: 16.66

let getFPS: Js.t(_t) => float;

The frames per second at which this ticker is running. The default is approximately 60 in most modern browsers. Note: This does not factor in the value of PIXI.Ticker#speed, which is specific to scaling PIXI.Ticker#deltaTime.

let getLastTime: Js.t(_t) => float;

The last time PIXI.Ticker#update was invoked. This value is also reset internally outside of invoking update, but only when a new animation frame is requested. If the platform supports DOMHighResTimeStamp, this value will have a precision of 1 µs. @default: -1

let getMaxFPS: Js.t(_t) => float;

Manages the minimum amount of milliseconds required to elapse between invoking PIXI.Ticker#update. This will effect the measured value of PIXI.Ticker#FPS. If it is set to 0, then there is no limit; PixiJS will render as many frames as it can. Otherwise it will be at least minFPS @default: 0

let getMinFPS: Js.t(_t) => float;

Manages the maximum amount of milliseconds allowed to elapse between invoking PIXI.Ticker#update. This value is used to cap PIXI.Ticker#deltaTime, but does not effect the measured value of PIXI.Ticker#FPS. When setting this property it is clamped to a value between 0 and PIXI.settings.TARGET_FPMS * 1000. @default: 10

let getSpeed: Js.t(_t) => float;

Factor of current PIXI.Ticker#deltaTime. @default: 1

let setSpeed: Js.t(_t) => float => unit;

Factor of current PIXI.Ticker#deltaTime. @default: 1

let getStarted: Js.t(_t) => bool;

Whether or not this ticker has been started. true if PIXI.Ticker#start has been called. false if PIXI.Ticker#stop has been called. While false, this value may change to true in the event of PIXI.Ticker#autoStart being true and a listener is added. @default: false

let add: Js.t(_t) as 'a => (float => unit) => ?⁠context:'b => ?⁠priority:int => unit => 'a;

Register a handler for tick events. Calls continuously unless it is removed or the ticker is stopped.

let addOnce: Js.t(_t) as 'a => (float => unit) => ?⁠context:'b => ?⁠priority:int => unit => 'a;

Add a handler for the tick event which is only execute once.

let destroy: Js.t(_t) => unit;

Destroy the ticker and don't use after this. Calling this method removes all references to internal events.

let remove: Js.t(_t) as 'a => (float => unit) => ?⁠context:'b => unit => 'a;

Removes any handlers matching the function and context parameters. If no handlers are left after removing, then it cancels the animation frame.

let start: Js.t(_t) => unit;

Starts the ticker. If the ticker has listeners a new animation frame is requested at this point.

let stop: Js.t(_t) => unit;

Stops the ticker. If the ticker has requested an animation frame it is canceled at this point.

let update: Js.t(_t) => ?⁠currentTime:float => unit => unit;

Triggers an update. An update entails setting the current PIXI.Ticker#elapsedMS, the current PIXI.Ticker#deltaTime, invoking all listeners with current deltaTime, and then finally setting PIXI.Ticker#lastTime with the value of currentTime that was provided. This method will be called automatically by animation frame callbacks if the ticker instance has been started and listeners are added.