유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog

[Unity]15.오큘러스 퀘스트 사용 #2 - 이동과 공격 구현

  • [유랑]
  • 게임 개발 - Unity3d
  • 2019. 7. 14. 18:52

안녕하세요 유랑입니다.



오늘은 오큘러스 퀘스트를 이용해 이동과 간단한 공격 구현을 해보겠습니다.




1. 오큘러스 퀘스트 컨트롤러



오큘러스 시리즈는 오큘러스 플러그인을 이용해 조작하기 때문에 방식이 비슷하지만 조금 다를 수 있습니다.


- 터치패드 => OVRInput.Get(OVRInput.Touch.PrimaryThumbstick)

- 터치패드 클릭 => OVRInput.Get(OVRInput.Button.PrimaryThumbstick)

- 트리거 버튼 클릭 => OVRInput.GetDown(OVRInput.Button.SecondaryIndexTrigger)




유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog




1-1) 프로젝트 생성 및 준비 - ㉠생성



프로젝트를 생성해 주겠습니다.




유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog




1-2) 프로젝트 생성 및 준비 - ㉡빌드 설정



빌드 플랫폼은 안드로이드, 그리고 플레어 셋팅으로 넘어가 주세요^^




유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



Other Settings에서는 패키지 이름과 API Level을 다음과 같이 설정해 주시고



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



XR Settings에서는 오큘러스 SDK를 추가해 주세요~~~



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog




1-3) 프로젝트 생성 및 준비 - ㉢오큘러스 플러그인



오큘러스 조작을 위해 에셋스토어에서 오큘러스 플러그인을 받아 주세요.




유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



씬은 입맛에 맞게 꾸며주시면 되겠습니다ㅎㅎ



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



이번에는 OVRCameraRig를 추가해 줄게요.

MainCamera는 VR에서 의미가 없기에 삭제해 주겠습니다.



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



OVRCameraRig는 사용자의 머리라고 생각하시면 됩니다.

팔이 되어 줄 부분은 OVRControllerPrefab 안에 있습니다.

GearVR부터 오큘러스 리프트까지 다양한 모델을 제공해 주고 있네요!!



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



플레이어의 왼손과 오른손에 각각 OVRControllerPrefab을 넣어주겠습니다.



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog




1-4) 이동과 공격 구현



OVRControllerPrefab 안에는 해당 스크립트가 들어있는데

게임 실행시 자동으로 기기를 찾아주는 코드입니다.




유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



컨트롤러의 왼손과 오른손에 맞게,

그리고 해당 기기에 맞게 오브젝트를 활성화 해주시면 되겠습니다.



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



플레이어의 이동과 공격 기능을 만들어 줄 코드는 다음과 같습니다.

오큘러스 컨트롤러 좌측은 이동을 우측은 공격을 담당합니다.



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



총알은 스페어 오브젝트로 만들어 준다음 프리팹으로 변경해 주세요.



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



총알이 나오는 곳은 FirePos 빈 오브젝트로 만들었습니다.



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



최종적으로 OVRCameraRig 오브젝트에 ControllerInput 스크립트를 추가 후 

해당 오브젝트를 넣어 주세요.



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog




1-5) 프로젝트 빌드 및 실행



VR은 많은 기능들을 사용하기 때문에 ETC2 압축방식을 사용하자.

설정이 끝났으면 빌드런을 통해서 오큘러스 퀘스트에 프로젝트 파일을 넣어주자.




유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog



유니티 오큘러스 컨트롤러 입력 - yuniti okyulleoseu keonteulolleo iblyeog




2. 마무리



오늘 강의는 여기까지입니다.

오큘러스 퀘스트를 이용해 이동과 공격 구현을 배워보았습니다.

아직 공부단계라 스크립트 부분이 이상할 수 있습니다. 

이 점 양해 부탁드립니다.

오늘도 고생하셨습니다

감사합니다.




수업자료: https://github.com/YouRang12/-Tistory-Unity---Extra-VR-





공유하기

게시글 관리

구독하기너랑나랑개발자이야기

저작자표시

  • 카카오스토리
  • 트위터
  • 페이스북

Oculus, Unity, VR, 오큘러스, 유니티

'게임 개발 - Unity3d' 관련 글

더 보기

[Unity]28.씬 분리와 병합

  • 2019.08.24

더 읽기

[Unity]27.경량 렌더 파이프라인 LWRP

  • 2019.08.20

더 읽기

[Unity]14.오큘러스 퀘스트 사용 #1 - 개발자 세팅

  • 2019.07.14

더 읽기

[Unity]02. 쉐이더 이해하기 #2 - 기초적인 서피스 쉐이더 Part1

  • 2019.01.28

더 읽기

댓글(12)

    비밀 글

    등록