ManipulationHandler 腳本允許物件由一隻或兩隻手移動、可擴展且可旋轉。 操控可以被限制,只允許特定類型的變身。 此腳本支援多種輸入方式,包括HoloLens 2關節手部輸入、手部光線、HoloLens (第一代) 手勢輸入,以及沉浸式頭戴裝置動作控制器輸入。
如何使用操控處理器
把腳本元件加入 ManipulationHandler GameObject。 也要確保在物件上加入碰撞器,並符合其可抓取的範圍。
要讓物件對近乎關節的手部輸入有反應,也要加上 NearInteractionGrabbable 腳本。
檢查器特性
宿主轉換 變形會被拖曳。 預設為元件的物件。
操控類型 規定物體是否可用一隻手、雙手或雙手操作。
- 只有一隻手
- 僅用雙手
- 單手與雙手
雙手操控型
- 比例:只允許縮放。
- 旋轉:只允許旋轉。
- 移動比例:允許移動和縮放。
- 移動旋轉:允許移動與旋轉。
- 旋轉縮放:允許旋轉與縮放。
- 移動、旋轉比例:允許移動、旋轉和縮放。
允許遠距離操控 規定是否能利用指標的遠端互動來進行操作。
單手旋轉模式 指定物件在被單手或控制器靠近時的行為。
單手旋轉模式 遠距離 指定物體在被單手或控制器遠距離抓取時的行為。
單手旋轉模式選項 指定物體在被單手抓取時的旋轉方式。
- 維持原始旋轉:移動時不會旋轉物件
- 維持對使用者的旋轉:向使用者維持物件在 X/Y 軸的原始旋轉
- 重力對齊維持對使用者旋轉:維持物件對使用者的原始旋轉,但使物件垂直。 對於有界限控制的物件非常有用。
- Face 使用者:確保物件始終面向使用者。 對板岩/面板很有用。
- 面向使用者:確保物件始終面向使用者。 對於反向配置的板岩/面板很有用。
- 繞著物件中心旋轉:只適用於關節手或控制器。 用手或控制器旋轉物件,但繞著物件中心點旋轉。 對遠距離檢查很有用。
- 圍繞抓取點旋轉:只適用於關節手或控制器。 旋轉物件,就像它被手或控制器握住一樣。 對檢查很有用。
釋放行為 當物件被釋放時,指定其物理移動行為。 需要剛體元件必須在該物件上。
- Nothing
- 一切
- 保持速度
- 保持 Angular Velocity
旋轉的限制 指定物體在互動時會沿著哪個軸旋轉。
- 無
- 僅限 X 軸
- 僅限Y軸
- 僅 Z 軸
使用局部空間作為限制 一個切換功能,可在世界-空間軸或局部空間軸之間切換約束。
移動限制
- 無
- 固定與頭部的距離
平滑主動 指定平滑是否為啟動狀態。
平滑量 一手 要對移動、比例、旋轉施加多少平滑處理。 平滑為 0 表示不平滑。 最高價值代表價值不會改變。
Events
操作處理程序提供以下事件:
- OnmanipulationStarted:操控開始時被觸發。
- Onmanipulation 結束:操控結束時觸發。
- OnHoverStarted:當手或控制器懸停在可操作的裝置上,無論距離近或遠時,都會觸發。
- OnHoverEnded:當一隻手或控制器解除可操作的懸停,無論近或遠時,都會觸發。