UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

73 lines (72 loc) 2.93 kB
import { PolyScene } from '../PolyScene'; import { CoreGraphNode } from '../../../core/graph/CoreGraphNode'; export declare const DESIRED_FPS = 60; export type onTimeTickHook = (delta: number) => void; export type onPlayingStateChangeCallback = () => void; export interface TimeControllerUpdateTimeOptions { updateClockDelta?: boolean; } export declare const TIME_CONTROLLER_UPDATE_TIME_OPTIONS_DEFAULT: TimeControllerUpdateTimeOptions; type onTimeTickCallbacksMap = Map<string, onTimeTickHook>; export declare class TimeController { private scene; static START_FRAME: Readonly<number>; private _frame; private _timeUniform; private _timeDeltaUniform; private _graphNode; private _realtimeState; private _maxFrame; private _maxFrameLocked; private _playing; private _clock; constructor(scene: PolyScene); get graphNode(): CoreGraphNode; dispose(): void; updateClockDelta(): number; delta(): number; setDelta(delta: number): number; frame(): number; timeUniform(): import("@vue/reactivity").Ref<number>; timeDeltaUniform(): import("@vue/reactivity").Ref<number>; time(): number; maxFrame(): number; maxFrameLocked(): boolean; realtimeState(): boolean; setMaxFrame(maxFrame: number): void; setMaxFrameLocked(state: boolean): void; setRealtimeState(state: boolean): void; setTime(time: number, updateFrame?: boolean): void; setFrame(frame: number, updateTime?: boolean): void; setFrameToStart(): void; incrementTimeIfPlaying(options?: TimeControllerUpdateTimeOptions): void; incrementTime(options?: TimeControllerUpdateTimeOptions): void; private _ensureFrameWithinBounds; playing(): boolean; pause(): void; play(): void; togglePlayPause(): void; private _playAllowedWithoutAllNodesCooked; forbidPlayUntilAllNodesCooked(): void; private _onBeforeTickCallbacksMap; private _onAfterTickCallbacksMap; private _onPlayingStateChangeCallbacksMap; private _onBeforeTickCallbacks; private _onAfterTickCallbacks; private _onPlayingStateChangeCallbacks; registerOnBeforeTick(callbackName: string, callback: onTimeTickHook): void; unRegisterOnBeforeTick(callbackName: string): void; registeredBeforeTickCallbacks(): Map<any, any>; hasBeforeTickCallback(callbackName: string): boolean; registerOnAfterTick(callbackName: string, callback: onTimeTickHook): void; unRegisterOnAfterTick(callbackName: string): void; registeredAfterTickCallbacks(): onTimeTickCallbacksMap; hasAfterTickCallback(callbackName: string): boolean; onPlayingStateChange(callback: onPlayingStateChangeCallback): void; removeOnPlayingStateChange(callback: onPlayingStateChangeCallback): void; private _updateOnPlayingStateChangeCallbacks; private _registerCallback; private _unregisterCallback; private _updateCallbacks; } export {};