はじめに
ゆう@あんのうんです。 久々にUnity絡みのお話です。
解像度に合わせて画面のサイズを自動調整する
今回は、様々な端末が出てきている中、それぞれの解像度に合わせたSpriteとかの表示サイズを自動調整するやり方です。 カメラに以下を仕込む事で実現できます。
void Awake() { // 開発している画面を元に縦横比取得 (縦画面) iPhone6, 6sサイズ float developAspect = 750.0f / 1334.0f; // 横画面で開発している場合は以下の用に切り替えます float developAspect = 1334.0f / 750.0f; // 実機のサイズを取得して、縦横比取得 float deviceAspect = (float)Screen.width / (float)Screen.height; // 実機と開発画面との対比 float scale = deviceAspect / developAspect; Camera mainCamera = Camera.main; // カメラに設定していたorthographicSizeを実機との対比でスケール float deviceSize = mainCamera.orthographicSize; // scaleの逆数 float deviceScale = 1.0f / scale; // orthographicSizeを計算し直す mainCamera.orthographicSize = deviceSize * deviceScale; }