【Unity】解像度対応の最適解とは?Canvas設定でUI崩壊を防ぐ!|初心者向け

当ブログではアフィリエイト広告を含みます
Unity

Unityでスマホゲームを作っていて、「タブレットでUIがデカすぎ!」「iPhone SEでボタン切れてる!」
そんなトラブル、心当たりありませんか?特に開発デビューしたての初心者のみなさん。

実はそれ、Canvasの設定をちょっと変えるだけで解決できるかもしれません。
この記事では、Unityで「解像度に強いUIを作るためのCanvas設定」について解説します。UI崩壊しないゲームを作るために、最初にやっておくべき設定を一緒に確認しましょう!

Canvas Scaler の設定がカギ!

Canvasのスケーリングに関する設定は、Canvasコンポーネントの中の 「Canvas Scaler」 にあります。

ここを正しく設定しないと、高解像度端末でUIが豆粒になったり、低解像度で巨大化して崩れたりします。

✅ 推奨設定

  1. UI Scale ModeScale With Screen Size
  2. Reference Resolution1080 x 1920(またはあなたの基準解像度)
  3. Screen Match ModeMatch Width Or Height
  4. Match0.5(初期値。縦横どちらもバランスよくスケーリング)

では、それぞれの項目について詳しく見ていきましょう。

① UI Scale Mode:スケーリングの基準を決める

まず最初に選ぶのがこの設定。

  • Constant Pixel Size:ピクセル単位でUIをそのまま表示。解像度によって見え方が変わる。昔ながらの方式。
  • Scale With Screen Size(推奨):解像度に応じてUIを自動でスケーリングしてくれる。スマホやタブレットでのズレ防止に◎
  • Constant Physical Size:インチなど物理的なサイズ基準で表示。実機のDPIに左右されるので扱いづらい。

スマホやPCなどさまざまな解像度に対応したいなら Scale With Screen Size 一択です。
Scale With Screen Size を選ぶと、次の項目「Reference Resolution」などが設定できるようになります。

② Reference Resolution:想定する基準解像度を決める

ここでは「このサイズの画面を基準にUIを作るよ」という解像度を指定します。
たとえば

  • 縦画面のスマホゲーム1080 x 1920
  • 横画面のコンソールゲーム1920 x 1080
  • タブレットも意識した高解像度1440 x 2560

この値を基準に、Unityが実行時の画面サイズと比較して自動でUIサイズを調整してくれます。
Unity5時代あたりの頃は低スペック中華android端末を想定して解像度を下げる、とか色々しきたりがあったものですが、今は端末のスペックが上がってきていますので、上記解像度で問題ないと思います。

極端に小さすぎたり大きすぎたりすると調整が不安定になるため、想定プレイ環境に近いサイズを選ぶのがベストです。

③ Screen Match Mode:縦と横、どっちを優先するか

画面の比率が変わったときに、UIのスケーリングを縦横どちらに合わせるかを選ぶ項目です。

選べるのは以下の3つ:

  • Match Width Or Height(推奨)
    → 縦横のバランスを調整するスライダー(Match)を使える
  • Expand
    → UIが画面をはみ出さないように、狭い方に合わせて拡大
  • Shrink
    → UIが画面に収まるように、広い方に合わせて縮小

通常のゲーム開発では、Match Width Or Heightが最も柔軟で扱いやすい選択肢です。
次に説明する「Match」の値でバランスを調整しましょう。

④ Match(Width Or Height):縦横のスケーリング比率を調整

Matchは、Screen Match ModeMatch Width Or Height にしたときに出てくるスライダーです。

  • 0.0 = Width(幅)優先
  • 1.0 = Height(高さ)優先
  • 0.5 = バランス重視(推奨)

たとえば、縦長のスマホで横幅を維持したいなら Match = 0 に、
一方で上下のUIレイアウトが崩れてほしくない場合は Match = 1 に寄せるとよいです。

とはいえ、よほど特殊なレイアウトをしていない限り、デフォルトの 0.5 が最も自然な表示になりやすいです。
画面比率21:9とかいう某銀河系スマホを相手にする場合は 01.0 がいい場合もあります。

UI崩壊を防ぐためにすべきこと

Canvas Scalerの設定だけでだいたいOKですが、それでも崩れるなら以下もチェック!

  • Anchor(アンカー)の設定は正しい? → 画面比率が変わってもUIの位置を維持できる
  • Layout Group(縦並び・横並びの整列)を活用してる?
  • Textの自動改行や縮小がオンになってる?(Best Fitは地味に便利)

こういった工夫を組み合わせることで、どの端末でも見栄えのよいUIを維持できます。


まとめ:UI崩壊を未然に防ぐCanvas設定を身につけよう!

Canvasの設定をちょっと工夫するだけで、「UIが小さすぎる!でかすぎる!消えた!バグった!」がぐっと減ります。

  • Canvas Scalerは Scale With Screen Size 一択
  • Reference解像度はあなたの「想定画面」を基準に
  • Matchは 0.5 が無難。でもゲームに合わせて調整OK
  • Anchor / Layout Group も合わせ技で!

こうした設計を習慣にしておけば、リリース直前にiPadでUIが崩れて泣く…なんてこともなくなるはずです。

次は Safe AreaNotch対応 なんかにも手を出してみてもいいかもしれませんね!

Unity/C# をもっと体系的に学ぶには?
【現役メンターに質問しながら短期集中】
👉️ Unityコースで学んでみる [PR]
タイトルとURLをコピーしました