문서 둘러보기모션과 표정

live2d-web 문서

모션과 표정

모션 연속 재생, Idle 선택 비율, 표정 전환을 제어합니다.

재생 결과와 전환

motion()은 기존과 같이 Promise<void>를 반환합니다. 자연스럽게 끝났는지, 다른 모션으로 중단됐는지, 시작하지 못했는지, 모델이 정리됐는지 구분하려면 playMotion()을 사용하세요. sequence()는 이상 상태가 발생한 첫 단계에서 멈추고 뒤의 모션을 재생하지 않습니다.

const result = await character.playMotion('TapBody', 0, {
  fadeInMs: 250,
  fadeOutMs: 400,
})
 
await character.sequence([
  { group: 'TapBody', index: 0 },
  { group: 'Idle', index: 0 },
])
 
await character.expression('smile', { fadeInMs: 500 })

제작자 기본값 유지

전환 시간 옵션을 생략하면 model3, motion3, exp3에 저장된 제작자 설정을 그대로 사용합니다. motion3의 개별 파라미터에 별도의 전환 값이 있다면 재생 전체에 지정한 값보다 먼저 적용됩니다.

우선순위와 완료 상태 확인하기

사용자 동작에는 normal, 자동 대기 모션에는 idle, 현재 모션을 반드시 바꿔야 할 때만 force를 사용하세요. playMotion()completed, interrupted, skipped, disposed 중 하나를 반환합니다.

const result = await character.playMotion('TapBody', 0, { priority: 'normal' })
if (result.status === 'completed')
  await character.expression('smile')

Idle과 표정의 소유권 정하기

가중치 Idle은 모션 개수와 같은 길이의 배열을 사용하며 0인 항목은 선택하지 않습니다. 새 표정을 적용하면 이전 표정은 설정된 fade로 교체됩니다. clearExpression()은 확실한 즉시 초기화가 필요할 때 사용하세요.