아카이브

[VR 팀프로젝트] 랜덤 ui창 띄우기 본문

VR 콘텐츠 제작

[VR 팀프로젝트] 랜덤 ui창 띄우기

timbercat 2023. 12. 5. 18:13

게임 속에서 적을 다 처치하면 나타나는 업그레이드 장비를 선택할 수 있는 ui창을 구현하고자 함

 

업그레이드 기능을 8개 정도 만들어 놓은 후 그 중 2개를 랜덤으로 선택하여 플레이어가 선택할 수 있도록 한다

 

우선 업그레이드 정보를 담을 패널들을 만들어준다

 

UgItemData.cs를 만들어 scriptble object로 데이터 저장

 

UpgradeItem 스크립트를 만든 다음 UpgradeItem 오브젝트에 붙인다

 

잘 나오는지 확인

잘 나옴

 

이제 랜덤 버튼을 누르면 8개 업그레이드 아이템 중에 2개씩 랜덤으로 나오게 만든다

 

Canvas 안에 랜덤버튼 만들어주고 RandomItem 오브젝트 안에 스크립트를 넣어준다

 

잘 되는지 확인

잘 됨

이제 ui창 위에 오브젝트를 띄운다

 

OverUI 레이어 추가

 

메인카메라 자식으로 오브젝트만 보여주는 카메라 추가

카메라 설정

 

Canvas 설정

 

ui 위에 부착할 오브젝트 설정

 

빙글빙글 돌아가게 하려고 Rotation 스크립트를 넣어주었다

잘 돌아감

 

VR 환경에서 구현되는지 확인하기 위해 OVRCameraRig와 OVRCanvas 설정

왼손을 사용해서 grab 하기 때문에 컨트롤러를 손 모양으로 바꿔주었다.

 

메인카메라도 비활성화 하고 Canvas의 Render Mode도 World Space로 바꿔줌

 

distance grab으로 멀리서 물체를 잡을 수 있게 함

 

 

distance grab으로 물체를 잡고 놓으면 제자리로 돌아가게하는 기능을 만든다

 

Controller Distance Grab Interactor 안에 Interactor Unity Event Wrapper 부착

Unselect 안에 스크립트에서 만든 Ungrab을 넣어줌