ジャンプ入力の際に、ジャンプを1秒もしくは数フレーム遅らせたい

上記と同じような質問になりますが回答されていなかったため、お願いしたいです。

カスタムイベントでIA_Jumpを呼び出し、アニメーション通知にてJumpのタイミングを遅らせようとしましたがうまくいきませんでした。

YouTubeやGoogleで調べてみても解決しなかったので、お力添えしていただければと思います。
UE5.2 Windowsになります。

何をどこまでやっているのかが、わかりませんが、
このあたりの記事を参考にしていると仮定すると、

とりあえず以下の部分を確認してみるとか。

コメントありがとうございます。

そちらの記事も参考にしましたが、うまくいかない状況です。
以下現状の画像になります。

BP_mainCharacter

アニメーションBP


print Textは何も表示されていません。

アニメーション遷移

アニメーション通知

アニメーションからの通知をアニメーションBPで受け取りたいのですが、print Textで何も表示されていないので、受け取れていないということになりますか?原因はぼんやりと分かるのですが、解決策が分かりません。

どうか、ご教示していただければ幸いです。

サードパーソンのテンプレートデータを、スクショ通りに組んだら、動いたので、スクショで把握できない部分の問題だと思います。
print Textで何も表示されていないのであれば、アニメーションが再生されていないと思われます。

確認したい点
1、CastしているABPが正しいものなのか確認。
2、繋がっているアニメションが正しいか確認。
3、AnimGraphが動いているのを確認。
4、イベントグラフで諸々組んであるのを確認。




いろいろいじりすぎてわけわからなくなっている場合は、
新規でサードパーソンテンプレートを作って、もう一度組んでみるのをお勧めします。

やりたいことを数字を使わずもう少し具体的な言葉で表現すれば、問題が見えてくると思います

単に「ジャンプそのものを遅らせたい」のであれば、先のスレッドにあるようにDelayノードで事足ります

おそらくやりたいこととしては「ジャンプに溜めを作りたい」が一番近いのではないでしょうか?
であれば、問題が見えてきますね

「溜め」というStateが必要になります
これはThirdPersonTemplateにはないので、新しく定義する必要があります

「溜め」ステートから「JumpLoop」へは、時間で遷移するなり、NotifyEventで遷移するなり自由にすると良いでしょう
ジャンプそのものは現状のNotifyEventで実行可能かと思います

AnimNotifyクラスのイベントグラフが張られていないのでそれを確認したいですね。

アニメーションタイムラインにある、Start_Jumping通知ノードを右クリック→通知ブループリントを開くでBP編集画面を開きそのイベントグラフの中身を見せていただければと思います。

皆様、ご指導ありがとうございました。
おかげさまで解決いたしました。

最終的の結果をご報告いたします。

T_Sumisaki様のおっしゃる通り、「溜め」を作る必要がありました。(何度か試してみましたがJump_Start無しではできませんでした。)

ジャンプしたタイミングで落下するとアニメーションが不自然になるため、Jump_Start→Fall Loopを追加しました。遷移条件は以下のようになります。

アニメーションBPは以下のようになりました。

NotJumpedの通知はFall Loopのアニメーションに付けてあります。これが無いと2回目のジャンプができなくなります。

まとめ
原因はJumpStartが無かったことと、アニメーション通知がうまくいっていなかったことでした。通知の付け方に問題があった可能性があります。

以上、ご報告になります。
ご指導していただき、ありがとうございました。

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.