AIゲーム制作ラボ

Unityタイトル画面の作り方:背景とUIを分けた改善実例

星継ぎの開始画面を作り直した実例。生成背景の余白、タイトル・任務・開始ボタンの配置、Unityの画像設定と配信容量の比較、PCとスマホ幅での確認方法を掲載します。

Libra

公開 2026年9月27日

この記事の要点3項目

背景画と操作UIを分けて制作。 文字とボタンは画像に焼かず、日本語表示と入力判定をゲーム側で管理しました。

残り2つの要点を読む
  • 背景追加の初案は約9.18MB。 画像のインポート上限を2048から1024へ変更し、約7.19MBに収めました。
  • 航行中の見た目検査では開始画面の不足を拾えませんでした。 9航路をPCと375px幅で別途確認しました。
目次8章
検証した環境最終確認 2026年9月27日
  • Unity 6000.6.0f1 / Windows / WebGL
  • 星継ぎv1.1→v1.2の開始画面改修(2026-09-21)
  • Chrome / PC1280×900・375×812(いずれもPC上)

書いてあるのは、この環境で実際に試した結果です。ツールの仕様や料金は変わるので、重要な判断の前には公式の情報も確認してください。

タイトル画面では、背景の主役と操作の主役を分けました。 星を渡るゲーム「星継ぎ」の開始画面は、最初、大きな無地パネルの中に説明とボタンを並べただけでした。私が「最初の画面チープすぎてやる気になれない」と指摘し、惑星と郵便船を見せる画面へ作り直しました。

この記事はその改修で使った構図・Unity設定・確認手順です。掲載画面と容量はv1.2の記録で、現在の公開版では任務や航路図がさらに変わっています。完成ゲーム全体のプロジェクトを配布する教材ではありません。

改修前の星継ぎの開始画面。大きなパネルに任務説明と開始ボタンが並ぶ
v1.1。航行中のHUDも残り、説明と操作が画面の中心を占めていた。
改修後の星継ぎの開始画面。大きなタイトル、惑星と郵便船、任務カードが並ぶ
v1.2。上で旅を見せ、下で任務と操作を選ぶ構成に変えた。

最初に直したのは、画像ではなく情報の順番

開始前に得点や残り時間を見せても、まだ何も始まっていません。そこで航行中のHUDを隠し、読む順番を大きなタイトル、惑星と船、任務カード、開始操作に変えました。音・動き・ゴーストの設定は下へまとめています。

領域役割改修で決めたこと
上部ゲーム名と世界観大きな日本語タイトル。背景の細部を置かない
中央旅の主役惑星・郵便船・軌道の絵を見せる
下部何をするか、どう始めるか任務を読むカードと目立つ開始操作
最下部設定音・動き・ゴーストを同じ場所で切り替える

これはボタンの装飾だけを変えた改修ではありません。ゲームを始める前に必要な情報を選び直したことが、画面を組み直す出発点でした。

背景画は、文字とボタンを載せる余白まで指定する

背景は内蔵の画像生成ツールで作りました。私たちが指定したのは「宇宙のきれいな絵」だけではなく、縦9:16、文字なし、上約22%に暗い余白、惑星と船を高さ23〜57%付近へ、下約40%を暗く静かにする構図です。これは生成への指示であり、画像内の領域を厳密に測った値ではありません。

  1. 1

    先にUIの置き場を決める

    タイトル・任務カード・開始操作を置く領域を決め、その背後を静かにする。
  2. 2

    背景には文字を入れない

    ゲーム名・任務名・ボタンはUnity側で描く。画像内の文字を日本語UIとして使わない。
  3. 3

    ゲームの画面へ重ねて判断する

    背景単体の見栄えだけで決めず、最長の任務名と説明が載った状態を見る。

惑星と船の絵は固定ですが、文字と任務は変わります。背景へ全部焼き込む方式をやめたのは、任務切替や日本語修正のたびに絵を作り直さずに済むからです。実際、後のv1.3では航路図と任務説明を変更しました。

Unityでは背景とUIを別々に描いた

画像をAssets/Resources/TitleVoyage.pngへ保存し、最初の画面のスタイルを用意するときに1回読み込みます。次は実装から抜いた背景部分です。ゲーム内の論理画面は450×800で、実画面への座標変換は周囲の描画処理が担当します。

// 部分抜粋。450×800のGUI座標へ変換済みの描画処理から呼ぶ。
Texture2D titleArt = Resources.Load<Texture2D>("TitleVoyage");
if (titleArt != null)
    GUI.DrawTexture(new Rect(0, 0, 450, 800), titleArt, ScaleMode.ScaleAndCrop);

このコードだけではボタンや画面比率への追従は完成しません。星継ぎでは文字をGUI.Labelで、操作を専用のRectで描画・判定しています。背景を切り取るScaleAndCropで主役が欠けないことも、縦画面で確認しました。

文字には日本語フォントを同梱しています。設定手順と抽出スクリプトは日本語フォントの設定・軽量化で扱います。背景用の絵とフォントの問題を分けて確かめました。

画像を足した初案は、配信容量が約9.18MBになった

最初のWeb版は9,177,626バイトでした。背景のインポート上限を2048から1024へ変更すると、配信4ファイルの合計は7,187,302バイトになりました。旧v1.1の7,054,982バイトと比べた増加は132,320バイト、約1.88%です。

配信4ファイルの合計(同じ作品の改修)
  • 旧v1.17,054,982バイト
  • 背景追加の初案9,177,626バイト
  • 上限1024のv1.27,187,302バイト

PNG単体のサイズでもGPUメモリでもなく、ビルド後に配信するファイルの合計。約MBは10進表記。

今回の設定はTexture TypeがDefault、sRGB有効、Mip Mapsなし、Read/Writeなし、アルファなし。WebGLのOverrideを有効にし、Max Size 1024・DXT1を使いました。設定後は再インポートし、Webをビルドし直しています。

この画像の設定を、すべての画像へコピーしない

不透明の背景画に使った設定です。透過する機体、縮小される3Dの面、ピクセルアートなら条件が違います。DXT1も全スマホに対する検証済み設定ではありません。対応形式はUnityの公式資料と対象端末で確認し、容量・画質・表示の成立を一緒に判断します。

画像だけを小さくしたつもりでも、最終的に確かめるのはゲームの配信容量でした。PNGの圧縮サイズを見て、ビルドも同じだけ小さくなるとは判断していません。

航行の検査が合格しても、開始画面は別に確かめる

以前の見た目検査は航行中を対象にしていました。その検査が合格していても、開始画面の情報の順番や魅力までは判定していませんでした。

改修では6任務と3練習、計9航路の開始画面を1280×900と375×812で撮り、18画面を確認しました。前・次の切替、出航、設定、保存の復元、Spaceでの開始も操作しています。小さい幅の設定と切替は45px以上を確保しました。

絵は見えても、補足文字が暗かった

症状
初案ではタイトル下の補足文字が暗く、背景に沈んでいた。
原因
文字スタイルと矩形の色で、色空間の変換を同じ扱いにしていた。
対処
文字色のガンマ変換を修正し、PCと375px幅で撮り直した。ソースの色指定だけで判断しなかった。

今回、開始画面で確認したこと

最長の任務名と説明がカードに収まる
背景の空押しで勝手に出航しない
前・次の切替と開始操作が両幅で使える
音・動き・ゴーストの設定が保存・復元される
開始後に任務を完走し、停止・再開・再生ができる

ローカルChromeの新規context・HTTPキャッシュ無効で起動も各幅3回測りました。中央値はPC621.1ms、375px幅602.1ms。これはPCでの計測であり、スマホ実機や外部回線の起動時間ではありません。人が遊びたくなるかという好みまで、検査合格で保証することもできません。

次の制作に残した確認方法

開始画面の不足は、航行中の点検を何度増やしても拾えませんでした。次は最小版の段階で、開始・プレイ・失敗・成功・再挑戦をそれぞれ撮り、説明と操作が成立するかを確認します。絵の追加では、UIの余白を決めてから制作し、配信容量と画面を一緒に比較します。

今回の記事は生成背景とUIの組み合わせが主題です。コードから絵と音を作る実例やWebビルド全体の軽量化とは、判断する対象を分けました。

よくある質問

よくある質問

画像を1枚入れれば見た目はよくなりますか?

今回は画像だけでなく、開始前のHUDを外し、タイトル・任務・開始操作の順に整理しました。背景がきれいでも、文字を隠したり操作が見つからなければ使いにくい画面になります。

2048から1024にすれば同じ容量になりますか?

なりません。元画像・圧縮形式・ほかのアセット・ビルド条件によって変わります。掲載値は星継ぎv1.2の配信4ファイルの合計で、画像単体の容量やメモリ使用量ではありません。

スマホ向けにもDXT1でよいですか?

この記事はPC上のChromeで確認したDXT1設定の実例です。スマホ実機や全GPUへの対応を検証したものではありません。対象端末の圧縮形式と実画面を別途確認する必要があります。

出典

出典

  1. 01Texture Import Settings window referenceUnity画像のインポート設定とプラットフォーム別設定の入口を確認。記事の実装は6000.6.0f1。
  2. 02Texture compression in WebUnityWebでの圧縮形式と対象環境への対応を確認。今回のDXT1設定を全端末へ一般化しない。

この記事は役に立ちましたか?

関連記事