トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

Holo2でuGUIのCanvasをつかみたい【ToggleFeaturePanel】

Holo2でuGUIのCanvasを掴んで動かせるようにしたい

uGUICanvas+コライダー

uGUIのCanvasにコライダーを付けて手でつかみたいんだけど、できるのかな?(MRTK+Hololens2の話)

→動かなかった・・・?よくわからない

 

質問サイトもはっきりしない

teratail.com

teratail.com

uGUIのCanvasを動かしたいって割とXR特有の話なので、あんまりググっても出てこない。昔Canvasの重なり問題にも頭悩ませた・・・

例えばclusterのUIはつかんで動かせるけどあれは何でできているんだろう?

f:id:bibinbaleo:20180811113642p:plain

 

ToggleFeaturePanel

MRTKに入ってたつかめるパネルはQuad。

f:id:bibinbaleo:20200423171229p:plain

BoxColliderNearInteractionGrabbableNearInteractionGrabbableいうスクリプトがついていた。

f:id:bibinbaleo:20200423145726p:plain

NearInteractionGrabbableの設定はこんな感じ。

f:id:bibinbaleo:20200423171320p:plain

いろいろ依存してる

f:id:bibinbaleo:20200423171317p:plain

このコンポーネントをコピーして別のQuadにつけてもOnManipulationEnbedとかがこのQuadの親のスクリプトなどに依存しているので設定しなおさないといけない。

CanvasにQuadを入れる

Canvasの中にQuad仕込んで同じようにスクリプト付けたら動いた。

f:id:bibinbaleo:20200423172107p:plain

動いたけど、uGUIのボタンのクリックが反応しなくなった。

 

パネル全体をつかめる必要はない!ということにこちらのアプリで気づいた

f:id:bibinbaleo:20200424162630p:plain

コライダーをパネルの右端だけにつけたら、ボタンもたまに反応するようになった。

たまにだけど・・・

何かがおかしい

near~~スクリプトのせいなのかなー

最後に

 MRTKのサンプルにあるuGUIのcanvasは動かない

f:id:bibinbaleo:20200423170942p:plain

 結局uGUIとコライダーとの共存は難しいのかな