fbx로 안 뽑고 vmd로 뽑았으면 이 과정은 필요 없음
시작하기 전에 스크립트 파일을 꼭 다운받길 바람
https://bowlroll.net/file/326642
블렌더에 들어가서 File > Import > Better FBX Importer를 통해 다운받은 fbx 모션 파일을 선택함
불러오기 전에 Scale을 1로 설정하고 Optimize For Blender에 체크하고 불러옴
불러왔으면 하단의 프레임 숫자의 End 부분에 모션이 끝나는 프레임을 입력함
정확하게 입력하지 말고 30~50 프레임 정도 여유를 주고 입력하는 게 좋음
예를 들어 197 프레임이면 220~250이 적당
그 다음에 File > Export > Motion Capture (.bvh)를 클릭함
fbx 상태로 이름이랑 뼈대 스케일만 바꾸고 변환해서 내보내도 되지만 이렇게 하면 모션의 정확도가 떨어짐
여기선 딱히 건들건 없는데 스케일이랑 로테이션이 각각 1, Euler인지만 확인하면 됨
남겨진 모션을 지우고 File > Import > Motion Capture (.bvh)로 내보낸 bvh 모션을 선택함
여기서 Scale은 1.15로, Rotation을 Quaternion으로, Forward를 Y Forward로, Up을 Z Up으로 설정하고 Update Scene Duration에 체크하고 불러옴
그런 다음 Scripting으로 가서 Open을 클릭하고 다운받은 스크립트 파일 중 Modify bone's location on FBX.py 파일을 가져옴
실행 버튼을 클릭하면 뼈대의 기본 스케일이 일반적인 mmd 캐릭터 위주로 바뀜
원신의 루미네 뼈대를 기준으로 만들어짐
이번엔 Rename FBX Bones to MMD(spine3).py 파일을 가져와서 실행을 누르면 뼈의 이름이 mmd 캐릭터 전용으로 바뀔 거임
이제 좌측 상단의 에디트 모드를 포즈 모드로 바꾸고
Select > All을 클릭해서 모든 뼈대를 선택한 후 Alt + R을 누르면 초기 포즈가 T자 포즈로 바뀔 거임
왜인지 모르겠으나 오른쪽 다리에 문제가 있었음
근데 추출해도 문제 없으니 신경쓰지 않아도 됨
이제 右腕이나 左腕 뼈를 선택한 다음 우측 하단의 뼈 모양 아이콘을 클릭하고 Rotation의 X 부분에 -0.37을 입력함
반대쪽 팔 뼈도 똑같이 -0.37을 입력
다른 mmd 캐릭터는 기본 포즈가 A자인데 이 모션은 T자 포즈라서 전체 프레임의 팔 각도를 내리는 거임
T자 포즈 모델에 적용시키는 거면 안 해도 됨
그리고 File > Export > MikuMikuDance Motion (.vmd)을 클릭함
내보내기 옵션은 스케일을 10으로, Treat Current Pose as Rest Pose에 체크하고 내보내면 됨
내보낸 모션 적용 결과
영상이랑 비교
여기서 끝이 아니고 프레임과 용량을 줄이는 작업을 해야 트레이싱을 할 수 있음
당장 보기에는 오차가 크고 막막할 수 있으나 나도 지금 하고 있는 3000프레임짜리 트레도 처음엔 저랬음...
그냥 참고 하던지 트레 없이 저대로 쓰던지는 본인 자유임
근데 눈치가 빠르면 움짤의 어깨가 이상하단 걸 알 수 있음 ㅋㅋ