UE4 カメラを振動させる(Camera Shake、Matinee Camera Shake、Client Play Camera Shake、Client Start Camera Shake)
UE4には標準でカメラを振動させるための機構が用意されているようです。
こちらを参考にさせていただきました!
・[UE4] カメラの振動
http://historia.co.jp/archives/634
まず「Camera Shakeブループリント」を作成します。
「Camera Shake」クラスを継承して

ブループリントをアセットとして作成します。

こんな感じでアセットを作成します。
この作成した「Camera Shake BP」のアセットの詳細を開いて
振動に関するパラメータを設定します。

とのことです!デフォルトでは必要なパラメータが全てゼロになっており、何も振動しません。。。
参考サイトの通り、赤枠で囲ったパラメータだけとりあえず設定していきましょう。
「Single Instance」 は、同じ「CameraShake」を複数同時に再生した際、
Trueであれば1つだけ、Falseであれば重ねて振動が再生されるようです。
「Oscillation Duration」は振動時間です。秒単位で設定します。
「Rot Oscillation」は回転による振動。
「Loc Oscillation」は移動による振動。
「FOVOscillation」は画角による振動。
というようです。
だそうです!「Rot Oscillation」の中のパラメータは「Yaw」「Pitch」「Roll」
「Loc Oscillation」は「X「」Y」「Z」の各軸ごとに、それぞれ分かれています。
「Amplitude」が振動の強さ。
「Frequency」が振動の速さを設定できます。
とりあえず参考サイトの通りのパラメータ(画像の状態)でカメラを振動させてみましょう。
「Camera Shake BP」を使ってカメラを振動させるには
「Client Play Camera Shake」ノードを使います。

「Target」には「Player Controller」を指定します。
「Shake」には作成した「Camera Shake BP」を指定します。
「Scale」は振動の倍率です。0.0だと振動しないので注意しましょう。
「Play Space」は振動を制御する空間…なのだと思います。よくわかってないのでそのうち調べてみます。
「User Play Space Rot」も「Play Space」に関わる項目だと思います。
といった感じで、こんな風にBPを作るとカメラ振動させることができます。

「Camera Shake BP」のパラメータであったり、
「Play Space」など、詳細を設定する項目がたくさんありますが
今回はこんな感じで普通にカメラを振動させることができました。
細かいパラメータについてもそのうち勉強しないとまずそうですね…。
4.26 追記。
4.26 以降では BP の「Camera Shake」はなくなっているようです。
こういうツイートをみかけました。
ホントだ。下の動画によると4.26でカメラのクラスが変わった影響らしい。一応以前のようなパラメータはMatineeCameraShakeだとあって使えた。
— Shunsuke Izumi₍₍(ง˘ω˘)ว⁾⁾ (@arayz4) January 21, 2021
なんで今更Matineeの名がつくんだろうね。新しい別の使い方があるのかしら。https://t.co/lANLiNRqzd
「Camera Shake」と同じ動作が4.26 以降は「Matinee Camera Shake」というものに置き換わっているようです。

BPでの再生方法も「Client Play Camera Shake」から「Client Start Camera Shake」に置き換わっているようです。

上記の旧式のカメラ振動とは別に新しい方式のカメラ振動が実装されているようです。
・カメラの揺れ
https://docs.unrealengine.com/4.27/ja/AnimatingObjects/Sequencer/Cameras/CameraShakes/
まだ詳しくは調べていないので、近いうちに調べてみようと思います。Unreal Engine の Camera Shake ブループリントを使用すると、カメラにカメラの揺れの効果を追加できます。このガイドでは、 CameraShakeBase ブループリントを作成する方法、使用可能な揺れの種類、およびそれらをシーケンサ、ブループリント、カメラの揺れソースで再生する方法の概要について説明します。
| UE4 | 15:34 | comments:0 | trackbacks:0 | TOP↑