UNPKG

@glowjs/core

Version:

GlowJS数字孪生引擎核心库。

73 lines (72 loc) 1.98 kB
import { Base } from "../base/Base"; import { App } from "../core/App"; import { ParticleData } from "../effect/ParticleData"; import { InstantiatedEntries, NodeMaterial, Texture } from "../runtime"; import { ResCacheData } from "./ResCacheData"; import { ResOptions } from "./ResOptions"; /** * 资源池 */ export declare class ResPool extends Base { /** * 资源列表 */ readonly resList: ResOptions[]; _cacheVertices: number; /** * 缓存 */ _cache: Map<string, ResCacheData>; /** * 加载中的资源列表 */ private _locked; /** * 实例化一个资源池对象 * @param app 应用 */ constructor(app: App); /** * 判断指定编号的的资源是否已缓存 * @param id 编号 */ isCached(id: string): boolean; /** * 获取资源信息 * @param index 索引或资源编号 */ getResInfo(index: number | string): ResOptions; /** * 获取资源编号 * @param index 索引 */ getResId(index: number): string | undefined; /** * 获取资源索引 * @param id 编号 */ getResIndex(id: string): number | undefined; /** * 加载指定资源 * @param id 编号 */ _loadRes(info: ResOptions): Promise<void>; /** * 获取指定资源 * @param id 编号 * @param optimized 是否优化网格 * @param archiveGrid 是否包含档案格 */ getRes(id: string, optimized?: boolean, archiveGrid?: boolean): Promise<Texture | InstantiatedEntries | NodeMaterial | any>; private _cloneEntires; private _loadModel; private _getTexture; private _loadMaterial; private _loadParticle; private _getResType; /** * 获取粒子默认数据(仅用于编辑器) * @param id 编号 */ getDefaultParticleData(id: string): Promise<ParticleData>; }