Unity入門!チュートリアルで学ぶ2Dアクションゲームの作り方

Unity入門!チュートリアルで学ぶ2Dアクションゲームの作り方

「Unity」は、3Dゲーム開発エンジンとして有名ですが、2Dゲーム開発に必要な機能もさまざまに備わっています。

この記事では、Unityで作る2Dゲームの特徴やメリット、アクションゲームの作り方を解説します。

【入門編】Unityで作る2Dゲームの特徴とは?

『Unity』とは、2D・3Dゲーム開発のための統合開発環境が内蔵されたゲームエンジンのことです。2005年6月に3Dゲーム開発対応のゲームエンジンとしてリリースされ、近年においても数多くの開発現場で採用されています。

日本での3Dゲーム開発に関しては、UnityのほかにUnreal Engine4などの3D開発ツールも有名です。詳しくは、「【入門】Unreal Engine4とは?Unityとの違い、ダウンロード、UE5情報も」をご覧ください。

Unityは3Dゲームを開発する際に便利であるため、“Unity=3Dゲーム開発ツール”と考える人も多いでしょう。しかしUnityには、2Dゲームを作るために特化した機能が数多く搭載されています。

以下で、Unityを使った2Dゲーム開発のメリットについてみていきます。

なお、Unityに関する詳しい説明を聞いてからこの後を読み進めたいという方は、「【Unity入門者向け】ゲーム開発で使われるUnityを紹介! 」をご覧ください。

Unityで2Dゲームを作るメリットを解説

Unityを使用した2Dゲーム開発には多くのメリットがあります。

  • マルチプラットフォーム対応
  • タイルマップなど2Dゲーム開発に便利な機能が豊富
  • 参考文献や資料が多いため学習しやすい
  • 無償で利用可能

それぞれのメリットを詳しく解説していきます。

◎マルチプラットフォーム対応

Unityはマルチプラットフォームに対応しています。マルチプラットフォーム対応により、iPhoneとAndroid、WindowsとMac などでOSを分けて考えることなく、それぞれのプラットフォームで動くようにビルドできます。
AndroidはJava、iOSはSwiftというように、それぞれのOSで別のプログラムを書く必要がないため、開発効率が非常にアップします。

◎タイルマップなど2Dゲーム開発に便利な機能が豊富

2Dゲーム開発に必要な機能が充実している点もUnityのメリットです。代表的な機能にタイルマップがあります。ます目状の「マップ」に地面などの模様の「タイル」を貼っていくような操作で、キャラクターが歩く道などを簡単に作成できます。

◎参考文献や資料が多いため学習しやすい

Unityは、学習しやすいこともメリットです。非常に人気のある開発エンジンであるため、不明点をインターネットで調べれば、多くの場合で解決策が見つかるでしょう。
また、Unityが配信する公式チュートリアルもあり、初心者でも使いやすい環境が整っているといえます。

◎無償で利用可能

Unityは、無償で利用できるPersonalプランでも、さまざまな機能を利用することができます。さらに充実したサポートを受けたい場合は上位プランに移行することも可能です。
これからゲーム開発に挑戦したい人や、趣味で使いたい人にも利用しやすくなっています。

 

\文字より動画で学びたいあなたへ/

Udemyで講座を探す >

【Unityチュートリアル①】2Dゲームの基本

ここからは、Unityでの2Dゲーム開発について、基本的な操作をチュートリアル形式でご紹介します。

なお、Unityのインストールについては「【Unity入門者向け】ゲーム開発で使われるUnityを紹介! 」をご覧ください。

プロジェクトの作成、保存

まずはプロジェクトの作成および、保存方法を解説します。

1.Unityを起動させてください。

2.メニューからFile(ファイル)をクリックしてください。

メニューからファイルクリック

3.New Projectを選択します。

ニュープロジェクト選択

4.テンプレートの中から2Dを選択します。

テンプレートから2D

5.CREATEボタンをクリックすればプロジェクト作成の完了です。

CREATEボタンをクリック

6.保存は、メニューのFileをクリックします。

メニューのFileをクリック

7.Saveをクリックしてください。これで保存は完了です。

Saveをクリック

スプライトとは何か?使い方をチェック

スプライトとは、ゲームのキャラクターやアイテムなどのイメージを画面に表示させることができる2Dグラフィックオブジェクトです。

使い方は以下の通りです。

1.まず、Assetsフォルダーの中に使いたいキャラクターなどの画像をドラッグアンドドロップします。
多くの場合、プロジェクトでAssetsを管理する際は画像のように階層を作ったほうが扱いやすいでしょう。ただし、簡易プロジェクトであれば、Assetsの中に画像ファイルを入れることでも使用可能です。

画像をドラッグアンドドロップ

2.Assetsファイルにある画像をSceneにドラッグアンドドロップします。これで、スプライトを作成することができました。

Sceneにドラッグアンドドロップ

3.スプライトを使用するときは、インスペクターのTransformやSprite Rendererを利用します。

インスペクターのTransformやSprite Rendererを利用

タイムラインとは何か?使い方をチェック

タイムラインはキャラクターの動きや音声を管理できる機能のことです。この機能を使うことで、キャラクターを移動させることができます。

1.メニューからWindowを選択してください。

Windowを選択

2.Windowの中のSequencingからTimelineをクリックしてください。

SequencingからTimelineをクリック

3.ウィンドウの中にタイムラインが表示されました。このタイムラインウィンドウは自由に動かすことができるので、今回は画面の中央に配置しました。

画面の中央に配置

4.Projectの中にあるAll PrefabsからCubeを選択し、Sceneにドラッグアンドドロップしてください。

All PrefabsからCubeを選択

5.次にHierarchyからCubeを選択します。

HierarchyからCubeを選択

6.右のInspectorからAdd Componentボタンをクリックします。

Add Componentボタンクリック

7.Playablesを選択してください。

Playablesを選択

8.Playable Directorを選択します。

Playable Directorを選択

9.Playable Directorコンポーネントが追加されます。

Playable Directorコンポーネントが追加

10.次にCubeを選択し、タイムラインからCreateボタンをクリックします。

タイムラインからCreateボタンをクリック

11.任意の名前で保存してください。これで、Cubeとアニメーションをリンクさせることができました。

任意の名前で保存

12.タイムラインを使ってみましょう。タイムラインウィンドウのオレンジ色の丸ボタンをクリックすると、録音が開始されます。

オレンジ色の丸ボタンをクリック

13.0の地点にあるタイムラインを60までドラッグします。

タイムラインを60までドラッグ
タイムラインを60までドラッグします

14.X軸のpositionを5に変更して録音を止めてください。

positionを5に変更して録音を止める

15.再生ボタンをクリックすると、CubeがX軸方向に動くのがわかります。

.再生ボタンをクリックする

【Unityチュートリアル②】2Dアクションゲームの作り方

続いて、2Dアクションゲームの基本的な作り方について解説します。この記事では、ステージの設置やジャンプ、当たり判定などを見ていきます。

キャラクターが立ったり走ったりするステージを作成しよう

アクションゲームには、まず舞台が必要です。そのため、キャラクターが立ったり、走ったりするステージを作成していきましょう。

1.Hierarchyから2D Object>Tilemapを選択してください。

2D Object>Tilemapを選択

2.クリックすると、SceneにGrid(グリッド)が表示されました。GridをクリックするとSceneが網目状になったのがわかります。

Gridをクリックする

3.次に、Tile Paletteを使用します。先述の「タイルマップ」で見た通り、Tile Paletteは、タイル状の画像を貼り付けていくことができるパレットのことです。

Tile Paletteを使うには、タイルの画像を準備しなければなりません。今回のチュートリアルでは真っ白の画像を利用します。

4.まず、パレットと先ほど準備した画像を入れるファイルを用意します。パレットを入れるファイルをPallets、タイル画像を入れるファイルをTileAssetsとして、Assetsフォルダーの配下に作成しました。

画像を入れるファイルを用意

5.ファイルを作成できたら、メニューからWindow>2D>Tile Palletsを選択します。

Window>2D>Tile Palletsを選択

6.Tile Paletteが表示されました。

Tile Paletteが表示

7.左上からCreate New Paletteを選択してください。

Create New Paletteを選択

8.Createボタンをクリックし、任意の場所に保存してください。今回のチュートリアルではPalletsに保存しています。

任意の場所に保存

9.次に、画像をアセットに追加します。TileAssetsにwhitetileという画像を保存しました。

画像をアセットに追加

10.画像ファイルをTile Pallets上にドラッグアンドドロップします。任意の場所に保存してください。

Tile Pallets上にドラッグアンドドロップ

11.ブラシを選択し、パレットに追加したタイルを選択します。

タイルを選択

12.Sceneビュー上をクリックしていくと、ステージを作ることができました。

Sceneビュー上をクリック

当たり判定をつける

地面部分が出来上がったので、次は当たり判定の設定をしていきます。当たり判定は、キャラクターが地面の上に立つために必要となります。

1.先ほど作成したGridの中にあるTilemapを選択します。

Tilemapを選択

2.Add Componentをクリックします。

Add Componentをクリック

3.検索からTilemap Collider 2Dを探し、選択してください。

Tilemap Collider 2Dを探し、選択

4.画像のように、先ほど作成した地面に緑の線が浮かび上がります。これで、当たり判定の設定が完了です。

地面に緑の線が浮かび上がる

キャラクターをジャンプさせよう

次は、キャラクターにアニメーションをつけてジャンプさせていきます。

1.Hierarchyから2D Object>Spriteを選択してください。

2D Object>Spriteを選択

2.Assetsファイルの中にScriptフォルダーを作成します。

Scriptフォルダーを作成

3.次にScriptフォルダーを右クリックして、Create>C# Scriptを選択してください。ファイル名は任意で構いません。今回はPlayerControllerとしました。

Create>C# Scriptを選択

4.スクリプトファイルに下記のコードを追加してください。

5.次に、先ほど作成したSpriteのインスペクターからAdd Component>PlayerControllerを選択してください。

Add Component>PlayerControllerを選択

6. Rigidbody 2Dをコンポーネントから追加し、Gravity Scaleを0に設定します。

Gravity Scaleを0に設定

7.実行してください。Spriteが地面から離れてジャンプしているのがわかります。

実行する

この記事では、Unityで作る2Dゲームの特徴や基本的な使い方、2Dアクションゲームの簡単な作り方を解説しました。Unityには2Dゲーム開発に便利な機能が豊富で、スムーズに開発を行うことができます。

また、今回はアクションゲームだけを取り上げましたが、もちろんPRGゲームなどの開発も行うことが可能です。ぜひUnityを使って2Dゲーム開発をしてみてください。