LayerMaskを使って顔アイコンを表示させた場合のログページについて

94 views
Skip to first unread message

kumogakure

unread,
Jul 16, 2017, 3:49:22 PM7/16/17
to 宴ユーザーグループ
いつもお世話になっております。

この度LayerMaskを使って顔アイコンを表示させているのですが、
顔アイコンが表示されている際にログ画面に入ると、顔アイコンが消えず、
ログ画面より前に表示されてしまいます。
何か良い調整方法がもしあればご教授願えればうれしいです。

現在、顔アイコンのOrderは「1」に設定しております。

よろしくお願いいたします。

マッドネスラボ

unread,
Jul 16, 2017, 9:56:02 PM7/16/17
to 宴ユーザーグループ
おそらく、UIより手前に表示するカメラを作ってLayerMaskを設定しているのだと思います。
UIより手前ということは、バックログその他よりも手前に表示されます。
なので、バックログその他のLayerMaskもUIではなく、その手前になるようなLayerMaskを設定すれば良いかと思います。

kumogakure

unread,
Jul 17, 2017, 3:01:22 AM7/17/17
to 宴ユーザーグループ
度々の質問失礼いたします。

LayerシートでLayerMaskを「UI」、Orderを「1」としていますが
バックログより前に表示されてしまいます。現状新しくカメラ等は増やしておりません。


申し訳ございませんが、よろしくお願いいたします。

マッドネスラボ

unread,
Jul 17, 2017, 3:54:27 AM7/17/17
to utag...@googlegroups.com
すみません。勘違いしてました。

宴のUIのうち「AdvEnigne>UI」以下にある、メッセージウィンドウ、バックログ、選択肢表示などは全てOrderInLayerが0になっています。
この描画順は「AdvEnigne>UI」のCanvasのOrderInLayerで設定されています。
アイコンより手前に表示するには、ここの値を2以上にするなどすればできます。
ですが、それだとメッセージウィンドウもアイコンより手前に表示されることになってしまい、都合が悪いかと思います。

バックログ のみOrderを設定するには、
・BackLogオブジェクトにCanvasのコンポーネントをAddComponet
・CanvasのOverrideSortingのチェックを入れる
・OrderInLayerを2や10など手前に設定



・・・という設定をすれば可能です。

ただし、これはUnity側でバグが確認されています。
これはCanvas内にCanvasを入れ子で設定するという方法なのですが、
Unity5.6.0では入力が効かなくなります。
Unity5.6.1で修正されたはずなのですが、自分の環境(Unity2017)で試したところバグが再発しているようです。

上記の原因で入力が効かなくなる場合は、Unityの修正を待ったほうが良いかと思います。

マッドネスラボ

unread,
Jul 17, 2017, 4:44:02 AM7/17/17
to 宴ユーザーグループ
すみません。訂正です。
Unity2017では動きました。
下記のように、Canvasのほかに「GraphicRayCaster」もAddComponentしてください。



kumogakure

unread,
Jul 17, 2017, 2:15:42 PM7/17/17
to 宴ユーザーグループ
とても分かりやすくご教授いただき、ありがとうございます。
Unity2017にて、教えていただいたとおりに実行したところ、設定が上手くいきました。

この度は大変ありがとうございました。
よろしくお願いいたします。
Reply all
Reply to author
Forward
0 new messages