[UE4]Turn In Place(その場ターン)について
TPSなどで、構えた状態で動かずにカメラを回すと、その場でターンをプレイヤーキャラが取ります。
これを実装したいとき、手っ取り早い方法は、ずばり「Turnを取得」「TurnRateを取得」ではないでしょうか。
これです。
「Turnを取得」がマウス、「TurnRateを取得」がゲームパッドのスティック操作を取得してくれるようです。(print stringの結果を見る限りは。)
キャラクターBPでこのノードを作った後、ReturnValueのFloat値をインターフェースなどでAnimBPに受け渡します。
その後、AnimBP側で受け取ったら、Float値に応じてアニメーション遷移用のbool変数を設定するなどしてやればokです。
【キャラクターBP側】
↑AnimBPが有効かチェックして、有効ならインターフェースを使ってTurnRateを取得できるようにしてやります。
【AnimBP側】
↑インターフェースからTurnRateの値を受け取って、変数に代入。
それをそのままアニメーション遷移条件として使ってもいいですが、今回は条件分岐でターン左、右用のフラグを設定するようにしました。
これだけでとりあえずはターンができちゃいました。
が、知らないと結構面倒というか、どつぼにはまると思ったのでメモがてら記事に残しておきます。
【追記】
このTurnとTurnRateはInputEventですね
— kai yoshida (@UnrealYoshida) December 14, 2020
環境によって名前が違うと思うので、注意した方がいいかもです('_')
kai yoshidaさんがご指摘の通り、同名のinputノードがあるのでお気を付けください。
yoshidaさんありがとう~
この記事が気に入ったらサポートをしてみませんか?