Oculus의 공식 Document를 보면서 Disc Golf에 사용할 장갑 손을 VR핸드로 매핑해보자.
https://developer.oculus.com/documentation/unity/unity-isdk-customize-hand-model/
Use Custom Hand Model | Oculus Developers
developer.oculus.com
씬을 새로 하나 파주자.
공식 문서에서는 LocomotionRIng을 사용하는데 현재 프로젝트의 SDK는 57.0v라 LocomotionRing이 없기 때문에 새로 프로젝트를 파서 Oculus 60.0v을 다운 받고 메시를 만들어야 할 것 같다.
근데 All in one 60.0v와 mobile까지 깔아보았는데도 LocomotionRIng이 없었다... 버전 문제인줄 알았는데
일단 Parenting Additional Meshes 부분은 생략하고 진행해보자
Blender를 실행해서 Hand를 Import해주었다.
따로 뼈대(Armature)가 보이게 설정해줘야 하나 싶었는데 Import할때부터 자동으로 표시되어서 다행이다.
이제 Document대로 핸드 메시를 삭제해주자
그러면 다음처럼 손에서 뼈대만 남은 것을 볼 수 있다.
이제 커스텀 메시를 임포트해주자
그리고 import한 장갑을 보니 마찬가지로 뼈대와 핸드메시로 이뤄져 있는것을 볼 수 있었다.
커스텀핸드메시를 아까 벼대만 남긴 핸드로 옮겨주자
그런데 메시를 수정하려니까 내 블렌더 실력이 너무 부족했다. 그래서 유니티에서 수정하기로...
유니티에서 모델을 수정하고 블렌더로 가져오려고 보니까 파일형식이 prefab으로 되어 있었다. 그래서 패키지매니저에서 FBX Exporter를 다운받아서 사용하였다.
그런데
유니티에서 수정을해도 애초에 메시자체가 생겨먹은걸 바꿀 순 없었다. 메시만 따로 빼봤는데 메시는 처음 수정하기 전이랑 그대로 였다...
일단 메시형태는 나중에 수정해도 되기 때문에 메시와 뼈대를 연결해서 유니티에서 작동하는지 실험해보자
블렌더에서 메시와 뼈대를 맞춰주자.
그리고 블렌더를 Pose Mode로 바꾼다음 Shift를 누른 상태에서 장갑을 드래그해 메시와 뼈대를 모두 선택해주자.
그리고 Ctrl + P를 눌러서 창을 띄운다음
Bone을 눌러서 뼈대와 메시를 연결해주고
다시 시프트드래그를 하고 Ctrl + P를 눌러서 With Automatic Weights를 선택해서 가중치를 자동으로 설정해주자.
그리고 Export한다음 Unity로 Import해서 Oculus에서 작동하는지 실험해보자
OVRHands아래에 있는 핸드를 지우고 커스텀한 핸드를 추가해주었다.
그리고 추가한 Hand에 Animator를 추가하고 OculusHand_LAvatar를 아바타에 넣어 주었다.
그리고 Hand 아래에 있는 meshNode에 Material Block Property Editor를 추가해주자
그리고 원래 있던 핸드를 빼면서 빠진 Skinned Mesh Renderer, Hand Material Property Block Editor에 메쉬노드를 매핑하고,
Auto Map Joints를 눌러서 조인트를 매핑해주자.
그리고 커스텀핸드가 제대로 작동하는지 실험해보았는데
오큘러스에서 커스텀핸드가 제대로 동작하는 걸 확인했다.
근데 동작만하지 메시가 뼈대와 안 맞아서 움직임이 이상하게 보였다.
그래서 이제 메시를 뼈대에 맞게 수정해줘야 한다고 공식문서에는 써져 있는데 문제는 메시를 뼈대에 맞춰서 수정할 정도의 블렌더 실력이 나에겐 없기 때문에...
뼈대를 메시에 맞춰서 수정하는 식으로 해봐서 작동하는지 한번 실험해보았다.
그리고 손모델을 임포트해서 다시 실행해봤는데 여전히 어색하게 보인건 물론이고 뼈대가 바뀌면서 메시가 깨져 보기가 더 안좋아졌다.
아무래도 메시를 뼈대에 맞추는 것 말곤 이 방법을 활용하긴 어려울 것 같다.
'VR 콘텐츠 제작' 카테고리의 다른 글
디스크 골프 [#19] - 시네마틱 도입부 만들기2 (1) | 2023.12.26 |
---|---|
디스크 골프 [#18] - 빌드 시 화면 번지는 현상 고치기 (0) | 2023.12.26 |
디스크 골프 [#16] - 시네마틱 도입부 만들기 (0) | 2023.12.20 |
디스크 골프 [#15] - UI 적용하기 (1) | 2023.12.19 |
디스크 골프 [#14] - 씬 구조 만들기2 (0) | 2023.12.14 |