Unity で UI パネルを開いた時にアスペクト比を固定するスクリプトと実装方法について説明します。

概要

UI パネルのアスペクト比を固定する方法はいくつかありますが、ここでは代表的な 2 つの方法を紹介します。

  1. Canvas Scaler コンポーネントを使う方法
  2. スクリプトで RectTransform を制御する方法

1. Canvas Scaler コンポーネントを使う方法

この方法は、Canvas Scaler コンポーネントの設定を変更することで、UI 要素のサイズを画面サイズに合わせて自動的に調整する方法です。

実装手順

  1. Canvas Scaler コンポーネントの設定:
    • Canvas オブジェクトに Canvas Scaler コンポーネントを追加します。
    • UI Scale Mode を Scale With Screen Size に設定します。
    • Reference Resolution を固定したいアスペクト比の解像度 (例: 1920×1080) に設定します。
    • Screen Match Mode を Match Width Or Height に設定し、アスペクト比を維持したい方向に合わせて Width または Height を選択します。
  2. UI 要素の配置:
    • Canvas の子オブジェクトとして UI パネルやボタンなどの要素を配置します。
    • 各要素の Rect Transform コンポーネントでアンカーを設定し、画面サイズに合わせて適切に配置されるように調整します。

メリット

  • 簡単な設定でアスペクト比を維持できる
  • 複数の解像度に対応しやすい

デメリット

  • UI 要素のサイズが画面サイズに合わせて変更されるため、意図しない表示になる場合がある

投稿者 james

記録の重要性と書く心地よさに目覚めてブログをはじめる。とりあえずブログは5年後の35歳を目標に頑張りたい。jamesの由来は機関車トーマスのジェームズが幼少期、なんとなく好きだったから。ブログのテーマは正直、定まっていないが、自分の身に起きる人生体験を多くコンテンツ化したい。無駄と思えることでもコンテンツ化できたなら、素晴らしいじゃない。とりあえず、まずは記事を300本書くことを目標に頑張りたい。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です