[UE4]Turn In Place(その場ターン)について

TPSなどで、構えた状態で動かずにカメラを回すと、その場でターンをプレイヤーキャラが取ります。

これを実装したいとき、手っ取り早い方法は、ずばり「Turnを取得」「TurnRateを取得」ではないでしょうか。


画像1

画像2

これです。

「Turnを取得」がマウス、「TurnRateを取得」がゲームパッドのスティック操作を取得してくれるようです。(print stringの結果を見る限りは。)


キャラクターBPでこのノードを作った後、ReturnValueのFloat値をインターフェースなどでAnimBPに受け渡します。

その後、AnimBP側で受け取ったら、Float値に応じてアニメーション遷移用のbool変数を設定するなどしてやればokです。


【キャラクターBP側】

画像4

↑AnimBPが有効かチェックして、有効ならインターフェースを使ってTurnRateを取得できるようにしてやります。


【AnimBP側】

画像3

↑インターフェースからTurnRateの値を受け取って、変数に代入。

それをそのままアニメーション遷移条件として使ってもいいですが、今回は条件分岐でターン左、右用のフラグを設定するようにしました。


これだけでとりあえずはターンができちゃいました。

が、知らないと結構面倒というか、どつぼにはまると思ったのでメモがてら記事に残しておきます。



【追記】

kai yoshidaさんがご指摘の通り、同名のinputノードがあるのでお気を付けください。

yoshidaさんありがとう~

いいなと思ったら応援しよう!