事件
通过模型实例的 on 方法来监听模型事件.
生命周期
从调用 load() 到调用 destroy(),模型会经历以下生命周期,每个阶段都有对应的事件可以监听:
事件列表
tap
tap: (
areaName:string) =>void
用户点击 canvas 且命中 hit area 时触发,areaName 为命中的区域名称
参数:
| 参数名 | 类型 |
|---|---|
areaName | string |
返回值类型: void
loadstart
loadstart: (
total:number) =>void
调用 load() 后,模型文件开始下载前触发,total 为需要加载的文件总数
参数:
| 参数名 | 类型 |
|---|---|
total | number |
返回值类型: void
loadprogress
loadprogress: (
loaded:number,total:number,file:string) =>void
每个文件下载完成时触发
参数:
| 参数名 | 类型 |
|---|---|
loaded | number |
total | number |
file | string |
返回值类型: void
loaded
loaded: () =>
void
所有资源下载完毕、模型初始化完成并开始首帧渲染时触发
返回值类型: void
expressionchange
expressionchange: (
id:string) =>void
调用 setExpression() 后立即触发,id 为切换目标的表情 ID
参数:
| 参数名 | 类型 |
|---|---|
id | string |
返回值类型: void
motionstart
motionstart: (
group:string,index:number,duration:number,file:string|null) =>void
调用 playMotion() 或随机动作被触发后,动作开始播放时触发
参数:
| 参数名 | 类型 |
|---|---|
group | string |
index | number |
duration | number |
file | string | null |
返回值类型: void
motionend
motionend: (
group:string,index:number,file:string|null) =>void
当前动作播放完毕时触发
参数:
| 参数名 | 类型 |
|---|---|
group | string |
index | number |
file | string | null |
返回值类型: void
destroy
destroy: () =>
void
调用 destroy() 后,WebGL 资源释放完成时触发
返回值类型: void