現場レベルのゲーム制作が、すべてここで学べます。
この講座では、Unityを使って2Dの倉庫番ミニゲームを作成していきます。
倉庫番とは、プレイヤーを操作して箱を押し、決められたゴールの位置まで箱を運ぶパズルゲームです。ルール自体はとてもシンプルですが、ゲーム制作でよく使う大事な考え方がたくさん含まれている題材です。
- プレイヤーを1マスずつ動かす処理

- 壁にぶつかったら止まる処理

- 箱を押して動かす処理

- 箱の先に壁や別の箱がある場合は押せない処理

- 箱がゴールに乗ったかを調べる処理

- すべての箱がゴールに乗ったらクリアにする処理

- 再チャレンジできるようにする処理

このように作る機能を見ていくと難しそうに感じるかもしれませんが、今回はできるだけシンプルな作り方で進めていきます。
マップを自動生成したり、難しいデータ管理を使わずにプレイヤー・壁・箱・ゴールをUnityの画面上に手動で配置して、まずは仕組みを理解しやすい形で作成します。
そのため、UnityやC#にまだ慣れていない方でも、ひとつずつ処理を確認しながら進めやすい内容になっています。
倉庫番風ゲーム制作のための下準備をしよう
ゲーム制作を始めるためにUnityプロジェクトの作成から始めていきましょう。記事を読むタイミング次第で画面や環境が多少異なる可能性がありますが大きな問題はないと思います。
Unityのインストールがまだの方は以下の記事を参照して行ってみてください。

Unity Hubを開いてプロジェクトを作成しよう
まずは、Unity Hubを開きましょう。

Unity Hubは、Unityのプロジェクトを作成したり、インストールされているUnityのバージョンを管理したりするためのアプリです。
Unityでゲームを作るときは、基本的にこのUnity Hubから新しいプロジェクトを作成します。
Unity Hubを開いたら、左側にある 「プロジェクト」 タブを選択します。
その中にある 「新しいプロジェクト」 をクリックしてください。

Unityのバージョンを選ぼう
次に、使用するUnityエディタのバージョンを選びます。
この講座では例として Unity 6000.4.7f1 を使用します。
ただし、Unity 6であれば基本的には同じように進められるため、必ずしも完全に同じバージョンである必要はありません。

もしUnityエディタがまだインストールされていない場合
Unity Hubの「インストール」タブから「エディタをインストール」を選択し、Unity 6をインストールしておきましょう。

初心者の方は、ここでいろいろなバージョンが表示されて迷うかもしれません。
特に理由がなければ、Unity Hubで推奨されているUnity 6のバージョンを選んで大丈夫です。

Unityはバージョンアップに伴いエディタを変えて使っていくことも多いですが、もしApple StoreやGoogle Playにアプリをリリースした後のメンテナンスを行う際に環境を変えたくない方はサポート期間が長いLTSを選ぶのも良いでしょう。
テンプレートを選ぼう
今回は2Dゲームを作成するので、テンプレートは Universal 2D を選択します。

テンプレートとは、プロジェクトを作成するときの初期設定のようなものです。
Unityには3D用、2D用などいくつかのテンプレートがあります。
今回は2Dの倉庫番ゲームなので、最初から2D向けの設定になっている Universal 2D を選んでおくと進めやすくなります。
プロジェクト名を決めよう
次に、プロジェクト名を入力します。
プロジェクト名は自由に決めて大丈夫ですが、この講座では分かりやすいように、
|
1 |
倉庫番ゲーム |
という名前にしておきます。

もちろん、自分で分かりやすい名前に変更しても問題ありません。
プロジェクトを作成しよう
ここまで設定できたら、「プロジェクトを作成」 をクリックします。

初回起動時は特に時間がかかることがありますが、そのまま待っていれば大丈夫です。

作業しやすいようにUnityの画面と入力設定を整えよう
プロジェクトが開いたらすぐにゲームを作り始めることもできますが、その前に作業しやすいようにUnityの設定を整えておきましょう。
SceneビューとGameビューについて
Unityには、よく使う画面として、SceneビューとGameビューがあります。

Sceneビュー:ゲームを作るための画面
Gameビュー:ゲームとして表示される画面
ゲーム制作では、プレイヤーなどを配置したり、実際に動かしたときの見え方を確認したりする場面が多くなります。そのため、SceneビューとGameビューを同時に見られるようにしておくと、作業しやすくなります。
(画面の見方やレイアウトについてより詳しく知りたい方は以下の記事も参考にしてみてください)

Gameビューの配置を変更しよう
Unityの初期配置では、SceneビューとGameビューが同じ場所のタブに並んでいる場合があります。この状態でも作業はできますが、Sceneビューを見ながらGameビューを確認したいときに、毎回タブを切り替える必要があります。
これからゲームを作っていく中で、「シーン上ではちゃんと配置できているか」「ゲーム画面ではどのように見えているか」を同時に確認することが多くなります。
そこで、Gameビューを別の場所に移動して、常に確認できるようにしておきましょう。
Gameタブをクリックしたままドラッグし、Project や Console タブがある場所の右側あたりに移動します。そこでマウスを離します。

これで、SceneビューとGameビューを同時に確認できる配置になります。
Gameビューの比率を設定しよう
次に、Gameビューの画面比率を設定します。
Gameビューの左上あたりを見ると、Free Aspect と表示されている部分があります。

これは、Gameビューの表示比率を指定する場所です。初期設定では Free Aspect になっていることが多いです。
Free Aspectは、Gameビューのウィンドウサイズに合わせて自由に比率が変わる設定です。
試しにGameビューの大きさを変えると、画面の縦横比も変わります。

ですが、ゲーム制作中に画面の比率が毎回変わってしまうと見づらくて不便です。
そもそもこの画面サイズはプレイヤーのプレイする端末や操作環境によってどんな変化が出るかを確認するものでもあります。
たとえば、ある画面サイズではプレイヤーにちょうどよく見えていても、別の比率では画面の端が見切れたり、余白が多く見えたりすることがあります。
そのため、画面サイズや解像度に制限をかけたり、想定する比率を決めてどのプレイヤーから見てもほぼ同じような見え方になるように工夫することになります。
この辺りを本格的に設定することもできますが、ひとまず今回はUnity初心者向けということでPC向けのゲームを想定して、Gameビューの比率を 16:9 に設定し、これで問題ないことにしておきます。
Gameビュー左上の Free Aspect をクリックし、一覧の中から 16:9 を選択しましょう。

これで、Gameビューが16:9の比率で表示されるようになります。
もし画面サイズ変更に対する汎用的な対策を学びたい方は以下の参考記事を読んでみてください。

キーボード入力の設定をしよう
次に、キーボード入力の設定を行います。
今回の倉庫番ゲームでは、キーボードの上下左右キーを使って、プレイヤーを1マスずつ動かしていきます。そのため、スクリプトからキーボード入力を受け取れるようにしておく必要があります。
Unityには、入力を扱う仕組みとして Input System があります。
Input Systemはとても便利な機能ですが、初心者が最初に学ぶには少しわかりにくい部分があります。
たとえば、専用の設定ファイルを作成したり、Actionを登録したり、スクリプト側で入力イベントを受け取ったりする必要があります。
いろんなコントローラーに対応する必要がある本格的なゲーム制作では便利ですが、今回はまず、「キーが押されたらプレイヤーを動かす」という基本の考え方をわかりやすく学ぶことを優先します。
そこで、この講座では古い入力方式である旧Input Systemも使えるように設定します。旧Input Systemでは、スクリプトに次のような形で入力受付処理を書くことができます。
|
1 |
Input.GetKeyUp(KeyCode.A) |
これは、Aキーが押されて、離された瞬間に反応する書き方です。
コードを見たときに、「Aキーが離された時(Up)で反応しているんだな」とわかりやすいのが特徴です。
今回のような初心者向け講座では、このように直感的に読める書き方の方が理解しやすいです。
そのため、まずは旧Input Systemを使って、Unityでの入力処理に慣れていきましょう。
それでは、Unityの入力設定を変更していきます。画面左上のメニューから、Edit > Project Settingsを選択します。

Project Settingsウィンドウが開いたら、左側のメニューから Player を選択します。

Playerの設定画面を開いたら、下の方にある Other Settings を探します。

Other Settingsの中に、Active Input Handling という項目があります。

この項目は、Unityでどの入力方式を使うかを設定する場所です。ここを Both に変更しましょう。

Bothにすると、新しいInput Systemと古いInput Systemの両方が使える状態になります。
設定を変更すると、Unityから再起動を求められる場合があります。その場合は、表示に従ってUnityを再起動してください。

再起動後にプロジェクトが開けば、設定は完了です。
設定が終わったら、Project Settingsウィンドウは閉じておきましょう。

これで、Unityの作業画面と入力設定の準備ができました。
プレイヤー・壁・箱・ゴールを配置しよう
ここからは、実際にゲームに使うオブジェクトをシーン上に配置していきます。
素材を準備しよう
まずは、ゲームに使う画像素材を準備していきます。以下のリンクから素材をダウンロードしてください。
倉庫番ゲームの作り方-素材データ-のダウンロードはこちら >>
今回の素材フォルダには、プレイヤー用のひよこ画像、壁、箱、ゴールなどの画像素材が入っています。この講座では、これらの素材を使って倉庫番ゲームを作成していきます。







素材をダウンロードできたら、Zipファイルを右クリックし、「すべて展開」を選択して解凍しましょう。


解凍できたら、「倉庫番ゲーム画像素材」の中にさらに「倉庫番ゲーム画像素材」というフォルダがあると思います。

このフォルダをUnityのProjectウィンドウ内にドラッグ&ドロップしてください。

画像素材のサイズを調整しよう
素材をUnityに入れたら、次に画像の表示サイズを調整していきます。
Unityでは、画像素材をそのまま使うと、思ったより大きく表示されたり、小さく表示されたりすることがあります。そこで、画像の大きさをそろえるために、Pixels Per Unitという設定を変更します。
まず、Projectウィンドウ内にあるひよこの画像をすべて選択します。Shiftキーを押しながら画像をクリックすると、まとめて選択できます。

ひよこの画像を選択したら、Inspectorウィンドウの中にあるPixels Per Unitを「1000」に変更しましょう。

変更したら、Inspectorの下の方にあるApplyボタンを押して設定を反映します。

次に、ひよこ以外の画像を選択します。

こちらはPixels Per Unitを「1254」に変更しましょう。

こちらも変更したら、Applyボタンを押して反映します。

Pixels Per Unitとは?
Pixels Per Unitは直訳すると、「1単位あたりのピクセル数」という意味です。
もう少し分かりやすく言うと、画像の何ピクセル分をUnity上の1単位として扱うかを決める設定です。
例えば、今回使用する壁・箱・ゴールの画像サイズを見てみると、1254 × 1254pxになっています。

この画像のPixels Per Unitを1254に設定すると、画像の横幅1254pxがUnity上の1単位として扱われます。つまり、この画像はUnity上で横1マス、縦1マスの大きさになります。
例えばもし、2508 × 1254pxのような横長の画像があったとします。
この画像もPixels Per Unitを1254に設定すると、横幅は2508 ÷ 1254 = 2になるため、Unity上では横2マス、縦1マスの大きさとして扱われます。
つまり、Pixels Per Unitを画像の基準サイズに合わせて設定することで、画像を1マス、2マスというように、マス目に合わせた大きさで扱いやすくなります。
今回の講座では、壁・箱・ゴールを1マス分のオブジェクトとして使いたいので、画像サイズに合わせてPixels Per Unitを設定していきます。
ここまでで素材の準備は完了です。
次回からは本格的に倉庫番ゲームのプレイヤー素材を配置したりして、ゲームの動きを作っていきましょう。
プロジェクトファイルのダウンロード
今回の講座で作ったプロジェクトファイルのダウンロードリンクを用意しました。
倉庫番ゲームの作り方講座 第1回まとめ
お疲れ様でした!第1回となる今回は、倉庫番ゲームを制作するための環境づくりを行いました。
-
プロジェクトの作成: Unity Hubから「Universal 2D」テンプレートを選択し、2Dゲーム用のプロジェクトを立ち上げました。
-
画面と入力の設定: SceneビューとGameビューを同時に確認できるレイアウトに変更し、初心者でも直感的にコードが書ける「旧Input System」を有効化しました。
-
素材の準備: 画像素材をインポートし、「Pixels Per Unit」を調整してマス目に合わせたサイズで画像を扱う基礎を学びました。
これで、ゲームを作るための土台がしっかりと完成しました! 初めて触る設定も多かったかもしれませんが、ここをクリアすればあとは楽しいゲームの動きを作っていくフェーズに入ります。
次回は、今回準備した画像素材を実際にシーンに配置し、プレイヤーをキーボード操作で動かす処理を作っていきます。ぜひ引き続きチャレンジしてみてください!
次の記事:

現場レベルのゲーム制作が、すべてここで学べます。







コメント