VR(가상현실)이란
컴퓨터 등을 사용한 인공기술로 만들어낸 실제와 유사하지만 실제가 아닌 어떤 특정한 환경이나 상황 혹은 그 기술자체를 의미합니다.
사실상 최초의 현실적인 게이머용 VR 헤드셋 영상을 한번 보세요!
https://www.youtube.com/watch?v=l9o8MJKsU_0
구글 카드 보드란
2014년 구글 I/O 컨퍼런스에서 발표된 DIY 도면 및 해당 도면으로 만들어진 HMD(Head Mounted Display)를 지칭합니다.
* HMD : 주로 가상현실 또는 증강현실의 구현을 위한 디스플레이 장치
* 공식 홈페이지
https://vr.google.com/cardboard/index.html
이제 서론은 접고, 개발을 시작해보겠습니다.
요약
1. SDK 준비 (구글 카드보드, PUN)
2.
유니티 (포스팅시 적용 버전 2018.1.8f1)
VR 개발툴 선두주자라고 할 수 있는 유니티는 다 설치해놓으셨죠?
그 다음,
구글 카드보드 SDK for Unity 를 다운 받겠습니다.
유니티 어셋스토어에서 받는게 아니라
깃허브에서 다운받으면 됩니다.
https://github.com/googlevr/gvr-unity-sdk/releases
(포스팅시 적용 버전 1.150.0)
* 참고
(혹시나 예전버전 SDK가 필요하시면)
https://github.com/googlevr/gvr-unity-sdk/releases/tag/v1.110.0
유니티 공식 샘플 소스로 VR 테스트를 해보겠습니다.
Roll A Ball 프로젝트입니다.
튜토리얼 사이트
https://unity3d.com/kr/learn/tutorials/s/roll-ball-tutorial
VR이 아닌 앱으로 실행을 하면
이제 VR 프로젝트로 변환시켜보겠습니다!!
구글 카드보드 SDK의 카메라 말고
Dive Camera를 한번 사용해보겠습니다.
https://www.durovis.com/en/sdk.html
홈페이지에서 유니티 플러그인 패키지를 다운받으세요.
그리고 프로젝트에 임포트를 하세요.
멀티플레이어 게임을 만들기 위해서
포톤 어셋부터 임포트 하겠습니다.
PUN을 유니티에 적용하는 부분은
포톤코리아 블로그에서 포스팅한 글('포톤엔진을 유니티에 적용')을 참고해주세요~
http://photonkr.tistory.com/13?category=1000133
위 포스팅을 잘 따라하시면
유니티에 PUN 임포트&설정은 문제 없을 것입니다.
그 다음
빈 오브젝트를 생성한 후
이름을 'NetworkController'로 변경합니다.
곧 이 오브젝트에 곧 생성할 NetworkController.cs 파일을 컴포넌트로 넣을 것입니다.
이제 플레이어가 될 오브젝트를 프리팹(Prefab)으로 만들겠습니다.
Asset 폴더 아래에 Resources 폴더를 하나 생성합니다.
이 폴더로 Player 게임오브젝트를 드래그앤 드랍하세요.
프리팹을 만들었으니
하이라키에 있는 Player 오브젝트는 삭제하거나 비활성화 시켜주세요.
프로젝트 하이라키는 아래와 같습니다.
(Main Camera와 Player는 비활성화)
이제는 스크립트 파일을 만들겠습니다.
* PhotonNetwork.ConnectUsingSettings()
* PhotonNetwork.Instantiate()
- 네트워크 객체를 자동으로 생성
- 프리팹 이름, 시작위치, 회정정보
- 프리팹은 Resources 폴더 안에 존재, 프리팹은 PhotonView 가 컴포넌트로 존재
* OnPhotonSerializeView()
- steam 변수를 통해 read, write
**steam.isWriting
**steam.SendNext()
- 데이터 직렬화
- 다른 유저에게 데이터를 보냄
아까 말씀해드린대로
NetworkController.cs 파일은 NetworkController 게임오브젝트에 컴포넌트로 추가해주세요.
NetworkedPlayer.cs 파일은 프리팹에 컴포넌트로 넣어주세요.
그리고 포톤 엔진이 제어할 수 있도록
PhotonView 도 컴포넌트로 넣어주세요.
PhotonView를 넣은 후
Observed Components에는 NetworkedPlayer 컴포넌트를 드래그앤 드랍해주세요.
아래 사진은
Player 프리팹 수정한 인스팩터 부분입니다.
빌드 앤 런 해보세요!
★Photon 공식 홈페이지
https://www.photonengine.com/ko-kr/Photon
★Photon Help Center
https://support.photonengine.jp/hc/ko
'Photon > PUN' 카테고리의 다른 글
[PUN]PUN classic VS PUN 2 (0) | 2019.05.30 |
---|---|
[PUN] 매치메이킹 (0) | 2019.04.24 |
[PUN]로비.룸 알아보기 (0) | 2018.12.19 |
[PUN]RPC 알아보기 (0) | 2018.12.10 |
[PUN]유니티짱을 이용한 PUN classic 시작하기 (1) | 2018.05.30 |