Unity 2022.3.5f1 + Oculus Integration 56.0 Create a Hand Grab Pose (Mac)

VR/Oculus Integration 2023. 9. 26. 17:16
반응형

Create a Hand Grab Pose (Mac)

 

개체를 잡을 때 기본 손 잡기 포즈가 제대로 보이지 않는 경우 손이 개체를 올바르게 잡고 있는 것처럼 보이도록 사용자 정의 손 잡기 포즈를 만들 수 있습니다.

 

사용자 정의 손 잡기 포즈를 만들려면 잡을 항목을 추가하고 포즈의 여러 복사본을 추가 및 조정한 다음 포즈를 미러링합니다.

 

이 튜토리얼은 Mac 장치용입니다. 이 튜토리얼의 Android 버전은 손 잡기 포즈 만들기(Android)를 참조하세요. 사전 구축된 장면에서 포즈 인식을 시도하려면 PoseExamples 장면을 참조하세요.


Add an Item

손 잡기 포즈는 손이 항목을 잡는 방식을 조정하므로 장면에 잡을 항목이 필요합니다.

 

새 씬을 만들고 기본 그랩 설정을 한다

Hierarchy에서 마우스 오른쪽 버튼을 클릭한 다음 Create Blank를 선택하여 Item이라는 빈 GameObject를 만듭니다.

 

항목을 마우스 오른쪽 버튼으로 클릭한 다음 3D 개체 > 구를 선택하여 항목에 구를 추가합니다.

Inspector의 Transform 구성 요소에 있는 Scale 속성에서 X, Y 및 Z 값을 0.1로 설정합니다.

 Item을 선택후 inspector에서 Add Component 버튼을 클릭하고 Rigidbody를 검색하여 Rigidbody 컴포넌트를 추가합니다.

Rigidbody 컴포넌트에서 Is Kinematic 속성을 확인하세요.

Inspector 아래에 Grabbable 구성 요소를 추가합니다.


Add a Pose

 

 

 

계층 구조 아래의 프로젝트 패널에서 HandGrabInteractable을 검색한 다음 검색 결과를 항목으로 드래그하여 항목에 HandGrabInteractable 프리팹을 추가합니다. 

 

 

포즈는 손이 물체를 잡는 방법을 정의합니다.

계층 구조에서 HandGrabInteractable을 선택합니다.

 

Inspector 아래의 Hand Grab Interactable 구성 요소에서 Add HandGrabPose Key with Scale 1.00 버튼을 클릭합니다

 

 

Add a Pose

장면 뷰에 유령 손이 나타나고 Hierarchy 아래에 HandGrabPose가 HandGrabInteractable의 하위 항목으로 추가됩니다.

 

 

Adjust the Pose

 

손이 항목을 올바르게 잡도록 하려면 포즈의 위치와 손가락을 수동으로 조정해야 합니다.

계층 구조에서 HandGrabPose를 선택합니다.

 

 

장면 뷰에서 변환 기즈모와 각 손가락의 관절 핸들(각 손가락 내의 파란색 원)을 사용하여 항목에 손을 감습니다.

변환 기즈모와 손가락 관절 핸들을 사용하여 포즈를 조정합니다.

inspector 아래 Hand Grab Pose 구성 요소의 Fingers Freedom 속성에서 각 손가락에 대해 Free, Constrained 또는 Locked를 선택합니다(새끼 손가락은 Max로 나열됨).

 

Free: 손가락이 자유롭게 움직입니다.

제한됨: 손가락이 포즈의 해당 위치를 벗어나 이동하지 않습니다.

잠김: 손가락이 움직이지 않습니다.

 


Add Scaled Copies of the Pose

사람들은 손 크기가 다르기 때문에 더 크거나 작은 손을 고려하여 포즈의 크기가 조정된 복사본을 추가해야 합니다.

원하는 만큼 크기가 조정된 복사본을 만들 수 있지만 대부분의 손 크기를 고려하려면 0.70 크기의 손 포즈와 1.30 크기의 손 포즈를 추가하세요.

 

스케일 0.70으로 HandGrabPose 키 추가 버튼을 클릭합니다.

장면 뷰에 유령 손이 나타나고 Hierarchy 아래에 HandGrabPose가 HandGrabInteractable의 하위 항목으로 추가됩니다.

 

이제 포즈는 두 포즈 크기(0.78~1.00) 사이의 모든 손 크기에 맞습니다. 해당 지점 사이에 크기 조정된 손 잡기 포즈 키 슬라이더를 드래그하면 해당 손 크기에 맞게 자동으로 크기가 조정되는 포즈가 표시됩니다.

 

두 포즈 키 사이의 포즈 자동 크기 조정입니다.

 

Repeat these steps for the 1.30 sized hand. (필요하다면)

 


Add a Grab Surface

기본적으로 개체를 잡으면 손이 포즈 위치에 맞춰집니다. 다른 각도에서 개체를 잡으려면 포즈에 잡기 표면을 추가하세요.
  1. Under Hierarchy, select HandGrabPose.

Inspector에서 Add Component 버튼을 클릭한 다음 Sphere Grab Surface를 검색하여 Sphere Grab Surface 구성 요소를 추가합니다.

Hand Grab Pose 구성 요소에서 Hierarchy의 HandGrabPose를 필드로 드래그하여 Surface 속성을 HandGrabPose로 설정합니다.

 

  1. Repeat these steps for the remaining HandGrabPose GameObjects.

 


 

Mirror the Pose

 
 

기본적으로 손 잡기 포즈는 왼손에 대해 생성됩니다. 오른손에 사용하려면 포즈를 복제하세요.

  1. Under Hierarchy, select HandGrabInteractable.

Inspector 아래 Hand Grab Interactable 구성 요소 맨 아래에 있는 Create MirroredHandGrabInteractable 버튼을 클릭합니다.

HandGrabInteractable_mirror GameObject가 계층 구조에 추가됩니다.

 

좀더 미세하게 조절 해보자

 

너무 빡빡하게 잡기 보다는 좀 여유롭게 잡는게 더 자연스럽다 

씬 저장을 꼭 하고 빌드 하자

빌드후 결과를 확인 한다 

가끔 오른손 안되는건 무엇?

 

 

 

 

반응형
: