1
This commit is contained in:
38
public/docs/model-material.md
Normal file
38
public/docs/model-material.md
Normal file
@ -0,0 +1,38 @@
|
||||
# 模型热更新与材质切换
|
||||
|
||||
## 模型热加载 / 销毁 / 替换
|
||||
```ts
|
||||
// 加载
|
||||
await sdk.model.load({ id: 'car', url: '/models/car.glb', draco: true })
|
||||
|
||||
// 销毁
|
||||
await sdk.model.destroy('car')
|
||||
|
||||
// 替换(内部自动销毁旧实例并加载新实例)
|
||||
await sdk.model.replace('car', { url: '/models/car-white.glb' })
|
||||
```
|
||||
|
||||
监听状态:
|
||||
```ts
|
||||
sdk.model.on('loaded', handler)
|
||||
sdk.model.on('replaced', handler)
|
||||
sdk.model.on('destroyed', handler)
|
||||
```
|
||||
|
||||
## 材质切换
|
||||
```ts
|
||||
// 应用材质预设
|
||||
sdk.material.apply({
|
||||
target: 'body', // 部件或分组名称
|
||||
material: 'paint/blue', // 预设 Key
|
||||
})
|
||||
|
||||
// 批量切换
|
||||
sdk.material.batch([
|
||||
{ target: 'wheel', material: 'rim/chrome' },
|
||||
{ target: 'glass', material: 'glass/clear' },
|
||||
])
|
||||
|
||||
// 还原默认材质
|
||||
sdk.material.reset('body')
|
||||
```
|
||||
Reference in New Issue
Block a user