본문 바로가기
Unity/VR

VR 상호작용 컴포넌트 종류

by mynote6590 2025. 4. 10.

 

Interactor 상호작용 하는 쪽 (주체) 내 손, 레이저, 포인터
Interactable 상호작용 받는 쪽 (대상) 버튼, 문, 큐브

 

Interactable

XR Grab Interactable 손으로 잡고 던질 수 있는 상호작용 대상 컵, 박스, 무기 등 Direct/Ray Interactor와 함께 사용
XR Simple Interactable 클릭, 터치 등으로 작동하는 간단한 상호작용 버튼, 스위치 눌렀을 때 이벤트 발생
XR Tint Interactable Visual 손이 닿으면 색상이 바뀌는 시각적 피드백 잡을 수 없는 물체의 피드백 색, 머티리얼 등 시각 효과용
XR Interactable Affordance State Provider 상호작용 상태에 따라 색상/크기 등 변경 Hover 시 오브젝트 강조 상태에 따른 자동 피드백
XR Interactable Snap Volume 정해진 위치에 딱 맞춰 끼우는 기능 퍼즐, 도킹 시스템 Snap Point 지정 필요
Climb Interactable 오브젝트를 잡고 기어오를 수 있음 벽, 사다리, 로프 Climb Provider와 함께 사용 필요

 

1.  Climb Interactable

  • 설명: 사용자가 이 오브젝트를 "잡고" "기어오를 수" 있도록 만드는 컴포넌트입니다.
  • 사용 예시: VR 게임에서 바위를 잡고 올라가는 클라이밍 시스템, 로프를 타는 시스템 등.
  • 필요한 경우: 플레이어가 손으로 잡고 몸을 끌어올리는 상호작용을 원할 때.

2.  XR Grab Interactable

  • 설명: 가장 기본적인 상호작용 컴포넌트. 사용자가 오브젝트를 "잡고", "이동시키고", "던질 수" 있게 만듭니다.
  • 사용 예시: VR에서 컵, 칼, 공 같은 물체를 잡아서 움직일 수 있도록 할 때.
  • 추가 기능:
    • Throw on Release: 던지기 가능.
    • Attach Point: 손과 정확히 맞추는 위치 지정.
    • Track Position/Rotation 설정 가능.

3.  XR Interactable Affordance State Provider

  • 설명: 물체의 상태(예: Hover됨, Grab됨 등)에 따라 시각적인 반응을 주는 컴포넌트입니다.
  • 사용 예시: 손을 가까이 대면 오브젝트가 빛나거나 색이 바뀌는 효과.
  • 기능:
    • Affordance State에 따라 색, 스케일, 머티리얼 등을 변경.

4.  XR Interactable Snap Volume

  • 설명: 오브젝트가 특정 위치(또는 슬롯)에 딱 맞게 "스냅"되도록 하는 컴포넌트입니다.
  • 사용 예시:
    • 무기를 벽 거치대에 정확히 걸치기.
    • 오브젝트를 퍼즐의 정확한 위치에 끼우기.
  • 특징:
    • XR Grab Interactable과 같이 사용됩니다.
    • 정확한 위치 조작이 필요한 경우 유용합니다.

5.  XR Simple Interactable

  • 설명: 오브젝트를 "잡지는 않지만", "터치 또는 클릭"으로 이벤트를 발생시키는 간단한 상호작용 컴포넌트입니다.
  • 사용 예시:
    • 버튼, 레버, 퀘스트 아이템 선택 등.
  • 기능:
    • Hover, Select 이벤트에 반응 (이벤트 트리거 연결 가능)

6. XR Tint Interactable Visual

  • 설명: 상호작용 상태에 따라 오브젝트의 색을 변경해주는 비주얼 효과 전용 컴포넌트입니다.
  • 사용 예시: 잡을 수 있는 오브젝트에 가까이 가면 초록색, 멀어지면 회색으로 바뀌는 기능.
  • 보통 같이 사용됨: XR Grab Interactable, XR Simple Interactable

 

 

 

 

Interactor

 

Direct Interactor 손으로 직접 오브젝트를 잡기 컵, 칼, 상자 등 물리 오브젝트 조작 손과 닿아야만 작동
Ray Interactor 레이저 포인터로 멀리서 조작 UI 버튼, 멀리 있는 오브젝트 선택 시각적 피드백 포함
Poke Interactor 손가락으로 터치 버튼, 슬라이더 등 UI 요소 닿기만 해도 반응
Teleport Interactor 광선으로 이동 위치 지정 VR 공간 이동 Locomotion System 필요
Gaze Interactor 시선으로 선택 메뉴, 자동 활성화 요소 컨트롤러 없이도 작동

 

1. Direct Interactor

  • 역할: 내 VR 손(또는 컨트롤러)이 직접 오브젝트를 잡고 놓는 방식
  • 사용 예:
    • 컵, 무기, 상자 등 잡을 수 있는 물체
  • 특징:
    • XR Grab Interactable과 함께 사용
    • 진짜 손이 닿아야 작동 → 현실감 높음

📌 설정 팁: Attach Transform을 활용해 손 모양과 정확하게 맞추자!


2. Ray Interactor

  • 역할: 손에서 뻗는 레이저 광선으로 멀리 있는 대상 선택
  • 사용 예:
    • UI 버튼 클릭
    • 퍼즐에서 멀리 있는 조각을 선택
  • 특징:
    • XR Ray Interactor + Line Renderer로 시각적 피드백 제공
    • XR Simple Interactable, XR Grab Interactable 등과 함께 사용 가능

📌 UI와 함께 사용하면 아주 직관적인 조작 가능!


3. Poke Interactor

  • 역할: 손가락 끝을 이용해 직접 터치
  • 사용 예:
    • 버튼 누르기
    • 슬라이더 밀기
  • 특징:
    • XR UI Canvas + Poke Button, Slider 등과 찰떡궁합
    • 실제 손가락으로 터치하는 느낌의 피드백

📌 Sphere Collider와 Poke Filter를 조정해 감도 조절 가능


4. Teleport Interactor

  • 역할: 광선을 쏘아 도달 가능한 위치로 즉시 이동
  • 사용 예:
    • 넓은 VR 공간 이동
    • 멀미를 줄이는 자연스러운 이동 방식
  • 필수 구성:
    • XR Ray Interactor + Teleport Interactor + Locomotion System
    • Teleport Area 또는 Teleport Anchor 필요

📌 VR 멀미 방지용으로 매우 중요!


5. Gaze Interactor

  • 역할: 사용자의 시선이 닿으면 자동으로 선택
  • 사용 예:
    • 눈으로 메뉴 선택
    • 핸즈프리 VR 디바이스에서 유용 (예: HoloLens, Meta Quest Hands)
  • 특징:
    • 손이 없어도 작동
    • 머리 회전 방향(카메라 기준)으로 포커스

'Unity > VR' 카테고리의 다른 글

Grab Interactable  (0) 2025.04.10