Edited at

ミニゲームを作ってUnityを学ぶ! [ タンクウォーズ編 - イントロダクション ]

More than 1 year has passed since last update.

Unity初心者の筆者。

チュートリアルの「玉転がし」「シューティングゲーム」は完成した!

次はミニゲームを自作してUnityで出来ることを増やしていこう!

そんな経緯がありまして、後学のために開発したゲームっぽい何かの作り方を1から解説していきます。

*使用言語はC#で解説内容は上記2点のチュートリアルが完了していることを前提としています。


お題:タンクウォーズ(戦車の対戦ゲーム)

どんなゲーム?

3D見下ろし型。

プレイヤーとコンピューターが上下にのみ移動できる戦車をそれぞれ操作して弾を撃ちあい、先に相手戦車のHPを0にした方が勝利。

スクリーンショット

tankwars_ss_1.jpg

完成品をプレイ(PC専用 -- WebGL)

こちらから(少し読み込み時間があります)

[W] 上移動

[S] 下移動

[マウス] 砲台の向き

[左クリック] 弾を発射

[Enter] プレイ開始

[Backspace] 最初から


作り方

1. 地面と戦車を配置する

2. 戦車の移動

3. 戦車の砲台を制御する

4. 弾の発射と管理

5. HPの管理とステージの作り込み

6. ゲーム全体の管理とシーンの制御

7. シーンを作り込む(前)

8. シーンを作り込む(後)

9. 相手戦車にAIを実装する


スクリプト

タンクウォーズのスクリプト(GitHub)

上記リンクより今回のスクリプトをダウンロードすることができます。

記事内ではどうしてもコードが飛び飛びになってしまって全体像が掴みずらいため、解説がわかりにくい場合なんかはこちらを見たら解決するかもしれません。

尚、こちらのコードは今回の解説用に書き直したモノではなく実際のWebGLアプリに実装されているコードのため、コメントアウトされた未使用のメソッドがあったり、そもそものメソッド名・フィールド名が異なる場合があるかもしれません。

その場合は記事の内容を優先してください。