UE5のRInterp To
UE5のRInterp Toのノードはだんだんと向きを変える動作ができ、使う機会の多いノードだ。
詳しく詳細を紹介していく。
RInterp Toの一覧目次
RInterp ToとはRInterp Toの使い方
目次にもどる
RInterp Toとは
RInterp Toを使えばCurrentに指定した向き→Targetに指定した向きに時間をかけて変える処理を行うことができる。

瞬時に変更されないのが大きなメリット。例えば操作キャラがマウスを向けた方向に瞬時に向いてしまうと違和感が出てしまう。敵キャラの場合も方向転換などが瞬時に行われると明らかに不自然だ。RInterp Toを使って処理を作れば時間をかけた自然な向き変更を実現できる。
Delta Timeには現在と前のフレーム間の時間を取得して入力する。Delta Timeとは、現在と前のフレーム間の時間を指す。ゲームプレイしている端末のスペックによって1フレームの長さが変化するので、Delta Timeを考慮して計算しないと端末によって向く速度が変化してしまう可能性がある。
Interp SpeedでTargetに指定した向きに変更する速度を指定することができる。
目次にもどるRInterp Toの使い方
RInterp Toの使用例を紹介していく(RInterp Toが関係ある部分しか紹介しないので注意)。
.jpg)
今回はマウスの向きに合わせてカメラの向きを変更している際に、キャラが遅れて向くようにする設定を紹介していく(特にエイム時など瞬時にキャラが向くと違和感がある)。
.jpg)
RInterp ToのCurrentには、キャラの向き(Make RotatorでX(Roll)、Y(Pitch)、Z(Yaw)からキャラの向きを取得)を入力している。
RInterp ToのTargetには、カメラの向き(Get Control Rotationで取得)からキャラの向き(Get Actor Rotationで取得)の差を入力している。
RInterp ToのDelta Timeには、Delta Time Xを入力している。Delta Time Xは以下のように毎フレーム呼び出されるイベントの後続に配置しセットしておく。
.jpg)
Interp Speedは今回は10と指定した。
RInterp Toの出力ピンはReturn Valueを右クリック→「構造体ピンを分割」と選択することで以下のように向きをX(Roll)、Y(Pitch)、Z(Yaw)それぞれで分割して出力が可能。
.jpg)
今回はY(Pitch)とZ(Yaw)を出力し、Clamp Angleのノードを作成。このノードは入力された値を限定することができる。一定の角度以上には向けなくするのに便利だ。
Clamp Angleの後はPitchとYawの変数にそれぞれ代入している。
これでカメラの向きが変わったら、Interp Speedの速さでキャラもカメラに合わせて向くようになった。