UE5にインポートしたDAZ Genesis9フィギュアの胸と尻を揺らせる。
【追記】KawaiiPhysicsの方が簡単に揺らせられます。
スケルトンに揺らすためのボーンがあるかどうかだけ。
KawaiiPhysicsの導入 | 経験値0からのUE5
胸
物理アセットを編集
スケルトンツリーのギアアイコンをクリックして「コンストレイントを表示」と「すべてのボーンを表示」にチェックを入れる。
左胸からやります。
スケルトンツリーでl_pectoralを選択して右クリックして形状を追加 > 球形を追加を選択。
追加された球形の位置とスケールを調整して、左胸を包み込むようにする。パースペクティブではなく「上」「左」で見ながら合わせます。
スケルトンツリーでボーンではなく球形の●l_pectoralを選択した状態でShift+Alt+Iを押すと選択した部位だけのシミュレートができます。
現時点では、左胸がストンッと落ちたら成功です。
ストンッと落ちないように制御します。
スケルトンツリーでボーンではなく球形の●l_pectoralを選択した状態で右クリックしてコンストレイント > spine3を選択。
出現した球形を左胸の中心に合わせます。
この球形を選択する時はグラフの「コンストレイント spine3 : l_pectora」を選択すれば良いです。もちろんスケルトンツリーからでも選択できます。
おおよその胸の中心に合わせます。
この状態で●l_pectoralを選択した状態でShift+Alt+Iを押してシミュレートすると落下は制御できていますが、不自然に揺れます。
スケルトンツリーで[l_pectoral -> spine3 ]コンストレイントを選択し詳細を編集します。
Liner LimitsのX~Z Motionを全てLimiterにする。
Limitの値は3~5くらい。
Liner Limits > 詳細設定 > Restitutionを0.01にする。
Angular Limitsの3つのMotionは全てロックにする。
リニアモーターのPosition Targetの3つ全てにチェックを入れる。
強度は100.0~500.0くらいにする。これは元の形に戻ろうとする力です。
この状態で●l_pectoralを選択した状態でShift+Alt+Iを押してシミュレートして揺れ具合を確認。値は好きなように調整して構いません。
●l_pectoralのEnable Gravityにチェックが入っているか否かでシミュレート結果に大きな違いが出ます。
●l_pectoralを選択した状態で詳細の物理 > Physics Typeをシミュレート済にする。
通常時の垂れ乳を防止したい場合は、Enable Gravityのチェックを外しましょう。重力がないと揺れが止まりにくいですから、リニアモーター > 強度を300.0~500.0にすると良いでしょう。
プレイヤーブループリントを編集
プレイヤーキャラクターのMeshを選択して詳細 > コリジョン > コリジョンプリセット(Custom) > Collision Enabledをコリジョンを有効化 (Query and Physics)にします。
注意点はCapsule Componentら透明のコリジョンに干渉すること。止まっているのに胸が不自然にブルブルと暴れまわっている時は、Capsule Componentもしくは重なっている透明のコリジョンに干渉している可能性があります。
Capsule Componentのコリジョンをクエリオンリーにしたり、Mesh側で無視する設定にしましょう。
テストプレイして左胸が揺れていたら成功。
同じように右胸も設定する。
尻
お尻はDAZ Studioでボーンの追加が必要です。
DAZ Studioでボーンの追加
ビューポートをWire Shadedにする。
裸のGenesis 9フィギュアを出してSceneペインで選択。
ToolSettingsペインを選択。※上メニューのWindow > Panesから開けます。
ToolSettingsのActive ToolをGeometry Editorにする。
お尻の左側を塗る。
ビューポートで右クリックしてGeometry Assignment > Create Face Group from Selectedを選択。名前をLeftBumにする。
ビューポートで右クリックしてGeometry Selection > Clear Selectionしてから、お尻の右側も同じようにやって名前をRightBumにする。
ToolSettingsのActive ToolをJoint Editorにする。
SceneペインでPelvisを選択してビューポートで右クリックしてCreate > Create Child Boneを選択。
名前をLeftBumにしてRotation OrderをYXZにする。
同じようにRightBumも作成。
SceneペインでLeftBumを選択。
ビューポートで右クリックしてAlign > Auto Align Nodeを選択。
ボーンの位置調整。尻の左側にトゲが埋まっている感じです。
同じようにRightBumも位置を合わせます。おおよその位置を合わせた後。ToolSettingsのLeftBurnの位置データを見て調整すれば対称にできます。
フィギュアの座標が0ならば、LeftBumの値にマイナスするか、そのまま入力するだけです。
ToolSettingsのActive ToolをNode Weight Map Brushにする。
LeftBumを選択し、ビューポートで右クリックしてGeometry Selection > Clear Selection
ToolSettingsのGeneral Weightsを選択してビューポートで右クリックしてGeometry Selection > Select By > Face Groups > LeftBumを選択。
General Weightsを選択した状態のままビューポートで右クリックしてWeight Editing > Fill Selectedを選択。60%でAccept。尻が赤くなります。
ToolSettingsの筆+Sのアイコンをクリックし、Smooth Brushで尻の周りを塗る。塗った青い部分が変形した時スムーズに伸縮します。
RightBumを選択し、ビューポートで右クリックしてGeometry Selection > Clear Selection。
RightBumも同じように設定。
服の設定
パンツを穿かせてEdit > Object > Transfer Utility
Source ItemがGenesis 9。
Target Itemがパンツ。
Acceptをクリック。
Daz to UnrealでUnreal Engineにインポートします。
UE5で尻揺れ設定
胸と同じようなことをボーンを変えてやるだけです。
LeftBumを選択して右クリックして形状を追加 > 球形を追加を選択。
位置とスケールを調整。
●LeftBumを選択した状態で右クリックしてコンストレイント > hipを選択。
[l_thigh -> hip]コンストレイントを尻(左)の中心に合わせる。
[l_thigh -> hip]コンストレイントの詳細の設定。
●LeftBumを選択した状態で詳細の物理 > Physics Typeをシミュレート済にする。
コメント