Unity初心者が無謀にもShooting Game作りに挑戦する[酷い]
前回の記事ではUnity 4.6 Tutorialを行いましたが、今回はタイトル通りシューティングゲームを作ります。※Unity2日目の超初心者が書いた記事です。テラシュールウェアブログをいろいろ参考に適当に作ったときの記録です。
Contents
簡単なタイトル作り
タイトルとスタートボタンだけの画面ですが、Buttonが押されたときの処理ってどう書くの?別シーンに飛ぶにはどうすれば?を調べて実装します。
UI Buttonが押されたときの処理を書くには。
UI BUTTON (Unity公式の動画ページ)
あるSceneから別のSceneへ推移するには。
Unity 別のSceneを呼び出す Application.LoadLevel
自機やマップなどをAssets Storeから探す
とりあえずモデルデータ等はまったく作れないので、フリーで使えそうなありがたいAssetsをプロジェクトに取り込みます。
地面用Assets:Simple Modular Street Kit
自機用Assets:PA SciFi Enemies and Vehicles
マップを作成する
Simple Modular Street Kitを使ってそれっぽいマップを作成します。今回は重要ではないので適当に配置して作成しました。ただマップがかっこいいとモチベーションが違うよね。下のマップでは一部ポリゴンが重なっていて、表示がちらつく部分がありますが見なかったことにします。
自機とマップの当たり判定
前回のチュートリアルではあまり出てこなかったので初心者特有の「地面すり抜けちゃう」現象に少しはまる。
自機の移動、カメラ処理
前回のTutorialのコードをAnimetor部分以外をコピペしてきました。とりあえず自機が移動できることを確認。自機の移動に伴い、カメラも追従してくることを確認。
弾を準備
Sphereを作ってPrefabに登録。テクスチャーは適当にAssets Storeから使用。多分これを使用。Tileable Sci-Fi Texture Pack-1
弾を撃つ処理
自動で撃ちっぱなしにすることにしたので、弾の生成と一定間隔での実行処理を調べました。
【Unity】スクリプトからPrefabのインスタンスを作る方法
敵を準備
適当なモデルをあてがいPrefab化しておく。
敵が死ぬ処理
弾と敵が当たった時を検出する。イベントで処理。
敵が自機に向かってくる処理
TurorialでもNavmeshを使用しました。ここでも使用することにします。
UnityでMMDモデルを、タップした位置まで歩かせる手軽な方法
自機と敵とのヒット処理
敵と弾との当たり判定処理と同じことだが、コンポーネントにアクセスする方法がわからず調べた。
【Unity】特定のゲームオブジェクトやコンポーネント、スクリプトにアクセスする
とりあえず出力結果
十字キーで移動、自機はマウスの方向を向くようになっています。ゲームオーバーは無し。何も面白くはないよ。BGMはBump Footを使用。
実行ページ(音が出ます)
Buildして思ったのですが、使用していないAssetsも実行ファイル群の中に含まれるんだろうか。容量が多いんだよねぇ・・・。
感想
今回はほぼ0から、前回行ったTutorialと同じことを自分で行ってみるのが目的でしたが思った以上につまずきますね。ここまでたどり着くのに約16時間程度。ただ普通に考えて初心者が16時間程度でここまで作れるのが驚異的ですよね。Unityってすごいです。
次回は何やろうかな。