196の日記

完全に開発メモと雑談、その他忘れそうな計算式などを書き溜める場所になっています!

Hololens カーソルがUIの後ろに表示される GUIの描画順

f:id:thinline196:20170705133654p:plain



上の写真は真ん中に丸いカーソルが表示されています。もちろん、これはHololensで正面に表示される選択カーソルですよ。では、下の写真をみてください。

f:id:thinline196:20170705133833p:plain


こちらは、見えにくいですが、Buttonの後ろに隠れてしまっています。スクリプト的にはしっかりUIの当たり判定の前にカーソルを表示することになっているのですが。

unityの描画順

cfm-art.sakura.ne.jp


こちらのサイトさんで勉強させてもらいました。なんとなく知ってはいたものの、実際に問題に直面した際に正確な描画順がわかるのはありがたいです。以下印象含みます。

これは上にあるオブジェクト順に描画されていきます。これはおそらくほとんどの方が経験しているでしょう。


      • その他設定により決まる描画順(一部引用)---

Render Mode

CanvasのRender ModeがOverlayのものがCameraとWorldのものより必ず手前に表示されます。

CameraのDepth

Render ModeがOverlay以外のものでの組み合わせの場合、設定されているCameraのDpethが大きいものが手前に表示されます。

Sorting Layer

Render Modeが同一、もしくはCameraとWorldの組み合わせの場合はSorting Layerの下のものを選択しているCanvasがより手前に表示されます。

Order in Layer

Sorting Layerも一緒の場合は、Order in Layerが大きいものが手前に表示されます。

Plane Distance

Render ModeがCameraで、かつ同じカメラが設定されている場合にPlane Distanceの値が小さいものが手前に表示されます。





引用終わりーー


僕の場合は、カメラのorder in layerが悪さをしていました。


f:id:thinline196:20170705134909p:plain



hololensのアプリを作っているとだいたいこの辺りで一旦止まりそう笑





以上。