@glowjs/core
Version:
GlowJS数字孪生引擎核心库。
163 lines (162 loc) • 3.62 kB
TypeScript
import { RunTime, Scene } from '../runtime';
import { Entity } from '../entity/Entity';
import { CameraMgr } from '../camera/CameraMgr';
import { EffectMgr } from '../effect/EffectMgr';
import { EventDispatcher } from '../event/EventDispatcher';
import { EventMgr } from '../event/EventMgr';
import { GUIMgr } from '../gui/GUIMgr';
import { LevelMgr } from '../entity/LevelMgr';
import { ResPool } from '../res/ResPool';
import { AppOptions } from './AppOptions';
import { Size } from './Size';
import { MaterialMgr } from '../material/MaterialMgr';
import { EntityType } from '../entity/EntityType';
import { Component } from '../entity/component/Component';
import { Tracker } from '../entity/Tracker';
import { PipelineMgr } from '../pipeline/PipelineMgr';
import { PostProcessMgr } from '../postprocess/PostProcessMgr';
/**
* 应用
*/
export declare class App extends EventDispatcher {
/**
* 加载并行限制,0表示不限制,可影响场景加载速度
*/
static loadLimit: number;
private _cursor;
version: string;
/**
* 是否编辑器模式
*/
_isEditor: boolean;
/**
* 实体字典
*/
_entityMap: Map<string, Entity>;
/**
* 所有组件对象
*/
readonly allComponents: Component[];
/**
* 场景
*/
_scene: Scene;
/**
* DOM容器
*/
container: HTMLDivElement;
/**
* 富文本容器
*/
richContainer: HTMLDivElement;
/**
* 根路径
*/
readonly basePath: string;
/**
* 项目文件地址
*/
projectFile: string;
/**
* 授权文件地址
*/
licenseFile: string;
/**
* 画布大小
*/
size: Size;
/**
* 画布
*/
canvas: HTMLCanvasElement;
/**
* 运行时
*/
runTime: RunTime;
/**
* 材质管理器
*/
materialMgr: MaterialMgr;
/**
* 相机管理器
*/
cameraMgr: CameraMgr;
/**
* 效果管理器
*/
effectMgr: EffectMgr;
/**
* 资源池
*/
resPool: ResPool;
/**
* 层级管理器
*/
levelMgr: LevelMgr;
/**
* GUI管理器
*/
guiMgr: GUIMgr;
/**
* 事件管理器
*/
eventMgr: EventMgr;
/**
* 管道管理器
*/
pipelineMgr: PipelineMgr;
/**
* 后处理管理器
*/
postProcessMgr: PostProcessMgr;
/**
* 跟踪器
*/
tracker: Tracker;
/**
* 是否已加载
*/
loaded: boolean;
/**
* 选项
*/
options: AppOptions;
/**
* 是否为移动端
*/
readonly isMobile: boolean;
/**
* 实例化一个应用对象
* @param options 选项
*/
constructor(options: AppOptions);
/**
* 获取或设置指针样式(与CSS一致)
*/
get cursor(): string;
set cursor(value: string);
/**
* 注册默认事件
* @param levelBack 是否注册层级后退事件,默认true
*/
registerDefaultEvents(levelBack?: boolean): void;
/**
* 加载项目
*/
load(): Promise<void>;
/**
* 根据ID获取实体对象
* @param id 实体ID
* @returns 实体对象
*/
getEntityById(id: string): Entity | undefined;
/**
* 创建实体
* @param type 实体类型
*/
create(type: EntityType | string): Entity;
/**
* 释放
*/
dispose(): void;
}