こんばんは。
アニメーションのイベント取得で悩んでいます。
コインを立てて回して倒れるところまでのアニメーションを用意しました。
レベルブループリントでSkeletal Meshに対してPlayAnimationでアニメーションを再生するところまではできました。
AnimationBlueprintを作成して特定のフレームの時に通知をセットしましたがこれをレベルブループリントで取得するにはどのようにすればよろしいのでしょうか?
AnimNotifyクラスを作成して、RecevedNotifyで通知を受け取るようにもしてみましたがここから先に進みません。
ご存じの方がいらっしゃいましたら教えていただけないでしょうか。
レスをいただいていたのは分かっていましたが
急な出張でご返答が遅れました。
まだ試していませんがイベントディスパッチャーを使えば
なんとなく出来そうなイメージが沸いてきました。
早速試してみたいと思います。
ありがとうございました!
アニメーションブループリント側でイベントディスパッチャーを作成してみましたが、
ブループリント側で右クリックして検索してみましたが出てきませんでした。
アニメーションブループリントは特別なのかはわかりませんがどうもうまくいきません。
途中でなくてもアニメーションが終端までいったことさえわかればなんとかなるのですが
それも無理そうです。
他の方法も検討してみます。
tamfoi
(tamfoi)
5
AnimationBPはAnimGragh内に仕込んであるAnimationSequenceに仕込まれている通知しか受け取れないと思います(分かり難くてすいません)
ですのでPlayAnimationで流してしまうとダメかもしれません。AnimationBPを参照して、Stateを切り替えてあげるといいとかとと。
見たところ最後まで再生されたかでも良いとのことなので、EventTickを使っていて処理負荷的にいい例ではないですが下記のようにする方法もあります。
もし、LevelBP上からAnimationBPにアクセスしてStateを切り替えるということをしたい場合は下記のようにすると出来るかもしれません。ちょっと試してないのでやる場合は検証からお願いします。
tamfoi
(tamfoi)
6
少し雑ですがイベントディスパッチャーを使った例を作りました。
画像で説明するのには厳しいのでプロジェクトをまるごと上げておきました。7日間は保持されるみたいです。
基本的にLevelBPとTestAnimBPの中身を追っていけば理解できると思います。
link text