はじめに
BlenderとUnreal Engine 4の勉強を再開しています。今回の目標は3Dで動かせるキレイなモバイル向けゲームを作ることです。
前回まで
前回はHPが0以下になるとプレイヤーキャラクターが死亡する設定をしました。
今回の作業
これまでの設定では「敵キャラクターのコリジョンに接した時にダメージを受ける」ので、攻撃時に手が当たると、こちらもダメージを受けてしまうようになってしまっています。
これを修正したいと思います。
適切な距離からの攻撃時はこちらのダメージだけを与えるようにしたいです。
しばらく調べたり考えてみたりして思いついたのが、コリジョンの設定でした。
プロジェクト設定からコリジョン設定を追加します。
攻撃用コリジョン(WeaponCollision)と敵キャラクター用コリジョン(EnemyCollision)を作りました。
相互に重なるようにしたいので、Default ResponseはOverlapにしています。
プレイヤーキャラクターの攻撃用コリジョン(WeaponCollision)はカスタムで全てOverlapにして、
敵キャラクターには、新しくCapsuleComponentを覆うようにコリジョンを作りました。
さらに、敵キャラクター用コリジョン(EnemyCollision)を設定して、
攻撃用コリジョン(WeaponCollision)を無視(Ignore)するようにしました。
こちらの攻撃が敵のCapsuleComponentに当たると敵にダメージが入るけど、
敵のコリジョン(EnemyCollision)からはこちらの攻撃時のコリジョンは無視されて、
こちらにダメージが入らなくなったと思います。
ここまで
これで攻撃時にこちらからのダメージだけが入るようになりました。
敵に接近しすぎるとダメージを受けるようにもなっています。
より良いやり方がありそうな気もしますが、自分の能力では現時点ではこれが限界でした。
もっといろんな機能を使いこなせるように勉強し続けていきたいと思います。
今日はここまでにします。次回も続きを作っていきたいと思います。
(今回の作業時間:180分)
>次の記事
<前の記事