【Unity】ウィンドウやディスプレイのサイズを取得する
2022-6-29 | Unity
Unityでアプリケーションのウィンドウやディスプレイのサイズを取得したい!セーフエリア(スマホでノッチなどを含まない範囲)も取得したい!
概要
この記事では、Unityでアプリケーションのウィンドウやディスプレイのサイズ、セーフエリアを取得する手順を掲載する。
仕様書
環境
- Unity 2021.3.3f1
手順書
まず、アプリケーションのウィンドウのサイズを取得する手順。
Screen.width
で横幅を、Screen.height
を高さを取得できる。
int w = Screen.width;
int h = Screen.height;
// ウィンドウの横幅を表示する
Debug.Log("Screen.width: " + w);
// ウィンドウの高さを表示する
Debug.Log("Screen.height: " + h);
次にアプリケーションを実行してるウィンドウが存在するディスプレイの解像度を取得する手順。
Screen.CurrentResolution.width
で横幅を、Screen.CurrentResolution.height
を高さを取得できる。
int w = Screen.CurrentResolution.width;
int h = Screen.CurrentResolution.height;
// ディスプレイの横幅を表示する
Debug.Log("Screen.CurrentResolution.width: " + w);
// ディスプレイの高さを表示する
Debug.Log("Screen.CurrentResolution.height: " + h);
最後にセーフエリア(スマホでノッチなどを含まない範囲)の矩形範囲を取得する手順。
Screen.safeArea
でセーフエリアをUnityEngine.Rect
クラスで取得できる。
Rect safeArea = Screen.safeArea;
// セーフエリアの始点xを表示する
Debug.Log("x: " + safeArea.x);
// セーフエリアの始点yを表示する
Debug.Log("y: " + safeArea.y);
// セーフエリアの横幅を表示する
Debug.Log("width: " + safeArea.width);
// セーフエリアの高さを表示する
Debug.Log("height: " + safeArea.height);
まとめ(感想文)
様々なディスプレイのサイズに対応するアプリケーションを作るにあたって、ウィンドウのサイズの情報は必要になることが多いかもね!
特にモバイル向けの開発だとセーフエリアの取得はほぼ必須だと思う。