-
VR MotorShow유니티/VR MotorShow 2021. 4. 3. 20:21

메인화면과 자동차 VR MotorShow는 가상공간에서 자동차를 구경할 수 있으면 재밌지 않을까해서 만든 프로젝트다.
다른사람과 같이 구경하면 재밌지 않을까해서 유니티에서 자주사용하는 포톤네트워크를 사용해봤다.
자동차는 고정되어있고 걸어다니면서 구경하는 방식을 생각했기 때문에 안전상 트레드밀도 연동했다.
개발은 Unity 19.3.7, HDRP 7.3.1 Photon Network를 이용했다.
소스관리는 Git을 사용했다.
차량에셋을 수정하기 위해서 3D Max를 사용했다.
VR기기는 HTC VIVE, 트레드밀기기는 KAT VR을 사용했다.
제작은 혼자했고 2주 정도 걸렸다.
1. 결과
VR MotorShow 영상 2. 제작과정
- UI

네트워크에 접속, 자동차 변경/설정, 배경변경 UI UI는 Curved UI 에셋을 사용하여 만들었다.
왼쪽부터 네트워크 접속, 차량변경, 배경변경, 색변경 버튼이다.
Curved라서 버튼마다 Collider를 적절히 넣는게 까다로웠다.
- 차량에셋 수정


문떼기전(왼쪽), 문떼고난후(오른쪽) 차량에셋을 구입하고나서 보니 차체는 그냥 하나의 덩어리였다.
자동차와 여러 상호작용을 하려고 했고 그 중에는 문열기도 있었다.
따라서 문쪽의 폴리곤만 따로 선택하고 버텍스를 그리기도해서 떼어냈다.
눈빠지는줄 알았다.
- HDRP
최대한 리얼한 체험을 하는 것이 목표였으므로 HDRP를 사용하기로 했다.
유니티에서 제공하는 Measured Materials를 사용하고 직접 만들기도했다.
볼륨프로파일을 사용해 HDRI 배경도 만들어 최대한 사실감을 느낄수 있도록 했다.
2번째 오른쪽 이미지는 직접 만든 배경이며 그림이 아닌 오브젝트들이다.


배경으로 들어간 HDRI 이미지 

오른쪽은 직접만들었다 

직접 제작한 Material을 적용한 자동차 하지만 HDRP는 비용이 더 들어가고 거기에 VR까지 사용하므로 사양을 많이 필요로했다.
여러가지 그래픽 설정을하고 스크립트를 바꿔서 40~50fps 정도는 나오게했다.
- 기능


문열기와 핸들돌리기 문도열고 핸들도 돌려보는 기능을 넣어봤다.
문열어서 내부보면서 내부를 본김에 핸들도 돌려보고 싶었다.
문열기와 핸들돌리기 둘다 내적을 사용해 손의 처음위치와 현재위치 사이 각도를 구해서 구현했다.


자동차별로 여러가지 특징들이 있다 그냥 열면 재미없으니까 차종별로 여러가지 방법으로 열어봤다.



차량변경, 배경변경, 차량색상변경 여러가지 환경속에서 차의 느낌이 어떨지 체험할 수 있다.
3. 소감
이 프로젝트를 하면서 가장 힘들었던점은 네트워크에 대한 것이었다.
위에서는 주로 이 프로젝트의 콘텐츠 위주로 설명했지만 네트워크가 제일 힘들었다.
물론 포톤네트워크를 사용해 정석적인 네트워크를 다뤘다고 말할 수는 없지만
네트워크라는 것을 처음 배워서 바로 시작한 프로젝트라서 정말 정신이 없었다.
여기서 전송하고 저기서 받고 저기서 전송하고 받고 계속받고 전송하고
이런 복잡한 과정이 있는지 상상도 못했었다.
당연하다고 생각했던 온라인게임들이 정말 대단하게 보였다.
잘했다고 생각하는점은 그래도 주어진 시간내에 넣고 싶은거 다 넣었다는 점이다.
모터쇼 컨셉의 프로젝트를 하겠다고 발표하고나서 아무도 같이하겠다는 사람이 없어서 혼자했다...
나중에 들어보니 너무 어려울거 같다고 말한 분들이 많았었다.
실제로 맨날 오후 9~10시까지 작업하고 주말에도 작업했었다.
이 욕심을 좀 줄여야하는데 한번 기획하기 시작하면 이거도하고 싶고 저거도하고 싶은건 어쩔수없는거 같다.
이거할때 진짜 재밌었다.
트레드밀을 타면서 테스트하는것도 재밌었고
자동차 모델을 직접 뜯어서 다룬다는게 재밌었다.
한창 뭔가 배워서 적용할때라 그런거 같다.
지금은 뭐 만들려고하면 물론 재미도 있지만 이때 만큼은 아니다.
대신에 고통이 더 늘어난거 같다 ㅋㅋㅋㅋ