一般的に言えば、キャンバスには 3 つのレンダリング モードがあります。
1: キャンバスのレンダリング
1.スクリーンスペース - オーバーレイはオーバーレイモードです
このモードでは、キャンバスが自動的に画面いっぱいに表示されます。デフォルトでは、通常の選択モードである画面の前面に他の画面が表示されます。
2. 画面スペース - カメラ カメラ モード
同じキャンバスが自動的に画面全体を埋めますが、カメラの前のオブジェクトの位置を調整することで、キャンバスを覆うかどうかを調整できます
ただし、このモードを使用するには、選択後にレンダリング カメラで目的のカメラを選択する必要があります。
3. ワールド スペース ワールド座標モード
サイズは、カメラ内の他のオブジェクトと同じように設定された rect に基づいており、キャンバスはそのワールド ポジションに従って表示されます。
効果は以下の通り
知らせ:
モード 1 および 2 でのキャンバスの最大サイズは、ゲーム インターフェイスの適応に関連しています。これは、以下の図 2 の位置です。
2: スクリーン ピクセル
1.一定のピクセルサイズ
一定のピクセル サイズ
画面サイズに関係なく、UI 要素を同じピクセル サイズに保つ
スケール ファクター ズーム ファクター: キャンバス内のすべての UI 要素をこのファクターでスケーリングします。
単位あたりの参照ピクセル数 単位あたりの参照ピクセル: Unity の単位に対応するピクセル数
しかし、このモデルには次のような問題があります。
異なるデバイスに適応すると、固定ピクセルが適応の問題を引き起こします
2.画面サイズに合わせる
画面サイズに合わせて拡大縮小
したがって、一般的にはこのパターンを使用します
画面が大きいほど、UI 要素も大きくなり、UI は画面サイズに合わせてスケーリングされます
参考解像度 参考解像度:レイアウトデザインの解像度。画面解像度が大きい場合は UI が拡大され、画面解像度が小さい場合は UI が縮小されます。
スクリーン マッチ モード スクリーン マッチ モード 幅または高さの一致: 幅、高さを参照として使用するか、またはその間の値を使用して、キャンバス領域をスケーリングします。
拡張: キャンバス領域を水平方向または垂直方向に拡張するため、キャンバスのサイズが基準値よりも小さくなることはありません。
縮小: キャンバス領域を水平方向または垂直方向にトリミングして、キャンバスのサイズが基準値より大きくならないようにします。
Match : スケーリングで幅または高さを参照として使用するか、または両方を組み合わせて使用するかを決定します。
単位あたりの参照ピクセル: Unity 単位あたりの参照ピクセル
3.一定の物理サイズ一定の物理サイズ
未使用パターン
つまり、画面のサイズと解像度に関係なく、UI 要素を同じ物理サイズ (画面上の実際の物理サイズ) に保ちます。
3: キャンバス グループ
通常、統合制御コンポーネントの下でサブクラス オブジェクトとして使用されます。
4つの属性のみ
アルファ: 透明度
対話可能: 対話できるかどうか、そうでない場合は入力を拒否する
Blocks Raycasts: Blocking Rays: Graphic Raycaster によって放出された光線と衝突できるかどうか (選択された状態は、衝突に応答することです)。これは Physics.Raycast には適用されないことに注意してください。つまり、物理光線は UI 要素と相互作用できません。、マウスクリックが反応しない
親グループを無視: 親クラスのコンポーネントを無視します
つまり、親オブジェクトにブロッキング レイを追加します。
サブクラス パネル:
ボタンは引き続きクリックできます
4: レンダリング順序 レンダリング順序
UGUI では、レンダリング順序は Hierarchy の順序に従ってレンダリングされます。
つまり、裏が表を覆っている
サブクラスは親を覆い隠します
ここでは、前のコンテンツの血液バーの作成を参照し、マスクを使用して血液バーを覆い、血液バーを減らす効果を得ることができます
または、並べ替えレイヤーを使用してレンダリング順序を制御できます
たとえば、後ろのボタンは前のボタンを覆い、後ろのボタンは前のフォントを覆います。