@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
43 lines (35 loc) • 1.59 kB
TypeScript
import ConcurrentExecutor from "../core/process/executor/ConcurrentExecutor";
import View from "../view/View";
import {AssetManager} from "./asset/AssetManager";
import {EntityManager} from "./ecs/EntityManager";
import {GraphicsEngine} from "./graphics/GraphicsEngine";
import KeyboardDevice from "./input/devices/KeyboardDevice";
import {PointerDevice} from "./input/devices/PointerDevice";
import {EnginePlatform} from "./platform/EnginePlatform";
import {EnginePluginManager} from "./plugin/EnginePluginManager";
import SceneManager from "./scene/SceneManager";
import Ticker from "./simulation/Ticker";
import SoundEngine from "./sound/SoundEngine";
import GUIEngine from "./ui/GUIEngine";
export interface IEngineInitializationOptions {
entityManager?: EntityManager,
enableAudio?: boolean
enableGraphics?: boolean
debug?:boolean
}
export default class Engine {
constructor(platform: EnginePlatform, options?: IEngineInitializationOptions);
readonly viewStack: View
readonly gui:GUIEngine
public readonly entityManager: EntityManager
public readonly sceneManager: SceneManager
public readonly sound: SoundEngine
public readonly graphics: GraphicsEngine
public readonly devices: { keyboard: KeyboardDevice, pointer: PointerDevice }
public readonly assetManager: AssetManager<Engine>
public readonly ticker: Ticker
public readonly plugins: EnginePluginManager
public readonly executor: ConcurrentExecutor
public start(): Promise<any>
public stop(): Promise<any>
}