はじめまして、どなたかご存知の方がいたらご教授ください。
BPを使って任意のタイミングで移動時の速度を変更したいのですが、BPを使った実装が良いのかわかりません。
実装したい処理は突進する際に移動速度をあげたいです。
それから、BPを使ってアニメーションを早送りで再生する事も可能なのでしょうか?
以上2点が質問となります、よろしくお願いします。
追記:具体的な例としては下記動画にある照準を合わせると移動速度とアニメーションが加速して迫ってくる敵の部分になります。
はじめまして、どなたかご存知の方がいたらご教授ください。
BPを使って任意のタイミングで移動時の速度を変更したいのですが、BPを使った実装が良いのかわかりません。
実装したい処理は突進する際に移動速度をあげたいです。
それから、BPを使ってアニメーションを早送りで再生する事も可能なのでしょうか?
以上2点が質問となります、よろしくお願いします。
追記:具体的な例としては下記動画にある照準を合わせると移動速度とアニメーションが加速して迫ってくる敵の部分になります。
ブループリントを使って実装する事が可能ですが、どういう移動手段を使用しているか次第です。
Add Local Offsetなどの移動系ノードを使っている場合はご自分で速度ベクトルを計算させる必要があります。
Add Movement Inputの場合は方向ベクトルと係数を渡す事で速度を自由に変えられます。これらの使い方は公式のサンプルにあるブループリントを参考にしてください。(ThridPersonCharacterなど)
アニメーションの速度はSkeltalMeshConponentが持つSet Play Rateの値を変更することで可能です。
回答ありがとうございます、早速試してみます。
Add Movement Inputでの速度変更は公式サンプルのdocumentから試してみて変更できる事が確認できました!
他の方法も試してみますね。
また後ほどご報告させていただきます。
Add Local OffsetとAdd Movement Inputでの任意のタイミングで移動速度を変更することはできました。
しかし、アニメーションの速度を変更する方法を試してみたところRateが変更されず
Get Play Rateで取得した値をprintstringで画面に表示してみても「0.0」のままでした。
どのようにしてRateの変更を適応すれば良いのでしょうか?
アニメーションブループリントのステートマシーンで設定したアニメーションでそれぞれ個々にPlay Rateをピンとして変数に持たせ、BPと連携させれば1つずつですが速度を変更することはできました。
ですが、Set Play RateでRateを変更すればABPで1つずつ変数としてBPで変更しなくてもまとめてすべてのアニメーションの再生速度を変更できるのでは?と思っております。
なので、キャラクターBPからSet Play Rateを使ったアニメーション速度の変更方法を教えていただけないでしょうか。
Set Play Rateはやりかたによって確実に変更できるようではないので、以下のやりかたを参考にしてください。
アニメーションブループリント内のAnim Graph内でアニメーションを設定する時にアニメーション再生ノードを選択した時にでてきます。ここでPlay Rateが設定できるので、自由な値を設定します。
回答ありがとうございます。
ということは、自分が試してみた方法で良いということですね!
問題が解決したので解決とさせていただきます。
ブログも参考にいつも見ています、ご教授ありがとうございました。
と、解決済みはこれでよいのかな?まだ初めての投稿なので使い方がイマイチわかっておりません。