Skip to content

줍기 기능

Hansu Park edited this page Apr 26, 2024 · 2 revisions

아이템을 줍고, 주운 현황을 유지한다.

아이템 생성

에 있는 것처럼 많은 아이템들을 만들어준다.

아이템 랜덤 배치

  1. 모든 오브젝트들을 비활성화시킨다.
  2. 랜덤으로 몇 개의 오브젝트만을 활성화해준다. 이는 CollecctManagernumberOfItemsToActivate 에 의해 결정된다.

CollecctManager.csisRandomSelectMode 를 false로 바꾸면 모든 오브젝트가 활성화된다.

아이템 줍기

XR의 Grab 기능을 이용해서 원하는 아이템을 주울 수 있다.

CollectableItem.csgrabDurationThreshold 을 조절해서 몇초동안 그랩한 경우 줍는 것인지 설정할 수 있다.

OnCollect() 에서 주울 때의 액션을 설정할 수 있다.

줍기 길이 관련

XR-Grab의 길이를 바꾸는 것은 아직 못찾았다.

바꾸기 위해선 세부 구현이 되어있는 XRGrabInteractable을 잘 살펴봐야한다. 최종 구현이 Grab 기능을 이용하진 않을 것 같아 보류하고자 한다.

구현

CollectableItem.cs 는 아이템의 줍기 여부를 감지/ 주울 때의 액션을 실행한다. CollectManager.cs 는 아이템의 줍기 현황을 유지한다.