표정의 구조

업데이트: 2021/04/27

이 페이지에서는 임베디드 시 사용하는 표정 데이터에 대한 메커니즘을 설명합니다.

애니메이션 뷰에서 표정을 만드는 방법에 대한 자세한 내용은 「애니메이션 뷰에서 표정 생성」을 참조하십시오.
임베디드용 데이터를 내보내는 절차는 「임베디드용 데이터」를 참조하십시오.
표정용 motion3 파일을 Cubism Viewer (for OW)로 읽는 방법에 대한 자세한 내용은 「표정 설정 및 내보내기」를 참조하십시오.

표정의 파라미터에 대해

게임이나 앱에서 표정을 설정하려면 표정용 motion3.json 파일을 준비해야 합니다.
여기서 사용하는 표정용 motion3.json 파일에는 기본값표정값의 두 가지 값이 기술되어 있습니다.
기본값과 표정값, 두 파라미터값의 차이값은 모델의 표정에 영향을 미칩니다.

「분노」의 표정을 예로 들어 설명합니다.

디폴트분노

표정의 기본값과 「분노」의 표정값과 그 차이는 아래 표와 같습니다.

디폴트분노차이
왼쪽 눈 개폐10.8-0.2
왼쪽 눈 미소000
오른쪽 눈 개폐10.8-0.2
오른쪽 눈 미소000
눈알 X000
눈알 Y000
왼쪽 눈썹 상하0-0.4-0.4
오른쪽 눈썹 상하0-1-1
왼쪽 눈썹 좌우000
오른쪽 눈썹 좌우000
왼쪽 눈썹 각도0-1-1
오른쪽 눈썹 각도0-1-1
왼쪽 눈썹 변형0-1-1
오른쪽 눈썹 변형0-1-1
입 변형1-2-3
입 개폐0 00

이 「차이」의 값이 별도로 생성한 모션의 파라미터값에 가산됩니다.
표준 설정에서는 가산이지만 Cubism Viewer (for OW)에서의 표정 설정이나 프로그램에 따라 곱할 수도 있습니다.

기본값와 표정값의 차이가 「0」일 경우 변화는 없습니다.

주의해야 할 파라미터

모션으로 잘 움직이는 「왼쪽 눈 개폐」 「오른쪽 눈 개폐」 「눈알 X」 「눈알 Y」

립싱크에 영향을 미치는 「입 개폐」 는 설정에 주의가 필요합니다.

눈 개폐에 대해

「분노」 표정을 표현하기 위해서 눈의 개폐에 관한 「왼쪽 눈 개폐」 「오른쪽 눈 개폐」에서 기본값이 「1.0」,
표정값이 「0.8」로 설정된 경우 눈 깜빡임 모션에 차이인 「-0.2」가 더해집니다.

이때 처음부터 「0.2」만 이미 눈이 닫혀 있기 때문에 눈 깜빡임의 동작으로 눈이 닫히기까지의 시간이 조금 길고
닫힌 시간도 조금 길어집니다.

반대로 「놀라움」 등 눈을 크게 뜬 얼굴에서 표정값이 「1.2」이고 차이가 「0.2」인 경우
눈 깜빡임으로 눈이 닫히는 「0」일 때 「0.2」가 가산되므로 눈이 완전히 닫히지 않게 됩니다.

이러한 경우에는 가산으로는 대응하기 어려우므로 곱하기를 사용하면 좋습니다.

눈알의 위치에 대해

표정값의 눈알 위치도 기본값과 같게 해 표정을 만드는 것을 추천합니다.

전술한 바와 같이 모션 재생 시에는 기본값과 표정값의 차이가 파라미터값에 가산되므로
「눈알 X」 「눈알 Y」를 기본값 이외로 설정한 표정으로 시선을 움직이는 모션을 재생하면, 의도하지 않은 방향을 봐 버리는 일이 있습니다.
기본적으로는 「눈알 X」 「눈알 Y」는 기본값으로 설정해 두고, 시선은 모션 측에서 제어하는 것을 추천합니다.
「눈알 X」 「눈알 Y」를 기본값 이외로 설정하고 싶은 경우는 시선이 이상하지 않게 고려해서 모션을 생성합시다.

입의 개폐에 대해

기본적으로 「입 개폐」의 기본값과 표정값은 「0」으로 설정해 주십시오.
혹은 처음부터 표정의 설정에서 제외해 표정용의 motion3.json 파일을 생성해도 상관없습니다.
표정값을 「0.2」 등 입이 반쯤 벌어진 상태가 되도록 설정하면, 립싱크 시에 입이 다 닫히지 않고 부자연스러운 형태가 되어 버립니다.
의도한 형태라면 문제 없지만, 립싱크 시에 입을 닫는 형태로 하고 싶은 경우는 표정치를 「0」으로 해 둡시다.

이 기사가 도움이 되었나요?
아니요
이 기사에 관한 의견 및 요청사항을 보내 주시기 바랍니다.