- [UE4] BlueprintのRotatorノードまとめ|株式会社ヒストリア
http://historia.co.jp/archives/1820/
- グローバル座標、ローカル座標の変換
Transform Location | Unreal Engine Documentation
https://docs.unrealengine.com/en-US/BlueprintAPI/Math/Transform/TransformLocation/index.html
移動
- AddMovementInput
- キャラクターを動かす。入力から接続すると動かせる。
- CharacterMovementでパラメーターを設定
- GetVelocity
- ルートコンポーネントの速度を取得する(cm/秒)
平面移動の場合はBreakVectorをしてベクトルzを0にしてMakeVectorしたものをVectorLengthすると平面移動のスピードが割り出せる。 - → BreakVector部分、Normalize部分をBP関数ライブラリ、合わせた処理をBPマクロライブラリ化すると良い。「極めるゲーム開発」325Pあたり
- (GetForwardVectorを使用してカメラ角度から見た操作にしている場合)
- ルートコンポーネントの速度を取得する(cm/秒)
- SetActorLocation
- 指定した座標にオブジェクトをセットする。
- Sweepはコリジョンの判定を精密にする。(コリジョンで引っかかる)
- AddWorldOffset
- GetActorLocation + Velocity → SetActorLocationの処理をセットにしたもの。
- 今の座標に加算する。
取得
- GetSocketTransform
- ソケットの位置を取得。ソケット名を間違えないようにする。
- GetRotationXVector
- x軸のベクトルを取得する。
- キャラクタの正面をx軸に向けておくと、前方向がわかる。
ベクトル
- RotateVectorAroundAxis
- Axisで設定した軸を中心にAnqleDeg分ベクトルを回転する。
- Rotation from X Vector
- VectorLength
- ベクトルの長さを取得する。
- 速度を知ることが出来る。
- Normalize
- 向きの情報を取得。
- ベクトルの長さを1にする。