## Type aliases

### RaycastDesc

Ƭ **RaycastDesc**: `Object`

raycast函数的参数。

**`field`** origin 射线起点。

**`field`** unitDir 射线方向（单位向量）。

**`field`** distance 射线的最大长度。

**`field`** hit 用来接收碰撞信息的容器。

**`field`** layerMask 可以用来屏蔽一些物体。

**`field`** （未实现）queryTriggerInteraction，是否能与Trigger相交（默认能）。

#### Type declaration

| Name | Type |
| :------ | :------ |
| `distance?` | `number` |
| `hit?` | [`RaycastHit`](classes/RaycastHit) |
| `layerMask?` | `number` |
| `origin` | [`Vector3`](classes/Vector3) |
| `unitDir` | [`Vector3`](classes/Vector3) |

___

### TCameraBackground

Ƭ **TCameraBackground**: ``"default"`` \| ``"skybox"`` \| ``"ar"``

相机背景渲染模式。

`default`模式只执行默认清屏。
`skybox`模式配合[Env](classes/Env)组件使用。
`ar`模式配合[ARSystem](classes/ARSystem)使用。

___

### TDirection

Ƭ **TDirection**: ``"forwards"`` \| ``"backwards"`` \| ``"both"``

动画播放的方向，如果是`both`，则会在`loop`开启时的每次循环中自动反转。

___

### TEventCallback

Ƭ **TEventCallback**: (`params`: `TParams`, `sender`: `Element`) => `void`

#### Type parameters

| Name |
| :------ |
| `TParams` |

#### Type declaration

▸ (`params`, `sender`): `void`

事件管理器的回调。

##### Parameters

| Name | Type |
| :------ | :------ |
| `params` | `TParams` |
| `sender` | `Element` |

##### Returns

`void`

___

### TTrackMode

Ƭ **TTrackMode**: ``"Plane"`` \| ``"Marker"`` \| ``"OSD"`` \| ``"Face"`` \| ``"Hand"`` \| ``"Body"`` \| ``"threeDof"``

[ARSystem](classes/ARSystem)和[ARTracker](classes/ARTracker)的跟踪模式。
其中`threeDof`需要基础库`2.30.4`以上支持。

___

### Texture

Ƭ **Texture**: `Kanata.Texture`

___

### UniformBlock

Ƭ **UniformBlock**: `Kanata.UniformBlock`

___

### UniformDescriptor

Ƭ **UniformDescriptor**: `Kanata.UniformDescriptor`

___

### VertexLayout

Ƭ **VertexLayout**: `Kanata.VertexLayout`

## Variables

### ARSystemSchema

• **ARSystemSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[ARSystem](classes/ARSystem)的`schema`，详见[IARSystemData](interfaces/IARSystemData)。

___

### ARTrackSchema

• **ARTrackSchema**: `Object`

[ARTracker](classes/ARTracker)的`schema`，详见[IARTrackerData](interfaces/IARTrackerData)。

#### Type declaration

| Name | Type |
| :------ | :------ |
| `autoSync` | { `type`: `string` = 'number-array' } |
| `autoSync.type` | `string` |
| `image` | { `type`: `string` = 'image' } |
| `image.type` | `string` |
| `mode` | { `type`: `string` = 'string' } |
| `mode.type` | `string` |
| `src` | { `type`: `string` = 'string' } |
| `src.type` | `string` |

___

### ARTrackerDataMapping

• **ARTrackerDataMapping**: { `auto-sync`: `string`[] ; `hit-id`: `string`[] ; `image`: `string`[] ; `mode`: `string`[] ; `src`: `string`[]  } & { `layer`: `string`[] ; `node-id`: `string`[] ; `position`: `string`[] ; `rotation`: `string`[] ; `scale`: `string`[] ; `visible`: `string`[]  } & { `[key: string]`: `string`[];  }

默认包含[XRNode](classes/XRNode)的所有属性映射，以及将[ARTracker](classes/ARTracker)组件的属性进行映射。

___

### ARTrackerDefaultComponents

• **ARTrackerDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[XRNode](classes/XRNode)的所有默认组件，以及[ARTracker](classes/ARTracker)组件。

___

### AnimatorSchema

• **AnimatorSchema**: `Object`

[Animator](classes/Animator)的`schema`定义。

**`see`** 解析后的接口详见 [IAnimatorData](interfaces/IAnimatorData)

#### Type declaration

| Name | Type |
| :------ | :------ |
| `autoPlay` | { `type`: `string` = 'dict' } |
| `autoPlay.type` | `string` |
| `clipMap` | { `type`: `string` = 'dict' } |
| `clipMap.type` | `string` |
| `keyframe` | { `type`: `string` = 'keyframe' } |
| `keyframe.type` | `string` |

___

### AssetLoadDataMapping

• **AssetLoadDataMapping**: { `asset-id`: `string`[] ; `defer`: `string`[] ; `options`: `string`[] ; `src`: `string`[] ; `type`: `string`[]  } & { `[key: string]`: `string`[];  }

将[AssetLoad](classes/AssetLoad)组件的属性进行映射。

___

### AssetLoadSchema

• **AssetLoadSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[AssetLoad](classes/AssetLoad)的`schema`，详见{@link IAssetLoadData}。

___

### AssetMaterialDataMapping

• **AssetMaterialDataMapping**: { `asset-id`: `string`[] ; `effect`: `string`[] ; `env-data`: `string`[] ; `marcos`: `string`[] ; `render-queue`: `string`[] ; `states`: `string`[] ; `uniforms`: `string`[]  } & { `[key: string]`: `string`[];  }

将[AssetMaterial](classes/AssetMaterial)的属性进行映射。

___

### AssetMaterialDefaultComponents

• **AssetMaterialDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

___

### AssetMaterialSchema

• **AssetMaterialSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[AssetMaterial](classes/AssetMaterial)的`schema`，详见[IAssetMaterialData](interfaces/IAssetMaterialData)。

___

### AssetPostProcessDataMapping

• **AssetPostProcessDataMapping**: { `asset-id`: `string`[] ; `data`: `string`[] ; `is-hdr`: `string`[] ; `type`: `string`[]  } & { `[key: string]`: `string`[];  }

将[AssetPostProcess](classes/AssetPostProcess)的属性进行映射。

___

### AssetPostProcessDefaultComponents

• **AssetPostProcessDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

___

### AssetRenderTextureDataMapping

• **AssetRenderTextureDataMapping**: { `asset-id`: `string`[] ; `height`: `string`[] ; `is-hdr`: `string`[] ; `width`: `string`[]  } & { `[key: string]`: `string`[];  }

将[AssetRenderTexture](classes/AssetRenderTexture)的属性进行映射。

___

### AssetRenderTextureDefaultComponents

• **AssetRenderTextureDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

___

### AssetRenderTextureSchema

• **AssetRenderTextureSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[AssetRenderTexture](classes/AssetRenderTexture)的`schema`，详见[IAssetRenderTextureData](interfaces/IAssetRenderTextureData)。

___

### AssetsDefaultComponents

• **AssetsDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[Assets](classes/Assets)组件。

___

### AssetsSchema

• **AssetsSchema**: [`IComponentSchema`](interfaces/IComponentSchema) = `{}`

___

### BasicDataMapping

• **BasicDataMapping**: `Object`

空的默认组件映射。

#### Index signature

▪ [key: `string`]: `string`[]

___

### BasicDefaultComponents

• **BasicDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents) = `{}`

空的默认组件集。

___

### CameraDataMapping

• **CameraDataMapping**: { `allow-features`: `string`[] ; `background`: `string`[] ; `clear-color`: `string`[] ; `clear-depth`: `string`[] ; `clear-stencil`: `string`[] ; `cull-mask`: `string`[] ; `depth`: `string`[] ; `far`: `string`[] ; `fov`: `string`[] ; `is-ar-camera`: `string`[] ; `is-clear-color`: `string`[] ; `is-clear-depth`: `string`[] ; `is-clear-stencil`: `string`[] ; `is-perspective`: `string`[] ; `near`: `string`[] ; `orth-size`: `string`[] ; `post-process`: `string`[] ; `render-target`: `string`[] ; `target`: `string`[]  } & { `layer`: `string`[] ; `node-id`: `string`[] ; `position`: `string`[] ; `rotation`: `string`[] ; `scale`: `string`[] ; `visible`: `string`[]  } & { `[key: string]`: `string`[];  }

默认包含[XRNode](classes/XRNode)的所有属性映射，以及将[Camera](classes/Camera)组件的属性进行映射。

___

### CameraDefaultComponents

• **CameraDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[XRNode](classes/XRNode)的所有默认组件，以及[Camera](classes/Camera)组件。

___

### CameraOrbitControlSchema

• **CameraOrbitControlSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[CameraOrbitControl](classes/CameraOrbitControl)的`schema`，详见[ICameraOrbitControlData](interfaces/ICameraOrbitControlData)。

___

### CameraSchema

• **CameraSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[Camera](classes/Camera)的`schema`，详见[ICameraData](interfaces/ICameraData)。

___

### CapsuleShapeSchema

• **CapsuleShapeSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

___

### CubeShapeSchema

• **CubeShapeSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

___

### EnvDataMapping

• **EnvDataMapping**: { `diffuse-exp`: `string`[] ; `env-data`: `string`[] ; `is-sky2d`: `string`[] ; `rotation`: `string`[] ; `sky-map`: `string`[] ; `specular-exp`: `string`[]  } & { `[key: string]`: `string`[];  }

默认将[Env](classes/Env)组件的属性进行映射。

___

### EnvDefaultComponents

• **EnvDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[Env](classes/Env)组件。

___

### EnvSchema

• **EnvSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[Env](classes/Env)的`schema`，详见[IEnvData](interfaces/IEnvData)。

___

### GLTFDataMapping

• **GLTFDataMapping**: { `cast-shadow`: `string`[] ; `model`: `string`[] ; `never-cull`: `string`[] ; `receive-shadow`: `string`[] ; `states`: `string`[]  } & { `layer`: `string`[] ; `node-id`: `string`[] ; `position`: `string`[] ; `rotation`: `string`[] ; `scale`: `string`[] ; `visible`: `string`[]  } & { `[key: string]`: `string`[];  }

默认包含[XRNode](classes/XRNode)的所有属性映射，以及将[GLTF](classes/GLTF)组件的属性进行映射。

+ model → {@link IGLTFComponentData.model}
+ cast-shadow → {@link IGLTFComponentData.castShadow}
+ receive-shadow → {@link IGLTFComponentData.receiveShadow}

___

### GLTFDefaultComponents

• **GLTFDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[XRNode](classes/XRNode)的所有默认组件，以及[GLTF](classes/GLTF)组件。

___

### GLTFSchema

• **GLTFSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

___

### LightDataMapping

• **LightDataMapping**: { `cast-shadow`: `string`[] ; `color`: `string`[] ; `inner-cone-angle`: `string`[] ; `intensity`: `string`[] ; `outer-cone-angle`: `string`[] ; `range`: `string`[] ; `shadow-bias`: `string`[] ; `shadow-distance`: `string`[] ; `shadow-strength`: `string`[] ; `type`: `string`[]  } & { `layer`: `string`[] ; `node-id`: `string`[] ; `position`: `string`[] ; `rotation`: `string`[] ; `scale`: `string`[] ; `visible`: `string`[]  } & { `[key: string]`: `string`[];  }

默认包含[XRNode](classes/XRNode)的所有属性映射，以及将[Light](classes/Light)组件的属性进行映射。

___

### LightDefaultComponents

• **LightDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[XRNode](classes/XRNode)的所有默认组件，以及[Light](classes/Light)组件。

___

### LightSchema

• **LightSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[Light](classes/Light)的`schema`，详见[ILightData](interfaces/ILightData)。

___

### MeshDataMapping

• **MeshDataMapping**: { `cast-shadow`: `string`[] ; `env-data`: `string`[] ; `geometry`: `string`[] ; `material`: `string`[] ; `never-cull`: `string`[] ; `receive-shadow`: `string`[] ; `states`: `string`[] ; `uniforms`: `string`[]  } & { `layer`: `string`[] ; `node-id`: `string`[] ; `position`: `string`[] ; `rotation`: `string`[] ; `scale`: `string`[] ; `visible`: `string`[]  } & { `[key: string]`: `string`[];  }

默认包含[XRNode](classes/XRNode)的所有属性映射，以及将[Mesh](classes/Mesh)组件的属性进行映射。

___

### MeshDefaultComponents

• **MeshDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[XRNode](classes/XRNode)的所有默认组件，以及[Mesh](classes/Mesh)组件。

___

### MeshSchema

• **MeshSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[Mesh](classes/Mesh)的`schema`，详见[IMeshData](interfaces/IMeshData)。

___

### MeshShapeSchema

• **MeshShapeSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

___

### NodeDataMapping

• **NodeDataMapping**: { `layer`: `string`[] ; `node-id`: `string`[] ; `position`: `string`[] ; `rotation`: `string`[] ; `scale`: `string`[] ; `visible`: `string`[]  } & { `[key: string]`: `string`[];  }

默认将[Transform](classes/Transform)组件的属性进行映射。

___

### NodeDefaultComponents

• **NodeDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[Transform](classes/Transform)组件。

___

### ParticleDataMapping

• **ParticleDataMapping**: `Object`

#### Index signature

▪ [key: `string`]: `string`[]

___

### ParticleDefaultComponents

• **ParticleDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

___

### ParticleSchema

• **ParticleSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[Particle](classes/Particle)的`schema`定义。

**`see`** 解析后的接口详见 [IParticleData](interfaces/IParticleData)

___

### RenderSystemSchema

• **RenderSystemSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[RenderSystem](classes/RenderSystem)的`schema`，详见[IRenderSystemData](interfaces/IRenderSystemData)。

___

### RigidbodySchema

• **RigidbodySchema**: `Object`

#### Type declaration

| Name | Type |
| :------ | :------ |
| `constraintsMask` | { `type`: `string` = 'number' } |
| `constraintsMask.type` | `string` |
| `disabled` | { `type`: `string` = 'boolean' } |
| `disabled.type` | `string` |
| `kinematic` | { `type`: `string` = 'boolean' } |
| `kinematic.type` | `string` |
| `mass` | { `type`: `string` = 'number' } |
| `mass.type` | `string` |
| `useGravity` | { `type`: `string` = 'boolean' } |
| `useGravity.type` | `string` |

___

### SceneDataMapping

• **SceneDataMapping**: `Object` = `{}`

场景的默认映射。

#### Index signature

▪ [key: `string`]: `string`[]

___

### SceneDefaultComponents

• **SceneDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

场景的默认组件，均为系统。

___

### ShadowDataMapping

• **ShadowDataMapping**: { `layer`: `string`[] ; `node-id`: `string`[] ; `position`: `string`[] ; `rotation`: `string`[] ; `scale`: `string`[] ; `visible`: `string`[]  } & { `[key: string]`: `string`[];  }

默认包含[XRNode](classes/XRNode)的所有属性映射。

___

### ShadowDefaultComponents

• **ShadowDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

默认包含[XRNode](classes/XRNode)的所有默认组件。

___

### ShapeInteractSchema

• **ShapeInteractSchema**: `Object`

#### Type declaration

| Name | Type |
| :------ | :------ |
| `bounciness` | { `type`: `string` = 'number' } |
| `bounciness.type` | `string` |
| `collide` | { `type`: `string` = 'boolean' } |
| `collide.type` | `string` |
| `disabled` | { `type`: `string` = 'boolean' } |
| `disabled.type` | `string` |
| `dynamicFriction` | { `type`: `string` = 'number' } |
| `dynamicFriction.type` | `string` |
| `staticFriction` | { `type`: `string` = 'number' } |
| `staticFriction.type` | `string` |

___

### SphereShapeSchema

• **SphereShapeSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

___

### TextDataMapping

• **TextDataMapping**: `Object`

#### Index signature

▪ [key: `string`]: `string`[]

___

### TextDefaultComponents

• **TextDefaultComponents**: [`IEntityComponents`](interfaces/IEntityComponents)

___

### TextSchema

• **TextSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

___

### TransformSchema

• **TransformSchema**: [`IComponentSchema`](interfaces/IComponentSchema)

[Transform](classes/Transform)的`schema`，详见[ITransformData](interfaces/ITransformData)。

___

### noneParamsEaseFuncs

• **noneParamsEaseFuncs**: `Object`

不需要自定义参数的一些内置插值曲线。

#### Type declaration

| Name | Type |
| :------ | :------ |
| `ease-in` | (`x`: `number`) => `number` |
| `ease-in-back` | (`x`: `any`) => `number` |
| `ease-in-bounce` | (`x`: `any`) => `number` |
| `ease-in-circ` | (`x`: `any`) => `number` |
| `ease-in-cubic` | (`x`: `any`) => `number` |
| `ease-in-elastic` | (`x`: `any`) => `number` |
| `ease-in-expo` | (`x`: `any`) => `number` |
| `ease-in-out` | (`x`: `number`) => `number` |
| `ease-in-out-back` | (`x`: `any`) => `number` |
| `ease-in-out-bounce` | (`x`: `any`) => `number` |
| `ease-in-out-circ` | (`x`: `any`) => `number` |
| `ease-in-out-cubic` | (`x`: `any`) => `number` |
| `ease-in-out-elastic` | (`x`: `any`) => `number` |
| `ease-in-out-expo` | (`x`: `any`) => `number` |
| `ease-in-out-quad` | (`x`: `any`) => `number` |
| `ease-in-out-quart` | (`x`: `any`) => `number` |
| `ease-in-out-quint` | (`x`: `any`) => `number` |
| `ease-in-out-sine` | (`x`: `any`) => `number` |
| `ease-in-quad` | (`x`: `any`) => `number` |
| `ease-in-quart` | (`x`: `any`) => `number` |
| `ease-in-quint` | (`x`: `any`) => `number` |
| `ease-in-sine` | (`x`: `any`) => `number` |
| `ease-out` | (`x`: `number`) => `number` |
| `ease-out-back` | (`x`: `any`) => `number` |
| `ease-out-bounce` | `TEaseFunction` |
| `ease-out-circ` | (`x`: `any`) => `number` |
| `ease-out-cubic` | (`x`: `any`) => `number` |
| `ease-out-elastic` | (`x`: `any`) => `number` |
| `ease-out-expo` | (`x`: `any`) => `number` |
| `ease-out-quad` | (`x`: `any`) => `number` |
| `ease-out-quart` | (`x`: `any`) => `number` |
| `ease-out-quint` | (`x`: `any`) => `number` |
| `ease-out-sine` | (`x`: `any`) => `number` |
| `linear` | (`x`: `any`) => `any` |

___

### useParamsEaseFuncs

• **useParamsEaseFuncs**: `Object`

可以自定义参数的插值函数。

#### Type declaration

| Name | Type |
| :------ | :------ |
| `cubic-bezier` | (`times`: `number`[], `params`: `number`[]) => (`x`: `number`) => `number` |
| `steps` | (`times`: `number`[], `params`: `number`[]) => (`x`: `number`) => `number` |

## Functions

### genLspMeta

▸ **genLspMeta**(`scene`): `IXRFrameMeta`

#### Parameters

| Name | Type |
| :------ | :------ |
| `scene` | [`Scene`](classes/Scene) |

#### Returns

`IXRFrameMeta`

___

### isTextureWrapper

▸ **isTextureWrapper**(`value`): value is ITextureWrapper

#### Parameters

| Name | Type |
| :------ | :------ |
| `value` | `any` |

#### Returns

value is ITextureWrapper

___

### registerAssetLoader

▸ **registerAssetLoader**(`type`, `clz`): `void`

注册一个资源加载器。注意注册后该`type`会被自动注册到DataValue中：registerDataValue。
在基础库版本**v2.29.2**以上导出。

#### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `type` | `string` | 类型，也是写在[AssetLoad](classes/AssetLoad)上的那个`type`。 |
| `clz` | (`scene`: [`Scene`](classes/Scene), `type`: `string`) => [`AssetLoader`](classes/AssetLoader) | 继承自[AssetLoader](classes/AssetLoader)的自定义资源加载器类。 |

#### Returns

`void`

___

### registerComponent

▸ **registerComponent**(`type`, `clz`): `void`

向系统中注册一个组件，然后可以在`xml`中使用。

#### Parameters

| Name | Type |
| :------ | :------ |
| `type` | `string` |
| `clz` | () => [`Component`](classes/Component) |

#### Returns

`void`

___

### registerDataValue

▸ **registerDataValue**(`type`, `handler`): `void`

为组件在`xml`中写的属性值按类型注册解析器，由于`xml`传入的值全部都是字符串，所以需要解析，比如：
```ts
registerDataValue('number', {create: (value: string, defaultValue: any, scene: Scene) => {
  return value === undefined ? defaultValue : parseFloat(value));
}});
```
就是注册了`number`类型，后续在组件的`schema`中写的`number`类型数据，就会走这个解析器。
**注意最后一个参数`scene`可以用于获取资源等，比如`scene.assets.getAssetWithState(type, value, defaultValue)`。**
**如果是被资源加载器加载的资源，则会在资源加载器注册时自动注册数据类型，详见[AssetLoader](classes/AssetLoader)**。

已经注册的类型可见[组件数据解析](/miniprogram/dev/reference/xr-frame/component/core/data-values)。

#### Type parameters

| Name |
| :------ |
| `TDataValue` |

#### Parameters

| Name | Type |
| :------ | :------ |
| `type` | `string` |
| `handler` | [`IDataValueHandler`](interfaces/IDataValueHandler) |

#### Returns

`void`

___

### registerEffect

▸ `Const` **registerEffect**(`id`, `factory`): `void`

注册`Effect`资源。

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `factory` | (`scene`: [`Scene`](classes/Scene)) => [`Effect`](classes/Effect) |

#### Returns

`void`

___

### registerElement

▸ **registerElement**(`type`, `clz`): `void`

注册一个自定义元素。
注意注册的`type`在`xml`中使用时需要加上`xr-`前缀，比如注册`custom`类型的元素，使用时需要时`xr-custom`。

#### Parameters

| Name | Type |
| :------ | :------ |
| `type` | `string` |
| `clz` | typeof [`Element`](classes/Element) |

#### Returns

`void`

___

### registerGeometry

▸ `Const` **registerGeometry**(`id`, `factory`): `void`

注册`Geometry`资源。

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `factory` | (`scene`: [`Scene`](classes/Scene)) => [`Geometry`](classes/Geometry) |

#### Returns

`void`

___

### registerMaterial

▸ `Const` **registerMaterial**(`id`, `factory`): `void`

注册`Material`资源。

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `factory` | (`scene`: [`Scene`](classes/Scene)) => [`Material`](classes/Material) |

#### Returns

`void`

___

### registerTexture

▸ `Const` **registerTexture**(`id`, `factory`): `void`

注册`Texture`资源。

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `factory` | (`scene`: [`Scene`](classes/Scene)) => `default` |

#### Returns

`void`

___

### registerUniformDesc

▸ `Const` **registerUniformDesc**(`id`, `factory`): `void`

注册`UniformDescriptor`资源。

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `factory` | (`scene`: [`Scene`](classes/Scene)) => `default` |

#### Returns

`void`

___

### registerVertexDataDesc

▸ `Const` **registerVertexDataDesc**(`id`, `factory`): `void`

注册`VertexDataDescriptor`资源。

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `factory` | (`scene`: [`Scene`](classes/Scene)) => `default` |

#### Returns

`void`

___

### registerVertexLayout

▸ `Const` **registerVertexLayout**(`id`, `factory`): `void`

注册`VertexLayout`资源。

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `factory` | (`scene`: [`Scene`](classes/Scene)) => `default` |

#### Returns

`void`
