以下の内容はhttps://redhologerbera.hatenablog.com/entry/2020/02/17/110000より取得しました。


InteractablesExamples/RadialSet ~MixedRealityToolkit v2 Examplesを触ってみる。 その⑧~

 MixedRealityToolKit(以下MRTK)にはExamplesというデモサンプル集が含まれています。

 Examplesを理解すればMRTKの機能の使い方を学習することやノンコーディングでのアプリ開発が可能になります。  

 前回からUX/Interactables/InteractablesExamplesを見ています。

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

 前回はToggleを見ていました。

redhologerbera.hatenablog.com

今回はSceneDescriptionPanelのRadialSetを見ていきます。

〇RadialSet

f:id:Holomoto-Sumire:20200217085227g:plain

 [RadialSet]はラジオボタンのプレファブになります。

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

 [Toggle]プレファブ同様テキストに当たる[Label]、装飾に当たる[Background]オブジェクト、選択状態、非選択状態で色が変わる[Button]オブジェクト、装飾に当たる[Dot]オブジェクトで構成されています。

 [CheckBox]や[Toggle]とは違い、[RadialSet]は複数のボタンのうちで一つのみが選択可能なUIです。

●Profiles

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

 これまで同様[RadialSet]オブジェクトにも[Interactable.cs]がアタッチされています。

 Profileを見てみると[Target]の[Theme]が[Theme(Deselected)]、[Theme(selected)]の二種類設定できるようになっています。

f:id:Holomoto-Sumire:20200217091234j:plain
上部は[Deselected]下部は[selected]のカラー

 ここで選択状態、非選択状態でアクション時だけでなく色の変化が持続するような仕組みとなっています。

 [Theme(Deselected)]と[Theme(Selected)]の二種類の[Theme]を使用するためには[Interactable.cs]の[General]の[Selection Mode]を[Toggle]に設定することで可能になります。

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

 また、[Can Select]、[Can Deselect]の二つの設定はそれぞれボタンを選択可能か、選択解除不能かを設定します。

 [Can Select]を無効にすることで選択ができなくなります。

 f:id:Holomoto-Sumire:20200217092253g:plain

 次にラジオボックスとしての排他的選択機能を調べます。

 [RadialSet]をコピーして4つ目のボタンとしました。

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

 この状態で排他的な選択ができるか実行します。

 f:id:Holomoto-Sumire:20200217092854g:plain    結果は排他的な選択ができませんでした。この機能は親オブジェクトである[RadialSet]オブジェクトにあります。

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

 [RadialSet]オブジェクトには[InteractableToggleCollection.cs]がアタッチされています。

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

 このコンポーネントのリストにはオブジェクトの[Interactable.cs]を設定するようになっており、ここで設定されているオブジェクト同士が排他的な選択の機能を持つようです。

 ここでは[Size]を4に変化させて先ほどコピーしたオブジェクトの[Interactable.cs]を設定しました。

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

 この作業によって4つのオブジェクトで排他的な選択が可能になりました。

 f:id:Holomoto-Sumire:20200217093743g:plain

 これで[RadialSet]の機能と仕組みを理解できました。

 これまでのオブジェクト同様UIとしてイベントを指定するためには[Interactable.cs]の[OnClick()]にイベントを追加します。




以上の内容はhttps://redhologerbera.hatenablog.com/entry/2020/02/17/110000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14