Unreal Engine 初心者の技術メモ

趣味でUEやってる初心者が日頃学習したり試したこととかを書いてます。最近はVRのロボゲームを作ってます。

【UE4】物理アニメーションを使ったヒットリアクション実装

f:id:pupurigesu:20210304235001p:plain

記事の概要>

 弾が当たった時にいい感じにのけぞらせるのに物理アニメーションなる機能が使えそうだったので調べて実装してみました。実装する際、結構詰まったのと今後もいろいろ使いそうなので、備忘も兼ねてやったことを残します。

 <実現すること>

 弾が当たった時にいい感じに体をのけぞらせたい

↓こんな感じ

f:id:pupurigesu:20210209000203g:plain

<目次>

<作業した環境>

  UE4.26.1

 サードパーソンテンプレ

 

<想定作業時間>

 たぶん約30分くらい

<作業詳細>

1.物理アニメーション適用したいアクタに物理アニメーションコンポーネントを追加

f:id:pupurigesu:20210301230254p:plain

2.アクタ内のメッシュのコリジョンの設定を変更

設定内容は以下を参考

f:id:pupurigesu:20210301231346p:plain

3.コリジョンのサイズを小さくする

コリジョンを小さくしておかないと体にあたる前にコリジョン当たってしまうので

f:id:pupurigesu:20210301231906p:plain


4.ブループリントでノードを組んで物理アニメーションを適用させる

ノードは以下参考

f:id:pupurigesu:20210304231603p:plain

5.完成

とりあえずぶつけてみるとこんな感じ

※発射する弾のコリジョン設定は「BlockALL」に変更ししたものを当ててます。

f:id:pupurigesu:20210304232211g:plain

これはメッシュの真ん中にコリジョンが残っているので体・頭に当てても反応しない。体や頭も同じ様にのけぞらせたい場合はコリジョンのサイズ変更かコリジョン設定の変更で調整する。

ヒット時のアニメーションとかIKアニメーションの補正と組み合わせると幸せになれるかも

<参考にしたサイト・動画> 

こちらの動画を参考にしました。

※英語ですけど、動画見て作業を完コピしたら問題なくできました。

www.youtube.com