ManipulationHandler 스크립트를 사용하면 하나 또는 두 개의 손을 사용하여 개체를 이동 가능하고 확장 가능하며 회전 가능하게 만들 수 있습니다. 특정 종류의 변환만 허용하도록 조작을 제한할 수 있습니다. 이 스크립트는 HoloLens 2 관절식 손 입력, 손 광선, HoloLens(1세대) 제스처 입력 및 몰입형 헤드셋 모션 컨트롤러 입력을 비롯한 다양한 유형의 입력으로 작동합니다.
조작 처리기를 사용하는 방법
GameObject에 ManipulationHandler 스크립트 구성 요소를 추가합니다. 또한 개체에 그라블 경계와 일치하는 충돌기를 추가해야 합니다.
개체가 거의 관절식 손 입력에 응답하도록 하려면 스크립트도 추가 NearInteractionGrabbable 합니다.
검사기 속성
호스트 변환 끌 변환입니다. 기본값은 구성 요소의 개체입니다.
조작 유형 한 손, 두 손 또는 둘 다를 사용하여 개체를 조작할 수 있는지 여부를 지정합니다.
- 한 손으로만
- 양손만
- 한 손과 두 손
양손 조작 유형
- 크기 조정: 크기 조정만 허용됩니다.
- 회전: 회전만 허용됩니다.
- 크기 조정 이동: 이동 및 크기 조정이 허용됩니다.
- 회전 이동: 이동 및 회전이 허용됩니다.
- 배율 회전: 회전 및 크기 조정이 허용됩니다.
- 배율 회전 이동: 이동, 회전 및 크기 조정이 허용됩니다.
극한 조작 허용 포인터와의 원거리 상호 작용을 사용하여 조작을 수행할 수 있는지 여부를 지정합니다.
한 손 회전 모드 근처 개체가 한 손/컨트롤러 가까이에서 잡히는 경우의 동작 방식을 지정합니다.
원핸드 회전 모드 멀리 개체가 원거리에서 한 손/컨트롤러로 잡히는 경우의 동작 방식을 지정합니다.
한 손 회전 모드 옵션 개체가 한 손으로 잡히는 경우 회전하는 방법을 지정합니다.
- 원래 회전 유지 관리: 이동 중인 개체를 회전하지 않습니다.
- 사용자에 대한 회전 유지 관리: X/Y 축에 대한 개체의 원래 회전을 사용자에게 유지 관리합니다.
- 중력 맞춤 사용자에 대한 회전 유지 관리: 개체의 원래 회전을 사용자에게 유지 관리하지만 개체를 세로로 만듭니다. 경계 컨트롤이 있는 개체에 유용합니다.
- 얼굴 사용자: 개체가 항상 사용자를 향하도록 합니다. 슬레이트/패널에 유용합니다.
- 사용자와 마주하기: 개체가 항상 사용자로부터 멀리 떨어져 있는지 확인합니다. 뒤로 구성된 슬레이트/패널에 유용합니다.
- 개체 중심 회전: 관절형 손/컨트롤러에 대해서만 작동합니다. 손/컨트롤러의 회전을 사용하지만 개체 중심점을 기준으로 개체를 회전합니다. 원거리에서 검사하는 데 유용합니다.
- 잡기 지점 회전: 관절형 손/컨트롤러에 대해서만 작동합니다. 개체가 손/컨트롤러에 의해 유지되는 것처럼 회전합니다. 검사에 유용합니다.
릴리스 동작 개체가 해제되면 물리적 이동 동작을 지정합니다. 해당 개체에 고정된 표시 구성 요소가 있어야 합니다.
- 아무것도
- 모든
- 속도 유지
- Angular 속도 유지
회전에 대한 제약 조건 상호 작용할 때 개체가 회전할 축을 지정합니다.
- 없음
- X축만
- Y축만
- Z축만
제약 조건에 로컬 공간 사용 세계 공간 축 또는 로컬 공간 축과 관련하여 제약 조건 적용 간에 전환할 토글입니다.
이동 제약 조건
- 없음
- 머리에서 거리 수정
활성 다듬기 다듬기가 활성 상태인지 여부를 지정합니다.
양 한 손 다듬기 이동, 배율, 회전에 적용할 평활의 양입니다. 0의 다듬기란 다듬기 없음을 의미합니다. 최대값은 값이 변경되지 않음을 의미합니다.
Events
조작 처리기는 다음 이벤트를 제공합니다.
- OnManipulationStarted: 조작이 시작될 때 발생합니다.
- OnManipulationEnded: 조작이 종료될 때 발생합니다.
- OnHoverStarted: 손/컨트롤러가 조작 가능한 마우스를 가까이 또는 먼 위치로 가리키면 발생합니다.
- OnHoverEnded: 손/컨트롤러가 조작 가능한 마우스를 거의 또는 멀리 가리키지 않으면 발생합니다.