AIキャラ010 ①Playerがダメージを与える設定 Apply Damage ②AIの死亡処理 Disable Movement

Опубликовано: 05 Август 2026
на канале: STUDIO C-illy_B
70
0

参考動画
   • 【UE4でTPSゲーム制作実況】#23 ダメージ処理【メタルギアソリッドをUE4で作る】  

動画内で使ったのは参考(=リンク先の)EAIだけ=playerは基本的にできあがったノードを使っている。

わかったこと
①死亡処理(死ぬときのアニメーション)のアニムモンタージュは複数準備する必要あり(=ランダムを使う場合)
②play anim montageはあまり好まれていない=play montageを推奨するYouTuberが複数いた。
③montageを使うにはslot default slotが必要
自分自身で追加した設定=bp eai -shoot -add delay =撃つ間隔をdelayで設定した。

問題点:AIに1回ダメージを与えたあと、AIは動かなくなる。=修正必要
理由:参考動画の最後の方で、敵にダメージを与えているがアニメーションが機能していないように見える。(=play anim montage)

ここからの説明はあくまで参考動画↑の内容。

アニムモンタージュの作成
select animations (getting hit) -rc -create -create anim montage

playerがダメージを与える処理
bp chara
line trace by channel (既存) -apply damage
-outhit/line trace by channel -add hit/break hit result/hit actor -damaged actor -base damage=10

AIがダメージを受け取る処理
bp eai
event any damage
add variable -name health -float -default val=100
event any damage -SET/health
damage/event any damage -minus (-) -health/GET -health/SET
注意:health - damageになるようにする(計算式)
health/SET -branch -condition ON
output/SET/health -add <= (0.0) -condition/branch

AIの動きを止める
add character movement (component) -add target/disable movement -true/branch
add mesh (component) -target/set simulate physics -simulate ON
set simulate physics -disable movement
add capsule component -add target/set collision enabled
set simulate physics -set collision enabled

死亡したら攻撃ができないようにする(変数の作成)
add vari -name is alive ? -boolean -default vari=true=ON
capsule component/GET -target/set collision enabled
add is alive/SET -set collision enabled
これで体力がゼロになると死亡扱いになる

死亡扱いの設定1 (=生きているときだけ攻撃ができる)
event attack (既存) -add branch
event attack -branch -get data table row weapon data table (既存)
is alive/GET -condition/branch

死亡扱いの設定2 (=生きているときだけperceptionができる)
AND (既存 start=on target perception updated)
is alive/GET -AND (add pin) -condition/branch (既存)

補足:AIが死亡したら攻撃をとめる方法(変数AliveをBPs間で共有する)
参考動画
   • Unreal Engine AIに生きているときだけ攻撃させる 変数(Alive)を...  

ランダムにモンタージュを再生する(アニメーション=getting hit=死亡のモンタージュではない)
add vari -name hit montages -details -type=anim montage -array (配列にすることを忘れないこと) -compile
default vari -複数のanim montageを入れる

bp eai
branch/false (既存) -add play anim montage
GET/hit montages -add GET (array) -anim montage/play anim montage
GET input pin -add random integer in range -min=0 -max=入れたモンタージュの数ー1