初めてのUnityで2Dシューティングゲームを作ってみよう!自分のペースで進める14ステップ

【Unity】2Dシューティングゲームの作り方:全14工程で初めてのゲームを作ろう!

こんにちは、ともくんです!

このページでは、僕がUnityを使って「初めて作り上げた」2Dシューティングゲームの工程を全てまとめています。

ブラウザで遊んでみる(別タブが開きます)

正直に言うと、このゲームはプログラミングをやったことのない僕が、独学で必死に調べて形にした「初挑戦」のゲームです。
なので、プロの方が見たら「もっとこう書けばいいのに!」という部分もたくさんあるかもしれません。

でも、「0から始めて、ちゃんと1本のゲームを作り上げた」という経験は、僕にとって非常に大きなものになっています。

  • 「ゲーム作りで何から手を付けたらいいのか分からない…」
  • 「とりあえず1本のゲームを自分の手で完成させたい!」

そんな方にとって、「攻略ガイド」のようになれればとっても嬉しいです。

ステップ1:ゲーム作りスタート!プロジェクト作成と初期設定

まずは、ゲーム作りの初めの一歩となるプロジェクトファイルを作っていきましょう!

このプロジェクトファイルは、簡単に言えばゲーム作りの大元となる設定のファイルで、今回は2Dゲームとしての初期設定を行っていきます。

初めてだと設定項目が多くて迷ってしまいますが、大事なポイントを絞って解説していきます!

ステップ1を読んでみる>>


ステップ2:ゲームの主役!キャラクター素材を準備しよう

プロジェクトファイルを作成したら、いよいよゲームの主役となるキャラクター素材を準備していきましょう!

ゲーム内に登場させるプレイヤーや敵をUnityエディターに配置していくだけでも、ゲームを作っている感じがしてワクワクしてきますよ。

ここでは、素材をインポートしてゲーム画面へ配置する方法はもちろん、『画像が表示されない!』と焦りやすいレイヤーの設定についても、しっかり解説していきます!

ステップ2を読んでみる>>


ステップ3:ついに動き始める!キー操作を使った移動処理

ここからは、いよいよプログラミング(C#)を使ってキャラクターを動かしていきます。

自分で書いたコードでキャラクターが動き始めると、やっぱり感動しますし非常に愛着が湧いてきますよ!

僕も初めて動かすことが出来た時、「おぉ~!」ってパソコンの前でひとりで声を出しちゃいました(笑)

プログラミングが全く未経験の方でも分かるように、丁寧に解説していきます!

ステップ3を読んでみる>>


ステップ4:敵へ攻撃開始!弾の発射処理とプレハブの仕組み

キャラクターが動くようになったら、今度はシューティングの要となる攻撃です!

ここでは、プレイヤーから弾を発射する仕組みを作っていきます。

Unityで非常に重要な機能となる『プレハブ(Prefab)』というものも登場してきます。

難しそうな言葉に聞こえますが、慣れれば非常に便利な機能なので一緒にマスターしちゃいましょう!

ステップ4を読んでみる>>


ステップ5:敵をやっつけろ!敵にダメージを与える処理

弾を発射できたけど、敵に当たっても何も反応してくれないと寂しいですね…。

なので、今度は『当たり判定』を作っていきましょう!

発射した弾が敵に当たると撃破できるようになるので、一気にゲーム感が出てきますよ!

ステップ5を読んでみる>>


ステップ6:今度は敵の番!画面のスクロールと敵の攻撃処理

今度は敵からプレイヤーへの反撃処理を作っていきましょう!

背景をスクロールさせて宇宙を飛んでいる演出を作り、移動してきた敵がプレイヤーに攻撃してきます。

ここはもう悪者になった気分で、どうやってプレイヤーをやっつけるかを一緒に考えちゃいましょう!

ステップ6を読んでみる>>


ステップ7:やられても復活!プレイヤーの当たり判定とリトライ処理

敵からの弾を上手く避けられなかったり、敵にぶつかってしまったら、今度はプレイヤーがダメージを受ける番です!

プレイヤー側に当たり判定の仕組みを作っていきましょう。

基本的には敵で作った当たり判定と同じですが、プレイヤーにはリトライで再挑戦させるようにしたり、敵の攻撃を止めさせたりと『ゲームの流れ』も一緒に作っていきます!

ステップ7を読んでみる>>


ステップ8:強敵登場!敵の複製とステージの作り込み

プレイヤーが何回も復活できるようになったなら、今度はもっと強い敵も作っちゃいましょう!

ここからは、ステージのバリエーションを一気に増やしていきます。

敵をたくさん複製させたりちょっと変わった動きをする敵など、プレイヤーが飽きないようなステージを作っていきます!

ステップ8を読んでみる>>


ステップ9:最高得点を叩き出せ!ライフとスコアを表示する

シューティングゲームを作るなら、やっぱり『スコア表示』させたいですよね??

ここでは、敵を倒した分だけゲーム画面にスコアを表示させたり、プレイヤーの残りライフを表示させる処理を作っていきます。

また、リトライしてもその数値を引き継げるように、裏側でちょっとした仕組みも作っちゃいます。

少し難しくなってきますが、ここが踏ん張りどころなので頑張って付いてきてください!

ステップ9を読んでみる>>


ステップ10:もう最初には戻らない!チェックポイントの作成

せっかく良いとこまで行ったのに、敵に一度でもやられたらスタート地点に戻ってしまう…。

こんな声を解決すべく、今度はチェックポイントの地点を作成してみましょう!

難しいステージを作っていくのもいいですが、こういうプレイヤーへの配慮も大事なゲームデザインになってきます。

ちなみに、僕は初めてチェックポイントを作れた時、あえて何度も敵にやられて復活するのを眺めていました(笑)

ステップ10を読んでみる>>


ステップ11:プレイヤーを強くする!お助けアイテムの作成

シューティングゲームでよく途中で出てくるアイテム、あれも作りたいですよね?

ここでは、プレイヤーのお助けアイテムとして、プレイヤーの速度アップや弾数を増やすアイテムを登場させます。

プレイヤーをより強くできるようになると、ゲームのやりがいも倍増していきます!

ステップ11を読んでみる>>


ステップ12:没入感を高める!音とエフェクトの作成

段々とゲームが仕上がってきましたが、なんかまだ弾を発射して敵を倒している感覚が薄いんですよね…。

これ、ゲーム画面や操作に合わせて、を付けてあげたりエフェクトを表示させることで、一気に改善されます!

音やエフェクトの仕組みを作るのは新しく覚えることもありますが、ここまで作れていれば難しいこともないはずです。

キーを操作したら音が鳴り弾が発射、そして敵に当たったら爆発する、何度もやりたくなっちゃいますよ。

ステップ12を読んでみる>>


ステップ13:いよいよ完成!最強のボスとエンディングの作成

ついにゲームとしてはクライマックスです!

ここでは、最後のラスボスとの決戦、そして倒した後のエンディング画面を作っていきましょう!

ラスボスと言えど通常の敵と作り方は一緒ですが…僕自身どうしてもレーザービームを発射させるようにしたくて、試行錯誤した内容が書かれています(笑)

もうここまで来れば、堂々とした1本のゲームですね。

ステップ13を読んでみる>>


ステップ14:みんなに遊んでもらおう!ゲームのビルドとアップロード

ゲームが完成したら、他の人にも遊んでもらえるようにしちゃいましょう!

最後に自分のパソコン以外でも動くようにする『ビルド』という処理を行い、そのファイルをネットで公開していきます。

ただ、そのままビルドするとゲーム画面が崩れてしまうことがあるため、少し調整も加えていきます。

全部が終わったら『できたー!!』と叫ぶだけです(笑)

ステップ14を読んでみる>>


最後までお読みいただき、ありがとうございました!

無事にゲームは完成しましたか?
今回の制作を通して、Unityでどんなことができるのか、なんとなく使い方が分かってきたと思います。

実は、僕が初めてゲームを作り上げた時、嬉しい気持ちだけでなく、「ここはもっとこう作りたかったな…」というモヤモヤした気持ちが残っていました。

その「もっと!」を実現させたくて、僕はブログでの発信を始めました。

このブログでは、ゲームをさらにパワーアップさせるための知識や、新しいスキルの記事をどんどん更新していきます。

「もっと面白いゲームを作ってみたい」
そう思ったら、ぜひ他の記事も覗いてみてください。

これからのゲーム作りを、一緒に楽しみながら学んでいきましょう!

Unity

【Unity】2Dシューティングゲームの作り方⑭:ゲームのビルドとアップロード

Unityを使った2Dシューティングゲームの作り方の14回目として、これまで作成してきたゲームの書き出し作業を行っていきます。コンピューター上で実行できるようにするビルドという作業を行い、ブラウザゲームとしてサイト内にアップロードしていきます。
Unity

【Unity】2Dシューティングゲームの作り方⑬:ボスと各シーンの作成

Unityを使った2Dシューティングゲームの作り方の13回目として、ボスキャラクターの作成、そして起動画面やクリア画面など各シーンの作成を行っていきます。ボスは通常の敵と同じように作成しつつ、特殊なレーザービームをアニメーションで作成していきます。
Unity

【Unity】2Dシューティングゲームの作り方⑫:音とエフェクトの作成

Unityを使った2Dシューティングゲームの作り方の12回目として、ゲーム内で音やエフェクトを表示する処理について紹介しています。ゲーム内で音声を流す場合はAudio Sourceコンポーネントを使い、エフェクトの作成はAnimationを使って作っていきます。
Unity

【Unity】2Dシューティングゲームの作り方⑪:お助けアイテムの作成

Unityを使った2Dシューティングゲームの作り方の11回目として、ゲーム内でのアイテム作成の処理について紹介しています。シューティングゲームでよくあるアイテムを配置して、そのアイテムを取るとプレイヤーの能力が上がるという処理を作っていきます。
Unity

【Unity】2Dシューティングゲームの作り方⑩:リトライポイントの作成

Unityを使った2Dシューティングゲームの作り方の10回目として、リトライシーンの作成とリトライ位置を変更する処理について紹介しています。敵からダメージを受けたら新たにリトライシーンを作成して一度そのシーンに遷移させてから、メインシーンに戻す仕組みを作っていきます。
Unity

【Unity】2Dシューティングゲームの作り方⑨:ライフとスコアを表示する

Unityを使った2Dシューティングゲームの作り方の9回目として、ゲームマネージャーを置いてスコアやライフを表示する処理について紹介しています。ゲームマネージャーを使ってライフやスコアのデータを管理しておくことで、次のシーンにも引き継ぐことができます。
Unity

【Unity】2Dシューティングゲームの作り方⑧:敵の複製とステージの作り込み

Unityを使った2Dシューティングゲームの作り方の8回目として、敵を複製してステージを作る処理について紹介しています。敵は同じ変数やメソッドを使うことが多いので、敵の基本クラスを作りそれを継承して新しい敵を作っていくことで、効率的に作り上げていくことができます。
Unity

【Unity】2Dシューティングゲームの作り方⑦:プレイヤーの当たり判定とリトライ処理

Unityを使った2Dシューティングゲームの作り方の7回目として、プレイヤーが攻撃を受けてリトライする処理について紹介しています。プレイヤーに弾が当たる仕組みは、敵と同じく当たり判定処理で作り、リトライの処理はシーンを読み込ませて作っていきます。
Unity

【Unity】2Dシューティングゲームの作り方⑥:スクロールと敵の攻撃処理

Unityを使った2Dシューティングゲームの作り方の6回目として、画面のスクロールと敵の攻撃処理について紹介しています。敵の弾の発射は、プレイヤーの弾の発射方法と作り方は似ていて、説明が少しかぶっている部分もありますが、発射間隔を設定したりとまた新しい機能が出てきます。
Unity

【Unity】2Dシューティングゲームの作り方⑤:敵にダメージを与える

Unityを使った2Dシューティングゲームの作り方の5回目として、敵にダメージを与える処理について紹介しています。オブジェクト同士が当たったことを判定するためには、当たり判定を作ってその中でダメージを与える処理を書いていく必要があります。