5.8 KiB
+++ date = "2023-12-09" tags = ["ue5","3d"] title = "ue5を触ってみた7" slug = "ue5" +++
ue5を触って1週間が経ちました。触れない日もありましたが、今回はsword(剣)のmotion(モーション)などを作りました。
- video : /ai/video/#ue5_ai_0005.mp4
やったこととしては、変身、瞬間移動、剣、そして、見た目の変更です。それぞれにテクニックがあるので順に紹介します。
この記事では、参考になるリンクを載せています。外部リンクは参考になる投稿者に限定しているので是非読んでみてください。例えば、UE備忘録本舗さんはとてもわかりやすく参考になる動画を投稿されている方です。
outline、normalによる見た目の変更
今までのモデルと見比べてみるとよくわかります。左がold、右がnewです。
これはoutline(アウトライン)やnormal line(法線)と一般に言われているものです。
それをoverlay material
で実現しています。blueprintを貼っておきます。
syuiでアカウント作ろうとしてmail間違えて認証できなくなり、再度syuiでアカウント作ろうとしたら空いてなかったのでaiにした...まあいいか
表情を変更する
表情のdefault(デフォルト)が口が半開きになっている気がするので、それを変更します。
瞬間移動の実装
montageからmotion warpingを使って瞬間移動をやってみましたが、障害物があると移動できないし、瞬間移動というか高速移動なだけなので、actor locationで実現しました。
set actor location
で設定してください。
motion warpingで設定したように通知ステートでは他に様々なものを追加することができます。
montageを再生したあと元の位置に戻ってしまう
sword motion(ソード・モーション)はanim montage(アニメ・モンタージュ)を使用しているのですが、実行後に元のlocation(位置)に戻ってしまう問題がありました。
これはroot motion
をenableにしたり、他の設定をやっても戻ってしまうのです。
原因はIKリターゲットしたときrootが動いていないために起こります。animationを開いてsrcとtargetを比較してみると、srcのほうはrootが動いていますが、targetのアニメは動いていません。具体的には、srcはlocationが変動しますが、targetは変動していません。
これを変動するようにしないといけないのですが、bone(ボーン)のroot
を選択してFKの平行移動モードをGlobally Scaled
に設定します。
これでtargetのrootが変動しているのを確認後、リターゲットし、montageを作成します。
swordをしまう時のparticle
これはsword_open
, sword_close
というactor, blueprintを作成して、それをBP_Player
のmeshに当てます。そして、set visible
で切り替えています。
ではparticle(粒子)はどうやって実現しているのかというとniagara
です。
swordを振ったときのeffect
まずはboneを追加します。このboneを元にtrailというeffectをつけていくわけです。sword-trail
は検索タグとしても有効です。effectはanim sequence(アニメ・シーケンス)で設定します。
PSTemplate
, Socket Name
を指定します。
また、niagaraで作成してもいいですね。sword-trail-naigara
とでも検索してみてください。
swordのcharge motion
こちらはmontageを分割して、それを再生します。
変身など
これはSet Skeletal Mesh Asset
で切り替えですね。