読者です 読者をやめる 読者になる 読者になる

いんでぃーづ

個人でゲーム開発してる上で吸収したモノたち紹介。UnityからGIMPまでなんでも。デザインとかゲーム論まで語っちゃうよ的なアレ。

MENU
{スポンサーリンク}

uGUIのサイズを変えたときに赤いバッテンが出る理由 : Unity

Tips Unity uGUI

GUIのPanelのサイズをいじってるときに、赤いコンニャロウに会ったことはありませんか。

f:id:sugar_affordance:20170111211336p:plain

これはアンカーが離れていると発生します。

アンカーの状態をチェック

UIを配置すると白いチョウチョマークが中央に現れています。

f:id:sugar_affordance:20170111211428p:plain

これがアンカーです。

これが、下のようになってたり

f:id:sugar_affordance:20170111211439p:plain

こうなっているときに

f:id:sugar_affordance:20170111211455p:plain

赤バツが発生します。

発生する仕組み

アンカーを離すと、RectTransformの表示が以下のように

f:id:sugar_affordance:20170111211536p:plain

横方向に離すとLeft, Rightが表示され、上下に離すとTop, Bottomという表示になります。

この場合の数値は上下左右の端から離れているピクセルが表示されているので、下の画像の赤い矢印が100ピクセル離れています。

f:id:sugar_affordance:20170111211703p:plain

俗に言うパディングというやつです。

このときPanelの幅をせばめると

f:id:sugar_affordance:20170111211928p:plain

赤バツが見事に表示されました。
この時、横方向の赤矢印に注目して見ると、左アンカーからの矢印と右アンカーからの矢印の範囲が重なっています。

早い話が表示が裏返っているということです。

対策

アンカーを広げるときは、RectTransformの値が裏返らないように調節しましょう。

RectTransformについて書いたものがあるので、ヒマな方はぜひ読んでね。

indie-du.com

indie-du.com

indie-du.com

Amazon.co.jpアソシエイト