Oculus Quest만으로 프리휠 VR로 여러 사람의 위치를 추적할 수 있습니다.
3099 단어 OculusQuestUnity
입문
이 글은 Unity #2 Advent Calendar 2019의 14일째 글입니다.
멀티플레이어에서 자유 롬 VR을 실현하기 위해서는 유저의 추적이 필요하고 비교적 큰 기계가 필요하다.
오큘러스 퀘스트의 수호자만으로도 일정한 정밀도로 이루어질 수 있으니 소개하고 싶습니다.
Free Room VR이란 무엇입니까?
프리휠 VR은 유저가 장내에서 자유롭게 움직일 수 있는 VR 콘텐츠로 다음과 같은 시설이 있습니다 (유)
Oculus Quest 설정
홈페이지 화면에 방 비율을 설정하고 걸을 수 있는 범위를 수호자의 경계선을 그립니다.다음 그림은 경계선과 이를 바탕으로 생성된 재생 영역 (사각형 영역) 입니다.
이때 멀티플레이어 게임에서 사용되는 오큘러스 퀘스트에서 거의 같은 재생 구역을 만드는 것이 대위에서 중요하다.
바닥의 사각에 껌 등┌
, ┐
, └
, ┘
등의 형식으로 표시를 하고 그 선을 따라 경계선을 그리면 기본적으로 같은 놀이구역이 형성된다.
단위 설정
Oculus Integration.
OVRCameraRig
사전 조립 또는 OVRPlayerController
사전 조립을 히라르키에 추가합니다.OVRManager
를 찾은 다음 Tracking
> Tracking Origin Type
를 Stage
로 변경합니다.Tracking Origin Type
은Eye Level
또는Floor Level
인 경우 유저의 XZ 좌표가 레벨에 배치된 위치를 유지하고, Stage
인 경우 게임의 원점 좌표(0,0,0)는 게임 영역의 중심이 되며, 유저의 Game Object는 게임 영역의 중심을 기준으로 하는 위치로 이동합니다.이 구조에 따라 실제로 걸을 수 있는 영역은 게임 내의 위치와 일치한다.재생 영역 문제
방 규모의 재생 구역에서 여러 대의 Oculus Quest의 위치를 추적할 수 있지만 단 한 가지 문제만 있습니다.
게임의 원점과 게임 영역의 중심을 일치시킬 수 있지만 Y축이 회전하고 Z축의 방향은 원점에서 4변의 어느 하나로도 확정할 수 없다.
즉, 같은 구역의 재생 구역을 만들어도 0 °, 90 °, 180 °, 270 ° 중 하나로 회전하기 때문에 유저의transform을 동기화해도 위치가 일치하지 않는다는 것이다.
우리는 조작할 필요가 없이 이 문제를 해결하기 위해 다음과 같은 절차를 고려했다.
Awake
와Start
를 반영하지 않아 사용할 수 없습니다.나는 네트워크 라이브러리가 동기화되기 전에 담입하고 회전 수정을 하는 것은 나무랄 데가 없다고 생각한다.더 좋은 방법이 있으면 댓글로 알려주세요.회전 수정 전 재생 영역과 유저의 위치와 방향 모드
총결산
오큘러스 퀘스트의 수호자가 대단합니다!
Reference
이 문제에 관하여(Oculus Quest만으로 프리휠 VR로 여러 사람의 위치를 추적할 수 있습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/shiena/items/69a2cb561b3ef44522cc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Oculus Quest만으로 프리휠 VR로 여러 사람의 위치를 추적할 수 있습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/shiena/items/69a2cb561b3ef44522cc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)