HDT-SMPに対応させる
HDTに対応していないスカートを揺らすとほぼ同じです。
コリジョンですが、Simple SkirtのCollisionLegsを使う場合は、このように頑張って移動と変形で太ももに合わせます。HHairstylesのコリジョン装備の指輪を使う場合はCollisionLegsは使わないので削除します。
変形についてですが、このTransform toolがとても便利です。触っていればすぐに使い方がわかると思います。
Simple SkirtのWeightをコピーする時に、スカートを変形させて少しでも位置を近づけておきます。
このように、インポート直後はスカートの距離が離れています。
Transform toolだけいいので、このように位置を大まかに合わせます。
WeightをコピーするのはWenchChest、WenchSkirtTrim、WenchTransSkirtの3つにしました。
以下の手順でコピーしました。
- CBBE 3BAのWeightを全コピー(CBBE 3BA化)
- Uniboob ReferenceのWeightを全コピー(谷間の調整)
- WenchTransSkirt、WenchSkirtTrimから余計なWeightを削除(Pelvis、Spineのみを残す形でいいと思います)
- WenchChestから余計なWeightを削除(Butt、Front Thigh、Rear Thighあたりを削除)
- Simple SkirtからDress ***** 2~5をWenchChest、WenchSkirtTrim、WenchTransSkirtにコピー(Dress 1はコピーしない)
- CBBE 3BAのPelvis、Spineだけを再度コピー
手で塗るとすぐにおかしくなって影ができるので、機械的なコピーだけです。Simple SkirtのWeightをコピーした際にスカートに必要なWeightが塗られますが、Pelvisあたりもだいぶ消えてしまい、腰の動きに追従できなくなってしまうので、CBBE 3BAから再度コピーして復元します。スカートのWeightはだいたい残るので大丈夫です。
HDT-SMPの設定ファイルを修正
Simple Skirtのものをたたき台に、修正を加えます。
よくわかっていませんが、Boneは全部書いた方がいいみたいです。(HHairstylesの設定ファイルより)
<per-triangle-shape name="VirtualGround">
<margin>0.5</margin>
<prenetration>10</prenetration>
<no-collide-with-tag>boots</no-collide-with-tag>
<no-collide-with-tag>VirtualGround</no-collide-with-tag>
<tag>legs</tag>
<no-collide-with-tag>ground</no-collide-with-tag>
</per-triangle-shape>
<bone name="R Breast01"/>
<bone name="L Breast01"/>
<bone name="R Breast02"/>
<bone name="L Breast02"/>
<bone name="R Breast03"/>
<bone name="L Breast03"/>
<bone name="NPC RT Anus2"/>
<bone name="NPC LT Anus2"/>
<bone name="NPC LB Anus2"/>
<bone name="NPC RB Anus2"/>
<bone name="NPC L Thigh [LThg]"/>
<bone name="NPC R Thigh [RThg]"/>
<bone name="NPC L Calf [LClf]"/>
<bone name="NPC R Calf [RClf]"/>
<bone name="NPC R RearCalf [RrClf]"/>
<bone name="NPC L RearCalf [LrClf]"/>
<bone name="NPC L FrontThigh"/>
<bone name="NPC R FrontThigh"/>
<bone name="NPC L RearThigh"/>
<bone name="NPC R RearThigh"/>
<bone name="Clitoral1"/>
<bone name="VaginaDeep1"/>
<bone name="NPC Spine [Spn0]"/>
<bone name="NPC Spine2 [Spn2]"/>
<bone name="NPC Spine1 [Spn1]"/>
<bone name="NPC Pelvis [Pelv]"/>
<bone name="NPC Head [Head]"/>
<bone name="NPC L Clavicle [LClv]"/>
<bone name="NPC R Clavicle [RClv]"/>
<bone name="NPC L Breast"/>
<bone name="NPC R Breast"/>
<bone name="NPC L Breast01"/>
<bone name="NPC R Breast01"/>
<bone name="NPC L Forearm [LLar]"/>
<bone name="NPC R Forearm [RLar]"/>
<bone name="NPC L ForearmTwist1 [LLt1]"/>
<bone name="NPC R ForearmTwist1 [RLt1]"/>
<bone name="NPC L ForearmTwist2 [LLt2]"/>
<bone name="NPC R ForearmTwist2 [RLt2]"/>
<bone name="NPC L UpperArm [LUar]"/>
<bone name="NPC R UpperArm [RUar]"/>
<bone name="NPC L UpperarmTwist1 [LUt1]"/>
<bone name="NPC R UpperarmTwist1 [RUt1]"/>
<bone name="NPC L UpperarmTwist2 [LUt2]"/>
<bone name="NPC R UpperarmTwist2 [RUt2]"/>
<bone name="NPC L Butt"/>
<bone name="NPC R Butt"/>
<bone name="NPC L Pussy02"/>
<bone name="NPC R Pussy02"/>
<bone name="NPC Belly"/>
<bone name="NPC L Hand [LHnd]"/>
<bone name="NPC R Hand [RHnd]"/>
<bone name="Dress Left B 1" />
<bone name="Dress Left F 1" />
<bone name="Dress Right B 1" />
<bone name="Dress Right F 1" />
コリジョンですが、今回はスカートのShapeが3つにわけているものの、それぞれがほとんど重なっていないので、そのままコリジョン判定を持たせても大丈夫みたいでした。
コリジョンのCollisionLegsを使う場合は上の通りなのですが、HHairstylesのコリジョン装備の指輪を使う場合は、コリジョン判定が全身にあるので、胴装備と胸が干渉して震えてしまいます。そこでWenchChestのShapeを2つに分割しました。腰から下がWenchChestで、腰から上がWenchChest2です。コリジョン判定はWenchChestだけに持たせます。
<per-triangle-shape name="WenchChest">
<margin>0.1</margin>
<prenetration>0</prenetration>
<tag>XingHair</tag>
<no-collide-with-tag>XingHair</no-collide-with-tag>
</per-triangle-shape>
<per-triangle-shape name="WenchTransSkirt">
<margin>0.1</margin>
<prenetration>0</prenetration>
<tag>XingHair</tag>
<no-collide-with-tag>XingHair</no-collide-with-tag>
</per-triangle-shape>
<per-triangle-shape name="WenchSkirtTrim">
<margin>0.1</margin>
<prenetration>0</prenetration>
<tag>XingHair</tag>
<no-collide-with-tag>XingHair</no-collide-with-tag>
</per-triangle-shape>
可動範囲は大きめにするとよくヒラヒラします。特に前は0.5くらいにしないと、スニークしたときにしっかり上がらず太ももに食い込みます。
<generic-constraint-default>
<frameInB>
<basis x="0" y="0" z="0" w="1" />
<origin x="0" y="0" z="0" />
</frameInB>
<useLinearReferenceFrameA>false</useLinearReferenceFrameA>
<linearLowerLimit x="0" y="0" z="0" />
<linearUpperLimit x="0" y="0" z="0" />
<angularLowerLimit x="-0.04" y="-0.3" z="-0.08" />
<angularUpperLimit x="0.04" y="0.3" z="0.08" />
妥協する
完璧な動きにするのは難しいので、ある程度は妥協しないといけませんでした。
まず、コリジョンで衝突判定を持たせても、食い込むところはあります。
そして、お尻がたまにクリッピングを起こします。お尻のWeightをしっかり塗りつつスカートのWeightも塗れたらいいのですが、それをやると影ができたりするので、いっそのことお尻(と太もも)のWeightは削除して揺れをあきらめた方がいいかもしれません。