お久しぶりです!
しばらく体調を崩して投稿お休みしていました。
本日からこのブログを再開していくつもりなのでよろしくお願いします!
ブログをお休みしている間に2Dシューティングゲームを開発していました。
この記事では、具体的なソースコードは紹介しませんが、ゲームを作るのに利用した教材などを紹介していきます。
今回作ったもの
ジョイスティックで青い機体を操作し、敵(赤い機体)の攻撃や小惑星の衝突を避けながら、弾丸ボタンを押してビームを放ち敵を倒したり、小惑星を壊すことでドロップされる鉱石を集めることでスコアを稼いでいくゲームです。
ステージの最後にはボスが出現します。
このボスは弾幕ゲームのように大量の弾丸を放出するのでプレイヤーはこれを避けながらボスを倒す必要があります。このボスを倒せばゲームクリアです。
ゲームの素材について
このゲームの素材は全て無料で手に入るものを利用しました。
その中でも最もおすすめできるのはUnityが公式に出しているチュートリアルで使うための素材です。
https://github.com/unity3d-jp-tutorials/2d-shooting-game/wiki
こちらのサイトから“このチュートリアルを始める前に”を選択して、ダウンロードページからチュートリアルで使用するプロジェクトファイルをダウンロードしましょう。
おすすめの教材
ぼくがこれを作るために使った教材はUdemyです。
その中でもぼくは嶋津恒彦さんとナオさんのコースを参考にしました。
https://www.udemy.com/course/unity2d-shooting/#instructor-2
このコースにはC#言語の基礎やUnityでゲームを作るためのノウハウが含まれていました。そしてシューティングゲームを作るのためのソースコードを説明されながら、それを真似するだけでちゃんとしたゲームが作ることができました。
Udemyの良いところは動画を見て真似するだけで作業が行えるところですね!
このコースを見るだけでシューティングゲームを開発するためのスキルは取得できました。
もちろんこのコースを真似ただけでは、ありきたりなゲームになってしまうので、素材を変えたり、新しい要素を加えたりして、どうやったら面白くなるのか工夫していくことが重要で、それがぼくにとって一番勉強になりました。
ぼくが行った勉強方法
ゲームを面白くする
上記のコースが終わった頃には2Dシューティングの基礎のようなゲームを作れるようになりましたが、正直それだけではありきたりで質素なゲームだと感じてしまいました。
先ほど述べたように、ぼくはどのようにしたらゲームが面白くなるのか考え、それを取り入れることでゲームを作る勉強をしていました。ここではぼくが行った具体例を紹介していきます!
障害物の設置
元々のゲームでは障害物は敵とそれが放つ攻撃だけでした。
ぼくはこのゲームのコンセプトを宇宙にしたので宇宙に関係する小惑星をこのゲームに登場させました。
この上の画面のグレーの小惑星にプレイヤーが当たるとゲームオーバーになってしまいます。
しかし小惑星にビームを当てて破壊すると鉱石がドロップします。
この鉱石をゲットすることでスコアが増え、ハイスコアを高くすることがこのゲームのひとつの目標です。
この要素を追加するのは非常に簡単でした。小惑星の生成方法は元のゲームの敵の生成方法とほとんど同じです。
このように動画によって得た知識を自分で工夫して利用することが効率的な勉強方法かな?と思って取り組んでいます。
まとめ
とても簡単なものではありますが、実際にゲームを作り上げたときは非常に嬉しい気持ちになりました。
でも、このゲームはぼくの中では完成品とは言えないので配信はしません。
今後も誰かに面白いと思ってもらえるようなゲームが作れるように頑張ります!
ここでひとつ報告させてください。
以前の報告では1週間にひとつゲームを作ると言いましたがスケジュールの管理が難しいため不定期の制作にします。Game a weekはもう少し慣れてから取り込もうと思います。
では、また明日!
コメント