メインコンテンツまでスキップ

物理パラメータ

物理シミュレーションの基本動作を制御するパラメータです。

ソースを見る

FKawaiiPhysicsSettings

物理制御の基本設定を定義する構造体です。

Damping

減衰係数 - 揺れの強さを制御します。値が小さいほど、加速度を物理挙動に反映します。

プロパティ
float
デフォルト0.1
範囲0.0 以上
カテゴリKawaiiPhysics

Stiffness

剛性 - 値が大きいほど、元の形状を維持します。

プロパティ
float
デフォルト0.05
範囲0.0 以上
カテゴリKawaiiPhysics

WorldDampingLocation

ワールド座標系におけるSkeletal Mesh Componentの移動量の反映度

プロパティ
float
デフォルト0.8
範囲0.0 以上
カテゴリKawaiiPhysics

WorldDampingRotation

ワールド座標系におけるSkeletal Mesh Componentの回転量の反映度

プロパティ
float
デフォルト0.8
範囲0.0 以上
カテゴリKawaiiPhysics

Radius

各ボーンのコリジョン半径

プロパティ
float
デフォルト3.0
範囲0.0 以上
カテゴリKawaiiPhysics

LimitAngle

物理挙動による回転制限 - 適切に設定することで荒ぶりを抑制できます。

プロパティ
float
デフォルト0.0
範囲0.0 以上
カテゴリKawaiiPhysics

シミュレーション設定

SimulationSpace

シミュレーション空間 - 物理制御を行う座標系を指定します。

プロパティ
EKawaiiPhysicsSimulationSpace
デフォルトComponentSpace
説明
ComponentSpaceコンポーネント空間でシミュレーション
WorldSpaceワールド空間でシミュレーション。Rootボーンの急激な移動・回転の影響を回避可能
BaseBoneSpace指定したボーン空間でシミュレーション

SimulationSpaceの比較

各SimulationSpaceの違いを示す概念図

注記

ComponentSpace以外を使用すると微小のパフォーマンス低下が発生しますが、急激なRootボーンの移動・回転の影響を回避できます。

SimulationBaseBone

シミュレーション基準ボーン - BaseBone座標系時の基準となるボーン。

プロパティ
FBoneReference
カテゴリPhysics Settings
注記

SimulationSpaceがBaseBoneSpaceの場合のみ有効です。

TargetFramerate

ターゲットフレームレート - 物理シミュレーションのターゲットとなるフレームレート。

プロパティ
int32
デフォルト60
カテゴリPhysics Settings

OverrideTargetFramerate

フレームレートオーバーライド - TargetFramerateを使用するかどうかのフラグ。

プロパティ
bool
デフォルトfalse
カテゴリPhysics Settings

TeleportDistanceThreshold

テレポート距離しきい値 - 1フレームにおけるSkeletalMeshComponentの移動量が設定値を超えた場合、その移動量を物理制御に反映しません。

プロパティ
float
デフォルト300.0

TeleportRotationThreshold

テレポート回転しきい値 - 1フレームにおけるSkeletalMeshComponentの回転量が設定値を超えた場合、その回転量を物理制御に反映しません。

プロパティ
float
デフォルト10.0

Teleport Thresholdの動作

しきい値を超える移動があった場合、物理に反映されずテレポート扱いになる

PlanarConstraint

平面制約 - 指定した軸に応じた平面上に各ボーンを固定します。

プロパティ
EPlanarConstraint
デフォルトNone
説明
None平面制約なし
XX軸に制約
YY軸に制約
ZZ軸に制約

PlanarConstraintの効果

各軸での平面制約の効果

SkelCompMoveScale

コンポーネント移動スケール - SkeletalMeshComponentの移動量を物理挙動に反映する際に適用されるスケール。

プロパティ
FVector
デフォルト(1, 1, 1)

ボーン設定

RootBone

制御ルートボーン - 指定ボーンとそれ以下のボーンを制御対象にします。

プロパティ
FBoneReference
カテゴリBones

ExcludeBones

除外ボーン - 指定したボーンとそれ以下のボーンを制御対象から除去します。

プロパティ
TArray<FBoneReference>
カテゴリBones

AdditionalRootBones

追加ルートボーン - 指定ボーンとそれ以下のボーンを制御対象に追加します(複数追加用)。

プロパティ
TArray<FKawaiiPhysicsRootBoneSetting>
カテゴリBones

各要素には以下のプロパティがあります:

  • RootBone: 制御対象のルートボーン
  • OverrideExcludeBones: このルートボーン専用の除外ボーンリスト
  • bUseOverrideExcludeBones: 除外ボーンオーバーライドの有効化

DummyBoneLength

ダミーボーン長 - 0より大きい場合は、制御ボーンの末端にダミーボーンを追加します。ダミーボーンを追加することで、末端のボーンの物理制御を改善します。

プロパティ
float
デフォルト0.0
範囲0.0 以上

DummyBoneの効果

DummyBoneを追加することで末端ボーンの動きが安定する

BoneForwardAxis

ボーン前方向 - ボーンの前方向。物理制御やダミーボーンの配置位置に影響します。

プロパティ
EBoneForwardAxis
デフォルトX_Positive
説明
X_Positive+X方向
X_Negative-X方向
Y_Positive+Y方向
Y_Negative-Y方向
Z_Positive+Z方向
Z_Negative-Z方向

ウォームアップ設定

WarmUpFrames

ウォームアップフレーム数 - 物理の空回し回数。物理処理が落ち着いてから開始・表示したい際に使用します。

プロパティ
int32
デフォルト0
範囲0 以上

bNeedWarmUp

ウォームアップ有効化 - ウォームアップを有効にするフラグ。

プロパティ
bool
デフォルトfalse

bUseWarmUpWhenResetDynamics

リセット時ウォームアップ - ResetDynamics時に物理の空回しを行うフラグ。

プロパティ
bool
デフォルトtrue

カーブによる制御

以下のパラメータはカーブで制御可能です。「RootBoneから特定のボーンまでの長さ / RootBoneから末端のボーンまでの長さ」(0.0~1.0)の値におけるカーブの値を各パラメータに乗算します。

カーブ説明
DampingCurveDataDampingパラメータを補正
StiffnessCurveDataStiffnessパラメータを補正
WorldDampingLocationCurveDataWorldDampingLocationパラメータを補正
WorldDampingRotationCurveDataWorldDampingRotationパラメータを補正
RadiusCurveDataRadiusパラメータを補正
LimitAngleCurveDataLimitAngleパラメータを補正
ヒント

カーブを使用することで、根元は硬く先端は柔らかくといった設定が可能です。

高度な設定

bUpdatePhysicsSettingsInGame

ゲーム中パラメータ更新 - 各ボーンの物理パラメータを毎フレーム更新するフラグ。無効にするとパフォーマンスが僅かに改善しますが、実行中に物理パラメータを変更することが不可能になります。

プロパティ
bool
デフォルトtrue

ResetBoneTransformWhenBoneNotFound

ボーン未検出時リセット - 制御対象のボーンが見つからない場合にTransformをリセットするフラグ。基本的には無効を推奨。

プロパティ
bool
デフォルトfalse