読者です 読者をやめる 読者になる 読者になる

エディトリアルデザイナーのアプリ制作日記

Unityで遊ぶ個人開発者のメモ書き

Unityアクションゲーム制作記 その3 移動&アタックコンボ

 ということで、キャラクターの移動の補足とアタックコンボの実装です。

youtu.be

 静止状態からの4連コンボと走り後>3連コンボの2つを入れてみました。どちらも見た目は一緒なのですが、いずれ走り後のコンボには最後のアタックに吹き飛ばしをつけたりして差別化をしていきます。

 ちなみにプレイヤーのアニメーションコントローラーの全体図がコレです。見ての通り、ジャンプ要素はバッサリカットしました。操作系はラジコンタイプで、コントローラーパッドの上下で前進・後退、左右で右・左回転です(いまのところは)。

f:id:hamazakifactory:20160616093546j:plain

 Locomotion部分のブレンドツリーは、ユニティちゃんのサンプルそのままです。

f:id:hamazakifactory:20160616093636j:plain

 そして歩行部分の条件はこの通り。※画面は適当に加工してあります。

f:id:hamazakifactory:20160616095129p:plain

  武器を構えた待機モーション(Idol_C)と、武器を下ろした待機モーション(Idol_B)の切り替えに条件はついてませんが、これは単純にIdol_Cを指定時間再生したら自動的にIdol_Bへ移動するようにしたためです。厳密に●秒経ったから待機モーションを切り替える必要もないなら、スクリプトでわざわざカウントする必要もないですしね。

f:id:hamazakifactory:20160616095515p:plain

 コンボ部分はこんな感じ。 攻撃ボタンを制御しているスクリプトからAttackFパラメータがtrueになったらIdol_B&Idol_Cからは、一段目の攻撃へ。移動中(Locomotion)なら移動速度(Speedパラメータ)によって、連続攻撃の発生先を変えます。その後は、アニメーターのBehaviourスクリプトを使い、そこで攻撃ボタンが押されているかどうかを判定して、押されていたらAttackFをtrueにして、二段目、三段目〜と進めていきます。この判定部分をタメや連打に変えることで、バリエーションを増やせそう。

f:id:hamazakifactory:20160616113210p:plain

  ちなみに今回のゲーム制作にあたって参考にさせていただいているのが、かめくめちゃんのゲーム制作ブログ、「Unityを使った3Dゲームの作り方(javascript)」

http://gametukurikata.comです。アクションゲームに必要なネタを、基本操作から丁寧に手順を追って説明してくれているので、とてもわかりやすいです。

 今回も大いに参考にさせていただきました。ありがたやぁ。

Unityのアクションゲームで連続攻撃を実現する方法 | Unityを使った3Dゲームの作り方(javascript)

 次は、敵キャラクターと判定もろもろ。ようやくゲームっぽくなるかな。がんばろ。