import Loader from "./Loader"; import Scene from "./Scene"; import ModelContainer from "./ModelContainer"; import Entity from "./Entity"; import Resource from "./Resource"; /** * シーンの読み込み */ declare class SceneLoader extends Loader { private _glenv; private _finished; private _references; /** * url で指定したシーンデータの読み込みを開始し、scene にエンティティを構築する。 * 読み込みが終了したとき options.callback を呼び出す。 * @param scene 読み込み先のシーン * @param resource シーンリソース * @param options オプション集合 */ constructor(scene: Scene, resource: string | Resource, options?: SceneLoader.Option); /** * オブジェクト参照を取得 * * 注意: シーンの読み込みが終了したことを確認してからこのメソッドを呼び出すこと。 * @param id 識別子 * @return オブジェクト */ getReference(id: string): ModelContainer | Entity | null; /** * オブジェクト参照を設定 * * オブジェクト item を識別子 id で参照できるように this に設定する。 * @param id 識別子 * @param item オブジェクト */ private _setReference; /** * 読み込み処理の実態。継承クラスによって実装される。 */ protected _load(): Promise; /** * JSON シーンオブジェクトを解析 */ private _load_object; /** * 残りのオブジェクトを読み込む */ private _postload_object; /** * */ private _load_model_register; /** * */ private _load_model_container; /** * */ private _load_entity_list; } declare namespace SceneLoader { interface Option { /** リソース要求変換関数 */ transform?: Resource.TransformCallback; /** エンティティコールバック */ onEntity?: Loader.EntityCallback; /** 終了コールバック関数 */ callback?: Loader.FinishCallback; } interface SceneJson { model_register: ModelRegisterJson; entity_list: Entity.Json[]; } interface ModelRegisterJson { [id: string]: ModelContainer; } interface OffsetTransformJson { translate: [x: number, y: number, z: number]; scale?: [x: number, y: number, z: number]; heading: number; tilt: number; roll: number; } const _defaultHeaders: {}; } export default SceneLoader; //# sourceMappingURL=SceneLoader.d.ts.map