Unityの「2Dシューティングゲーム」チュートリアルを作ってみた

はいどーもこんにちはニートもしくはフリーランサーのツミオです。
本日はUnityの「2Dシューティングゲーム」チュートリアルの「ゲーム制作編」を作ってみました。
https://github.com/unity3d-jp-tutorials/2d-shooting-game/wiki

ライセンスがどうなってるのかよくわからないので、画像はなしでいきます。
そこんとこだけご了承ください。

シューティングの概要

どんなゲームやねんということを先にまとめておきます。

・弾は自動で連射される
・縦スクロールシューティング
・スコア・ハイスコア機能あり
・敵の種類は一つだけ
・ただしWaveを作って様々なパターンを作成可能

応用すれば、きちんとしたシューティングも普通に作れそうだなあという印象を受けました。
ホーミング弾とかの弾の種類は自分で作らにゃダメですが……。
数学ができないので頭が痛いですね。

工夫したところ

僕が作成にあたって工夫したのは以下の通り。

・関数を機能ごとに名前をつけて細かくわける(Updateとかにまとめてぶち込むことはしない)
・UIの作成はuGUIを使用
・コードでわからない部分は積極的にリファレンスを参照する

関数ごとに細かく名前をわけたのは、単にそちらのほうが僕がコードを理解しやすいからです。
また、uGUIでUIを作成した理由は、現在のUI制作のデファクトスタンダードはuGUIだからです。
チュートリアルで使用されているGUI Text等はレガシーUIの一部であり、将来のバージョンでは削除される可能性もあります。
実際、使用しようとすると警告が出るはずです。

あとはEmitterクラスで敵のWaveを生成するとき、Waveの起点位置がEmitterオブジェクトの位置とイコールになっていたため、これをWaveのプレハブの位置に変更しておきました。
他はほぼそのまま作ってます。

意外と勉強になる

簡単なチュートリアルなので基本的な機能しか使われていませんが、それでも「おっ、これってそういう意味なんだ」という発見が数多くありました。
例えばビューポートという用語ですが、これの意味がチュートリアル内で非常にわかりやすく説明されています
Unityの勉強をしたいUnity初心者の方にピッタリの内容です。
あ、Mecanimも使ってますよ。
ただC#の勉強としてはほとんど役に立たない印象です。
今のところ「ゲーム制作編」までしか触っていないので、今晩にでも「モバイル編」等も実際にやってみたいと思います。

ローグライクゲームのチュートリアルも作ってみたい

「公式のチュートリアルってなんか難しそうなんだよなあ」と思っていましたが、やってみると全くそんなことはなく、むしろ『Unityではじめる2Dゲーム作り徹底ガイド』よりも随分と易しい内容でした。
Unity初心者の方は触ってみても損は絶対にありません。
『Unityではじめる2Dゲーム作り徹底ガイド』も深いところまで突っ込んでいて僕としてはよかったのですが、誤字脱字や設定ミスがほとんどない分、公式チュートリアルに軍配が上がるかなあと思います。

次はローグライクゲームのチュートリアルもやってみたいですね。
https://unity3d.com/jp/learn/tutorials/s/2d-roguelike-tutorial
が、なんかこれ、動画なんですよねえ。
文字に起こされてるなら多少は英語も読めるんですが、リスニングは全くできないので、ウーン……。
言語の壁に阻まれますねえ!

フォローする