模型方法
创建模型将返回一个实例, 用于方便后续操作模型的样式和行为
import { init } from 'l2d';
const l2d = init(document.getElementById('l2d') as HTMLCanvasElement);
async function main() {
const model = await l2d.create({
path: 'https://model.hacxy.cn/HK416-1-normal/model.json',
position: 'center'
});
// ...模型创建完成
model.setPosition([50, 50]); // 重新设置位置
}
方法
destroy()
destroy():
void
销毁模型
返回值类型
void
expression()
expression(
id
:string
):Promise
<void
>
根据表情id播放表情
参数
参数名 | 类型 | 描述 |
---|---|---|
id | string | Expression Id |
返回值类型
Promise
<void
>
getExpressions()
getExpressions():
object
[]
获取所有表情, 如果一个模型在其设置中没有定义表情, ExpressionManager 将完全不会创建,这意味着该方法将只能返回一个空数组。
返回值类型
object
[]
getMotionGroupNames()
getMotionGroupNames():
string
[]
获取当前模型所有动作组名称
返回值类型
string
[]
getMotionListByGroupName()
getMotionListByGroupName(
name
:string
):any
[]
根据动作组名称获取动作文件列表
参数
参数名 | 类型 | 描述 |
---|---|---|
name | string |
返回值类型
any
[]
hideHitAreaFrames()
hideHitAreaFrames():
void
隐藏点击区域
返回值类型
void
loadMotionFromUrl()
loadMotionFromUrl(
url
:string
):void
参数
参数名 | 类型 |
---|---|
url | string |
返回值类型
void
loadMotionStreamFromUrl()
loadMotionStreamFromUrl(
url
:string
):void
参数
参数名 | 类型 |
---|---|
url | string |
返回值类型
void
moveCenter()
moveCenter():
void
将模型移动至画布中间
返回值类型
void
on()
on(
eventName
: keyofEmits
,listener
: (eventData
:string
[] |Record
<string
,any
>) =>void
|Promise
<void
>):UnsubscribeFunction
参数
参数名 | 类型 |
---|---|
eventName | keyof Emits |
listener | (eventData : string [] | Record <string , any >) => void | Promise <void > |
返回值类型
UnsubscribeFunction
playMotion()
playMotion(
group
:string
,index
?:number
):Promise
<boolean
>
根据动作组名称播放动作
参数
参数名 | 类型 | 描述 |
---|---|---|
group | string | |
index ? | number |
返回值类型
Promise
<boolean
>
resetSpeak()
resetSpeak():
void
返回值类型
void
resetSpeakStream()
resetSpeakStream():
void
返回值类型
void
setAnchor()
setAnchor(
x
?:number
,y
?:number
):void
设置锚点
参数
参数名 | 类型 | 描述 |
---|---|---|
x ? | number | |
y ? | number |
返回值类型
void
setParam()
setParam(
id
:string
,value
:number
):void
自定义参数
参数
参数名 | 类型 | 描述 |
---|---|---|
id | string | |
value | number |
返回值类型
void
setPosition()
setPosition(
position
:"center"
| [number
,number
]):void
设置模型在canvas中的坐标
参数
参数名 | 类型 |
---|---|
position | "center" | [number , number ] |
返回值类型
void
setRotaion()
setRotaion(
value
:number
):void
设置旋转角度
参数
参数名 | 类型 | 默认值 | 描述 |
---|---|---|---|
value | number | 0 |
返回值类型
void
setScale()
setScale(
value
:number
|"auto"
):void
参数
参数名 | 类型 |
---|---|
value | number | "auto" |
返回值类型
void
setVolume()
setVolume(
value
?:number
):void
设置音量
参数
参数名 | 类型 | 描述 |
---|---|---|
value ? | number |
返回值类型
void
showHitAreaFrames()
showHitAreaFrames():
void
显示可点击区域
返回值类型
void
speak()
speak(
audioBuffer
:AudioBuffer
):Promise
<void
>
说话(口型动作同步)
参数
参数名 | 类型 | 描述 |
---|---|---|
audioBuffer | AudioBuffer |
返回值类型
Promise
<void
>
speakStream()
speakStream(
mediaStream
:MediaStream
):Promise
<void
>
说话(媒体流)
参数
参数名 | 类型 | 描述 |
---|---|---|
mediaStream | MediaStream |
返回值类型
Promise
<void
>