0 支持
424 閲覧
(140 ポイント) Q&A

先日はご回答いただきありがとうございます。
ご教授していただいた通りにHandle Animation内のSetFlipbookをPlayで置き換えてスプライトスタジオで作成したものに置き替えることは出来ました。

ですが、この手法ですと連続して信号が出続けてしまっていて、常にアニメーションを1から再生しようとするのか、プレイ上ではアニメーションしてない感じになってしまっています。
Playを2つ使い、条件を指定してブランチで待機・歩きの切り替えはできているのですが、それぞれのアニメーションが再生されてない状態です。


ご教授頂いた古いサンプルデータの方も拝見させていただきましたが今では使われていない?ChangeLoopAnimatinというノードが使われており、応用をきかせることができませんでした。

また、連続して信号が出てるのが原因なのでDoOnceを使ってお互いのアニメが実行されたらリセットかける、という強引な手法で解決もできたのですが、この手法ですと他のアニメーション(ジャンプなど)を追加した時に収集がつかなくなってしまうので別の方法で解決したいと思っております。

大変お手数ですがお手すきの際に再びご助言を頂きたいです。

このページをシェアする

回答 1

0 支持
(4.2k ポイント)
失礼しました。たしかに 2DSideScrollerCharacterではSetFlipbookを毎フレーム呼び出す形だったので、そのままの置き換えではダメでした。

古いサンプルの方の ChangeLoopAnimation や ChangeAnimationOnce は、サンプルのBP_SsPaperCharacter内で実装されたイベントですので、そのまま参考にして頂けると思います。ChangeLoopAnimationノードをダブルクリックすると、その実装箇所がフォーカスされます。

ここでは簡単にいうと、現在再生中のアニメーションと同じアニメーションが指定されたら何もせず、違うアニメーションが指定されたらPlayを呼び出す、ということを行っています。これで、ChangeLoopAnimationが毎フレーム呼び出されても、切り替えが必要な時だけPlayを呼び出せるようになっています。
(140 ポイント)

続けてのご回答ありがとうございます。
おかげさまでChangeLoopAnimation等のノードを理解してアニメーションを再生することができました!
大変お世話になりました。この度はご丁寧に回答いただきありがとうございました。

...