ユニティ キャンバス

一般的に言えば、キャンバスには 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 の順序に従ってレンダリングされます。

つまり、裏が表を覆っている

サブクラスは親を覆い隠します

ここでは、前のコンテンツの血液バーの作成を参照し、マスクを使用して血液バーを覆い、血液バーを減らす効果を得ることができます

または、並べ替えレイヤーを使用してレンダリング順序を制御できます

たとえば、後ろのボタンは前のボタンを覆い、後ろのボタンは前のフォントを覆います。

 

おすすめ

転載: blog.csdn.net/jijikok/article/details/128875237