Omni 와 Vive VR 을 통해 제작중인 Meta Kaywon
MetaKaywon은 계원예술대학교 캠퍼스 및 주변 환경을 드론으로 스캔하여 제작된 월드입니다.
HDRP 렌더 파이프라인을 사용하고, VR과 Omni 트레드밀을 통해 작동이 가능하도록 구성되어있습니다.
1.텔레포트 기능
Vive예제에 포함되어있는 텔레포트 기능을 응용하여 엄지패드(②)를 통해 텔레포트를 할 수 있도록 기능이 탑재되어 있습니다.
텔레포트에는 총 두가지 유형이 있습니다. 텔레포트 구역과 텔레포트 포털입니다.
텔레포트 구역
- 엄지패드를 통해 그 구역 안 아무 곳이나 텔레포트가 가능합니다.
한정적이지 않으며 공간을 자유롭게 둘러볼 수 있는 기능으로 쓰입니다.
- Teleport Area 라는 스크립트를 사용합니다.
2. VR 컨트롤러 인식오류 확인
베이스 스테이션은 vive vr 헤드셋과 컨트롤러가 인식될 수 있도록 안테나 역할을 하는 장치입니다.
총 두개가 공간을 조성하여 작동중입니다.
게임을 실행하고나서, 컨트롤러 인식이 불확정한 부분을 확인했습니다.
하지만 텔레포트 기능을 모두 껐을 시엔, 문제가 발생하지 않았고,
텔레포트를 아무 곳이나 한 후에는 인식이 완전히 잘 되는 것을 확인할 수 있었습니다.
게임을 시작했을 때 스테이션 앞에서 시작할 시 인식이 정상적으로 작동되지만, 다시 원상태로 돌릴 시 오류가 발생합니다.
그래서 옴니 트레드밀을 센서 부분으로 방향을 틀어서 배치하거나,
텔레포트 기능을 제거하는 방법으로 인식오류를 해결할 수 있었습니다.
3. 스캔된 모델링에 상호작용 가능
‘콘’에 잡고 던지는 기능을 추가
추가해야 하는 컴포넌트
mesh collider (또는 아무 collider)
rigidbody
interactable
throwable
collider - 물체에게 물리적인 충돌 및 접촉, 상호작용을 가능하게 하는 기능입니다. 구, 큐브, 캡슐, 불러온 메쉬 등을 콜라이더 모양으로 지정하여 다양한 유형의 콜라이더를 구사할 수 있습니다.
rigidbody - 보통 콜라이더와 함께 같이 쓰이는 필수 기능 중 하나로, 물체에게 중력이나 움직임을 좀 더 구체적으로 주는 기능입니다.
throwable - XR 플러그인을 다운 시 받을 수 있는 스크립트 중 하나로, 물체를 잡고 상호작용할 수 있도록 도와줍니다. 주로 물체를 잡고 가능한 기능들을 설정할 수 있습니다.
interactable - XR 플러그인을 다운 시 받을 수 있는 스크립트 중 하나로, 물체를 접근할 수 있도록 하고 여러 기능들을 적용할 수 있도록 도와주는 스크립트입니다.
※VR의 컨트롤러로 물건을 잡을 시 손이 없어지도록 설정하였습니다.
VR상 물체에 상호작용을 할 때, 물체의 콜라이더를 잡는 방식이므로, 물체를 통과하게끔 보이기 때문에 부자연스러워 보입니다.
-손을 녹화하거나, 수동적으로 손가락 등의 움직임을 물체의 특성에 맞추어 해야 자연스럽게 손이 잡히는 것을 구동할 수 있습니다.
4. Omni 트레드밀 이동수단 보완할 방법 구축
계원예술대학교의 캠퍼스가 광범위하기 때문에 이동수단을 넓히는 과정을 걸쳤습니다.
스쿠터를 활용하여 걷는것보다 편리하게 캠퍼스를 둘러볼 수 있도록 기능을 넣었습니다. 왼쪽 컨트롤러의 버튼은 브레이크, 오른쪽 컨트롤러의 버튼은 과속을 하는 기능을 넣으려고 했으나, 연구가 더 필요하기에 핸들 부분만 작업하게 되었습니다.
전에 소개드린 콘과 같은 기능을 추가하고, 던지는 기능 대신 손을 물체에 고정할 수 있도록 설정하였습니다.
손모양을 스쿠터 핸들을 잡는 모양으로 수정해서, 잡을 때 변경한 대로 손이 변경되도록 설정하여 핸들을 잡았을 때 자연스럽게 손이 고정되도록 제작하였습니다.
Attachment Flag를 Nothing으로 변경하여 잡을 수는 있지만 잡고 움직일 수 없도록 제작하였습니다.
Comments