跳到主要内容

Resources

Ploy3D / Resources

Class: Resources

资源管理器。

Table of contents

Constructors

Accessors

Methods

Constructors

constructor

new Resources()

构造函数。

Accessors

serverUrl

get serverUrl(): any

资源包存储库路径。

Returns

any

Methods

AutoGC

AutoGC(release): void

令资源自动回收。 资源创建会产生资源引用、创建者持有该引用。我们需要释放该引用,释放引用可能并不会令资源立即释放,资源实际释放时会清除资源实例指针并标记资源已被释放。 我们释放以下资源引用:材质、网格、贴图、蒙皮数据、G3数据,动画控制器、动画组件。

Parameters

NameTypeDescription
release() => void资源引用释放方法。

Returns

void


CreateCollider

CreateCollider(desc): Promise<Collider>

运行时异步创建碰撞组件。

Parameters

NameTypeDescription
descAsset_instance_collider碰撞组件构造信息。

Returns

Promise<Collider>

返回异步对象。


CreateMaterial

CreateMaterial(shader, flags): Promise<Material>

运行时异步创建材质。

Parameters

NameTypeDescription
shaderstring内置着色器名称。
flagsnumber-

Returns

Promise<Material>

返回异步对象。


CreateMesh

CreateMesh(creater): Promise<Mesh>

运行时异步创建网格。

Parameters

NameTypeDescription
createrAsset_mesh_creater网格构造器信息。

Returns

Promise<Mesh>

返回异步对象。


CreateMeshRenderer

CreateMeshRenderer(_union): Promise<MeshRenderer>

运行时异步创建网格渲染器。

Parameters

NameTypeDescription
_unionMeshRenderer_union网格渲染器资源联合体。

Returns

Promise<MeshRenderer>

返回异步对象。


CreateObject

CreateObject(name): Promise<Object3D>

运行时异步创建3D对象。

Parameters

NameTypeDescription
namestring名称。

Returns

Promise<Object3D>

返回异步对象。


CreateTexture2D

CreateTexture2D(url, has_alpha): Promise<Texture2D>

运行时异步创建2D贴图。

Parameters

NameTypeDescription
urlstring图像绝对路径(仅支持.ktx2、.png、.jpg后缀)。
has_alphaboolean是否装载透明度通道。

Returns

Promise<Texture2D>

返回异步对象。


Free

Free(id): void

释放实例,回收ID。 蒙皮数据、G3统一缓存随网格渲染器释放; 动画片段实例、动画控制器、动画组件随对象释放; 对没有骨骼蒙皮的网格渲染器进行缓存共享,对动画片段数据进行缓存共享,释放此类数据时需要擦除缓存;

Parameters

NameType
idnumber

Returns

void


GC

GC(): void

将在适当时机释放资源引用。

Returns

void


GetByID

GetByID<T>(classid, id): T

根据实例ID获取资源实例。

Type parameters

NameType
Textends Resource<T>

Parameters

NameTypeDescription
classidClassID资源类型。
idnumber实例ID。

Returns

T


GetByPTR

GetByPTR<T>(classid, ptr): T

根据指针获取托管资源实例(非托管资源返回空,没有实例ID的资源为非托管资源)。

Type parameters

NameType
Textends Resource<T>

Parameters

NameTypeDescription
classidClassID资源类型。
ptrio_ptr资源实例内部指针。

Returns

T


Init

Init(): Promise<Resources>

初始化资源管理器。

Returns

Promise<Resources>

异步对象。


Load

Load<T>(uri): Promise<T>

异步装载资源。

Type parameters

NameType
Textends Resource<T>

Parameters

NameTypeDescription
uristring资源URI。

Returns

Promise<T>

返回异步对象。


Map

Map<T>(classid, ptr, func): void

使用映射的方式对资源实例进行读写(一般用于非托管资源读写)。

Type parameters

NameType
Textends Resource<T>

Parameters

NameTypeDescription
classidClassID-
ptrio_ptr资源实例内部指针。
func(instance: T) => void映射实例返回函数,在此函数读写实例。

Returns

void


Shutdown

Shutdown(): Promise<any>

注销方法。

Returns

Promise<any>


Status

Status(final): any

资源库状态统计。

Parameters

NameType
finalboolean

Returns

any

返回统计数据。