パカパカパカリンコタウン

黒歴史や生き恥を切り売り

XRRayInteractorでVRの手からのレイキャストを出してUI上のトグルボタンを動かす。

とりあえず、XRRayInteractorでトグルボタンを操作までやってみました。


Unityのバージョンは6000.2.7f2

 

VRを動かすところまでは以下の記事。これの続きでやっていきます。

alakialacaalpaca.hatenadiary.jp


レイキャストで動かすために、「XR Interactioin Toolkit」をインポート


バージョンは3.2.1

サンプルの「Starter Assets」もインポート
この中の「XRI Default Input Actions」をInput Actionとして使う。

 

「RightControllerAnchor」の子どもに「RayInteractor」の空オブジェクトを作成

「RayInteractor」に「XRRayInteractor.cs」をアタッチして

XRRayInteractorを下記に設定をする

 

Handedness : Right
UI Press Input : XRI Right Interaction/UI Press(Input Action Reference)

 

 

 

レイキャストを見えるようにするため、「RayInteractor」に「XRInteractorLineVisual.cs」をアタッチ

UIに当たっていないときは見えないようにしたいため、
Invalid Color Gradientを透明に設定



「XRInteractorLineVisual.cs」をアタッチすると、
LineRendererが勝手にアタッチされるのですが、MaterialsがNoneになっていたため、Default-Lineを設定してみました。

LineRendererの線の太さは、設定しなくてもXRInteractorLineVisualで上書きしてくれてる。

 

「XR Interaction Manager」の空オブジェクトを作り


以下の2つをアタッチ

XRInteractionManager.cs
InputActionManager.cs

InputActionManagerのActionAssetsに「XRI Default Input Actions」を設定





※余談ですが、InputActionManagerを設定していないと、「Performed action is disabled」が出て反応しないです。



 

これでトグルボタンの操作ができた。