夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

MRTKv2のSliderを使ってみる

 MixedRealityToolKit(以下MRTK)にはHoloLensやMixedRealityイマーシブデバイスをはじめとするxRの開発に役立つ多くのツールが提供されています。

 今回はSliderを使ってみます。

f:id:Holomoto-Sumire:20191116231736j:plain

〇PinchSlider

 MixedReakkutyToolkit.SDK/Features/UX/Prefabs/Slidersにあります。

f:id:Holomoto-Sumire:20191116232212j:plain

 Prefabであるためシーンに配置するだけですぐに使うことができます。    PinchSliderは   Sliderを動かすボタンであるThumbRoot

  f:id:Holomoto-Sumire:20191116233324j:plain

  Sliderの値域であるTrackVisuals

f:id:Holomoto-Sumire:20191116233507j:plain

  メモリであるTickMarks

f:id:Holomoto-Sumire:20191116234259j:plain

 によって構成されています。

 ThumbRootの中身にはコライダーと動かすためのNearInteractionGrabbable.csがアタッチされています。    また、Animationで操作時に色が変わるようになっています。

 エディタで実行中にGrab、もしくはCursorを合わせAirTapし手を動かすことでSliderを操作することができます。

〇Sliderの値を使う

 Sliderを操作することができましたがこのままではなにも行うことはできません。

 Sliderの値を外部でから必要があります。

 PinchSliderにはPinchSlider.csというスクリプトがアタッチされています。

f:id:Holomoto-Sumire:20191116234441j:plain    f:id:Holomoto-Sumire:20191116234537j:plain

PinchSlider.csには様々なパラメータがあります。

 ・ThumbRoot・・・sliderのボタン

 ・SliderValue・・・sliderの値(初期値になります)

 またSliderTrackのSliderAxisで軸を選択できます。 

 f:id:Holomoto-Sumire:20191116235053j:plain

 On Value Updated(SliderEventData)のEventの下部[+]をクリックしてイベントを追加します。

 扱いたいゲームオブジェクトをアタッチ、No Functionから扱いたいスクリプトの機能を設定することでsliderの値を扱うことができます。

スクリプト

 public void hoge(SliderEventData eventData)
{
    
}

 でfloat型のeventDataとしてsliderの値を扱えます。