UnityUnityで2Dシューティングをつくろう2Dとは言わずもがな二次元のことである。二次元のシューティングということである。ここで言うシューティングは、現実社会すなわち三次元に対しての鬱屈した感情・暴力性のはけ口のことを指す。人は誰しも高位の次元に対し尊敬の念を抱き、低位の次元に対しては憎悪の念を抱くものである。えぇ......、ちょっと何を言っているのかわかりませんね。この導入何度目ですかね......。つくりゅそれじゃあそろそろ、終わりに向けてやっていきましょう。Unity前回記事inujini.hatenablog.com前回はなんか色々やりました(雑)。今回はパラメータなどを調整していきます。敵のHPとか攻撃力とかそういったやつを宣言して実装していきます。~}新しめのUnityだと元のコード、GetComponent使うときは明示的に宣言しろって怒られる。何入れるかわかんないけど、適当に入れて動かしていきましょう。ヒントはBulletコンポーネントなんだと思う。これを動かすとこうです。HP256にしてみた(バキュラかな...?)。破壊できない......。できたのが確認できたので、ダメージアニメーションをつくっていきます。Animatorを開いてこれを作ります。ここの箇所はスクリプトのこととか考えず、わりと直感的に動かせていい感じです。Dummyを使って何もしない状態を管理していくってのは勉強になりました。できたのでダメージ受けたときにアニメを呼び出す処理を書いていきます。}}作ったアニメーションをスクリプトのほうで呼び出してこうなるそうです。いいことですが、うっかりベースレイヤーを削除してしまい、このアニメーションにするのに偉い時間かかってしまった。ソース以外のところでつまづくというね......。アニメーションのやり方わかったのでついでに自機の無敵時間も追加していきます。無敵の判定処理って色々あるだろうけど、今回は敵との接触判定をなくすことで無敵にします。2D)を書けちゃうせいでスクリプト全然書かない。次はスコアを実装していきます。スコアの文字を置きーの、スクリプトを書きーのとやっていきます。適当に文字を配置していきます。GUITextが最新だと非推奨ってことなんで、UI使っていきます。前回オリチャー発動した時は、テキスト表示だけだったから特にスクリプトに影響することなかったけど今回はスコア何でバリバリコード書きますね。置いたので、コード書きまーす。ハイスコアを取得する。保存されてなければ0を取得する。}}書き換えはこんな感じでしょうか。動かなくなったら確認しましょう。このままだと敵を倒した時のスコアが全然追加されないのでそっちの処理も書いていきます。セーブ&ロードはPlayerPrefsってのを使えばいいそうですね。}}これでスコアとか、良い感じにやってくれるそうですよ(左上)。いじればスクリプトをいじることなく動かせるそうです。そんな感じで長きにわたって2Dシューティング作ってみました。途中脱線しなければ一週間もかからない内容だったんですけどねぇ......。してこうなった......。最初に作ったスプライトは結局使うことなかった......。いつかは完全版にしたいものです。残りはモバイル対応の話なんだけど、そっちは気が向いたら更新するかもしれないししないかもしれないってことでここで一旦終了です。次回は何を終わらせましょうかね......。他にもUnityやっている方がいて書籍とか挙げているんですけど、公式チュートリアルに書いてある以上の学びがあるのかどうかってところで手を出せずにいる。エフェクト関連の処理についてとかは結構気になるけどなにかないかね......。次回も何作るか未定だけど公式から適当にチョイスしてやっていこうと思います。(2)ブログアメブロ[トップへ]はてなブログをはじめよう!andronさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。