Jump to content

Prepacked HDT-SM - HDT Skinned Mesh Physics with Modding Guide


Recommended Posts

Thanks for those. Didn't solve my issue however and actually has me more confused as the breasts still behave erratically but the belly collision seems to work fine, guess I'm going to have to play with numbers some more. Just is odd that it works while in racemenu.

Link to comment

I reversed engineer the suggested link above, and have limited collision, but there are still things not working such as two mesh bone-paints that reside side-by-side (mesh sharing weight paint) will just crash performance (-30 fps) being in conflict if the *no-collide-with-tag* is not used per bone (weights) ; or alternatively, you want collision side-by-side so then need to use the *weight-threshold bone="x_Bone"..* which allows prioritizing of collision bone/mesh-paint.

 

Collision for non supported mesh/nif/bones (not provided in default xmls) need the NiStringExtraData path added as shown in the hair mod. And, create an xml. Example for SoS Light mesh:

 

SoS.xml

 

 

<?xml version="1.0" encoding="UTF-8"?>
<system xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="description.xsd">

	<bone name="NPC GenitalsBase [GenBase]"/>
	<bone name="NPC GenitalsScrotum [GenScrot]"/>
	<bone name="NPC Genitals01 [Gen01]"/>
	<bone name="NPC Genitals02 [Gen02]"/>
	<bone name="NPC Genitals03 [Gen03]"/>
	<bone name="NPC Genitals04 [Gen04]"/>
	<bone name="NPC Genitals05 [Gen05]"/>
	<bone name="NPC Genitals06 [Gen06]"/>
   

  <per-vertex-shape name="MaleGenitals Regular">
    <margin>0.8</margin>
    <priority>1</priority>
    <tag>MaleGenitals</tag>
    <no-collide-with-tag>MaleGenitals</no-collide-with-tag>
  </per-vertex-shape>
  
</system>

 

 

 

...no idea what *prenetration* is or means, and log says unrecognized, so left it out. Also, triangle or vertex seems to work for this additional mesh xml. Don't know advantages/disadvantages as both work for the above, but not the below. Perhaps vertex is more precise, being bullets for collision are smaller than triangle-sized bullets -- perhaps combining the two works best? And, that triangle requires 1/3 less resources, best for big mesh?

 

Most important, add this to your default/preferred body xml (the mesh -in nif- for body you use in-game; I'm using CBBE, so the mesh in nif is "BaseShape") : 

 

 

 

 

	<per-triangle-shape name="BaseShape">
		<margin>0.8</margin>
		<priority>1</priority>
		<prenetration>1</prenetration>
		<tag>body</tag>
		<no-collide-with-tag>body</no-collide-with-tag>
		
		<weight-threshold bone="HDT Pussy BackLeft 2">0.09</weight-threshold>
		<weight-threshold bone="HDT Pussy BackRight 2">0.09</weight-threshold>
		<weight-threshold bone="HDT Pussy FrontLeft 2">0.09</weight-threshold>
		<weight-threshold bone="HDT Pussy FrontRight 2">0.09</weight-threshold>
		<weight-threshold bone="NPC L Butt">0.56</weight-threshold>
		<weight-threshold bone="NPC R Butt">0.56</weight-threshold>		
		<weight-threshold bone="NPC L Breast">0.56</weight-threshold>
		<weight-threshold bone="NPC R Breast">0.56</weight-threshold>
		<weight-threshold bone="NPC Belly">0.56</weight-threshold>
		
		<no-collide-with-bone>NPC Spine [Spn0]</no-collide-with-bone>
		<no-collide-with-bone>NPC Spine1 [Spn1]</no-collide-with-bone>
		<no-collide-with-bone>NPC Spine2 [Spn2]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Clavicle [RClv]</no-collide-with-bone>
		<no-collide-with-bone>NPC R UpperArm [RUar]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Forearm [RLar]</no-collide-with-bone>
		<no-collide-with-bone>NPC R ForearmTwist1 [RLt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC R ForearmTwist2 [RLt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC R UpperarmTwist1 [RUt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC R UpperarmTwist2 [RUt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Clavicle [LClv]</no-collide-with-bone>
		<no-collide-with-bone>NPC L UpperArm [LUar]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Forearm [LLar]</no-collide-with-bone>
		<no-collide-with-bone>NPC L ForearmTwist1 [LLt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC L ForearmTwist2 [LLt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC L UpperarmTwist1 [LUt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC L UpperarmTwist2 [LUt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC Pelvis [Pelv]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Thigh [LThg]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Calf [LClf]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Thigh [RThg]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Calf [RClf]</no-collide-with-bone>
		
	</per-triangle-shape>

 

 

 

^^ this is where you'll create your collisions, by adding removing  *no-collide-with...* and "weight-threshold-bone...* (I'm speculating, guessing on all of this). You'll need to find the bone (painted to mesh) that corresponds to the collision you want. (Or choose a bone from xpmse skelly and add new nodes to your nif and nif mesh). You may also need to do edits to the provided "hand" xmls to get hand to collide with physics bone/mesh.

 

That's all I know, and am likely getting half or more wrong. Read the output log, it is very helpful -- for Mod Organizer find in Overwrites - SKSE logs.

 

edit, you also obviously need to set up the physics for the parts that jiggle and wobble.

Hi! Have you tested this with SOS full?

So you just created an xml file called "sos.xml" added nistring extra data to malegenitals_0 and malegenitals_1. Added link to the "sos.xml" file in both nif's and now you have collision with female body?

Link to comment

You don't have to edit the nifs.  You can just set the path to the hands.xml in defaultbbps.xml just like the body.  Full hand/body collision.

 

Like this:
 

<?xml version="1.0" encoding="utf-8"?>
<default-bbps>
<map shape="BaseShape" file="SKSE\Plugins\hdtSkinnedMeshConfigs\cbbe-tbbp.xml"/>
<map shape="Seven_Cleavage" file="SKSE\Plugins\hdtSkinnedMeshConfigs\Seven_Cleavage.xml"/>
<map shape="UNP TopModel TBBP" file="SKSE\Plugins\hdtSkinnedMeshConfigs\UNP TopModel TBBP.xml"/>
<map shape="BaseShape003" file="SKSE\Plugins\hdtSkinnedMeshConfigs\BaseShape003.xml"/>
<map shape="UNPB_TBBP_0" file="SKSE\Plugins\hdtSkinnedMeshConfigs\UNPB_TBBP_0.xml"/>
<map shape="UNPB_TBBP_1" file="SKSE\Plugins\hdtSkinnedMeshConfigs\UNPB_TBBP_1.xml"/>
<map shape="UNP TM" file="SKSE\Plugins\hdtSkinnedMeshConfigs\UNP TM.xml"/>
<map shape="UUNP" file="SKSE\Plugins\hdtSkinnedMeshConfigs\UUNP.xml"/>
<map shape="Hands" file="SKSE\Plugins\hdtSkinnedMeshConfigs\Hands.xml"/>
</default-bbps>
 

 

Of course, you need to add collision in the target xmls like Farass has done.  This means bodies can come out of bodyslide/UUNP fully functional.

 

Problem is I can't get the actual collision to look anywhere near decent.  Anybody have more examples of well-functioning xmls? 

Link to comment

I now have the following collisions up and running: Malehands - butt, breasts, belly. femalehands - butt, breasts,belly. sos - butt, belly,breasts.

Malehands:

 

 

<per-vertex-shape name="MaleHands">
    <margin>0.8</margin>
    <priority>1</priority>
<!--<prenetration>1</prenetration>-->
    <tag>hand</tag>
    <no-collide-with-tag>hand</no-collide-with-tag> 


   </per-vertex-shape>

 

SOS:

 

 

<bone name="NPC GenitalsBase [GenBase]"/>
<bone name="NPC GenitalsScrotum [GenScrot]"/>
<bone name="NPC Genitals01 [Gen01]"/>
<bone name="NPC Genitals02 [Gen02]"/>
<bone name="NPC Genitals03 [Gen03]"/>
<bone name="NPC Genitals04 [Gen04]"/>
<bone name="NPC Genitals05 [Gen05]"/>
<bone name="NPC Genitals06 [Gen06]"/>
   


  <per-vertex-shape name="MaleGenitals">
    <margin>0.5</margin>
    <priority>1</priority>
<!--<prenetration>1</prenetration>-->
    <tag>Genitals</tag>
    <no-collide-with-tag>Genitals</no-collide-with-tag>
  </per-vertex-shape>

 

All xml files are linked to defaultBBPs.xml. Also seems to be very important to not have comments in the cbbe-tbbp.xml. Some places it's ok, but some places just ruins the whole xml.

However the collisions are not exactly acting the way I want...breasts,butt and belly are spazzing out when in contact with hands or sos.....need some more work before it can be used ingame

Link to comment

 

 

I reversed engineer the suggested link above, and have limited collision, but there are still things not working such as two mesh bone-paints that reside side-by-side (mesh sharing weight paint) will just crash performance (-30 fps) being in conflict if the *no-collide-with-tag* is not used per bone (weights) ; or alternatively, you want collision side-by-side so then need to use the *weight-threshold bone="x_Bone"..* which allows prioritizing of collision bone/mesh-paint.

 

Collision for non supported mesh/nif/bones (not provided in default xmls) need the NiStringExtraData path added as shown in the hair mod. And, create an xml. Example for SoS Light mesh:

 

SoS.xml

 

 

<?xml version="1.0" encoding="UTF-8"?>
<system xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="description.xsd">

	<bone name="NPC GenitalsBase [GenBase]"/>
	<bone name="NPC GenitalsScrotum [GenScrot]"/>
	<bone name="NPC Genitals01 [Gen01]"/>
	<bone name="NPC Genitals02 [Gen02]"/>
	<bone name="NPC Genitals03 [Gen03]"/>
	<bone name="NPC Genitals04 [Gen04]"/>
	<bone name="NPC Genitals05 [Gen05]"/>
	<bone name="NPC Genitals06 [Gen06]"/>
   

  <per-vertex-shape name="MaleGenitals Regular">
    <margin>0.8</margin>
    <priority>1</priority>
    <tag>MaleGenitals</tag>
    <no-collide-with-tag>MaleGenitals</no-collide-with-tag>
  </per-vertex-shape>
  
</system>

 

 

 

...no idea what *prenetration* is or means, and log says unrecognized, so left it out. Also, triangle or vertex seems to work for this additional mesh xml. Don't know advantages/disadvantages as both work for the above, but not the below. Perhaps vertex is more precise, being bullets for collision are smaller than triangle-sized bullets -- perhaps combining the two works best? And, that triangle requires 1/3 less resources, best for big mesh?

 

Most important, add this to your default/preferred body xml (the mesh -in nif- for body you use in-game; I'm using CBBE, so the mesh in nif is "BaseShape") : 

 

 

 

 

	<per-triangle-shape name="BaseShape">
		<margin>0.8</margin>
		<priority>1</priority>
		<prenetration>1</prenetration>
		<tag>body</tag>
		<no-collide-with-tag>body</no-collide-with-tag>
		
		<weight-threshold bone="HDT Pussy BackLeft 2">0.09</weight-threshold>
		<weight-threshold bone="HDT Pussy BackRight 2">0.09</weight-threshold>
		<weight-threshold bone="HDT Pussy FrontLeft 2">0.09</weight-threshold>
		<weight-threshold bone="HDT Pussy FrontRight 2">0.09</weight-threshold>
		<weight-threshold bone="NPC L Butt">0.56</weight-threshold>
		<weight-threshold bone="NPC R Butt">0.56</weight-threshold>		
		<weight-threshold bone="NPC L Breast">0.56</weight-threshold>
		<weight-threshold bone="NPC R Breast">0.56</weight-threshold>
		<weight-threshold bone="NPC Belly">0.56</weight-threshold>
		
		<no-collide-with-bone>NPC Spine [Spn0]</no-collide-with-bone>
		<no-collide-with-bone>NPC Spine1 [Spn1]</no-collide-with-bone>
		<no-collide-with-bone>NPC Spine2 [Spn2]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Clavicle [RClv]</no-collide-with-bone>
		<no-collide-with-bone>NPC R UpperArm [RUar]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Forearm [RLar]</no-collide-with-bone>
		<no-collide-with-bone>NPC R ForearmTwist1 [RLt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC R ForearmTwist2 [RLt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC R UpperarmTwist1 [RUt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC R UpperarmTwist2 [RUt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Clavicle [LClv]</no-collide-with-bone>
		<no-collide-with-bone>NPC L UpperArm [LUar]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Forearm [LLar]</no-collide-with-bone>
		<no-collide-with-bone>NPC L ForearmTwist1 [LLt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC L ForearmTwist2 [LLt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC L UpperarmTwist1 [LUt1]</no-collide-with-bone>
		<no-collide-with-bone>NPC L UpperarmTwist2 [LUt2]</no-collide-with-bone>
		<no-collide-with-bone>NPC Pelvis [Pelv]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Thigh [LThg]</no-collide-with-bone>
		<no-collide-with-bone>NPC L Calf [LClf]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Thigh [RThg]</no-collide-with-bone>
		<no-collide-with-bone>NPC R Calf [RClf]</no-collide-with-bone>
		
	</per-triangle-shape>

 

 

 

^^ this is where you'll create your collisions, by adding removing  *no-collide-with...* and "weight-threshold-bone...* (I'm speculating, guessing on all of this). You'll need to find the bone (painted to mesh) that corresponds to the collision you want. (Or choose a bone from xpmse skelly and add new nodes to your nif and nif mesh). You may also need to do edits to the provided "hand" xmls to get hand to collide with physics bone/mesh.

 

That's all I know, and am likely getting half or more wrong. Read the output log, it is very helpful -- for Mod Organizer find in Overwrites - SKSE logs.

 

edit, you also obviously need to set up the physics for the parts that jiggle and wobble.

 

 

Hi! Have you tested this with SOS full?

So you just created an xml file called "sos.xml" added nistring extra data to malegenitals_0 and malegenitals_1. Added link to the "sos.xml" file in both nif's and now you have collision with female body?

 

 

Sounds like you've found the right solution for adding SoS by adding to defaultBBPs.xml. I was able to get decent collision between genitals, but the hard part seems to be creating a female mesh with proper bones and mesh weight-paints to handle genital collision effectively. You can do really custom weight painting in BS Outfit Studio, once you properly added bones to female mesh in nifscope. However, many of the SL animations are going to need custom aligning, and even then angles are sometimes just inaccurate for good visuals.

 

My thinking, the best path for the SL framework and SMP; add physics to male genital, and, added and magnetic quality --reverse collision-- for defined bones. This way when two magnetic bones near each other, they begin to pull together. This magnetism could be 'axis specific', so only if both bones have axis in near alignment, will they actually pull together and slide along these two magnetic axis. 

 

Another solution, trigger a pseudo animation -- opening -- when male genital nears the female. Using collision as trigger: Collision Animation. I believe this can actually be done in nifscope, I just haven't found a decent tutorial on nif animations.

Link to comment

@Farass, turn your margin way down (mines at 0.05).  You are using vertex, but I'm using triangle-shape for the hands.  Prenetration set at 0.23.  The margin and the "prenetration" is what causes most the crushing, in my opinion.

 

Also, this dll uses the second breast bone (breast01), CBBE doesn't have one.  I'm getting very close to good collision with Topmodel TBBP.  Plus, the added bone adds some really good animations.

 

SMP is going to be all about the individual xmls.  I suggest we all pick one and get it working well.  All the other setup is very easy.  

 

PS: Anybody have any idea how to get thighs working?  I tried copy/pasting the butt bones with only the x-axis going.  Didn't work.

Link to comment

Hi This is my thigh setup. They are a bit too bouncy, but they bounce:

<bone name="NPC L Thigh [LThg]">
<mass>0</mass>
<inertia x="0" y="0" z="0"/>
<centerOfMassTransform>
<basis x="0" y="0" z="0" w="1"/>
<origin x="0" y="0" z="0"/>
</centerOfMassTransform>
<linearDamping>0</linearDamping>
<angularDamping>0</angularDamping>
<friction>0</friction>
<rollingFriction>0</rollingFriction>
<restitution>0</restitution>
</bone>


<bone name="NPC L FrontThigh">
<mass>0.50000</mass>
<inertia x="10" y="10" z="10"/>
<centerOfMassTransform>
<basis x="0" y="0" z="0" w="1"/>
<origin x="0" y="0" z="0"/>
</centerOfMassTransform>
<linearDamping>0</linearDamping>
<angularDamping>0</angularDamping>
<friction>0</friction>
<rollingFriction>0</rollingFriction>
<restitution>0</restitution>
</bone>


<bone name="NPC R Thigh [RThg]">
<mass>0</mass>
<inertia x="0" y="0" z="0"/>
<centerOfMassTransform>
<basis x="0" y="0" z="0" w="1"/>
<origin x="0" y="0" z="0"/>
</centerOfMassTransform>
<linearDamping>0</linearDamping>
<angularDamping>0</angularDamping>
<friction>0</friction>
<rollingFriction>0</rollingFriction>
<restitution>0</restitution>
</bone>


<bone name="NPC R FrontThigh">
<mass>0.500000</mass>
<inertia x="10" y="10" z="10"/>
<centerOfMassTransform>
<basis x="0" y="0" z="0" w="1"/>
<origin x="0" y="0" z="0"/>
</centerOfMassTransform>
<linearDamping>0</linearDamping>
<angularDamping>0</angularDamping>
<friction>0</friction>
<rollingFriction>0</rollingFriction>
<restitution>0</restitution>
</bone>


<generic-constraint bodyA="NPC L FrontThigh" bodyB="NPC L Thigh [LThg]">
<frameInB>
<basis x="0" y="0" z="0" w="1"/>
<origin x="0" y="0" z="0"/>
</frameInB>
<useLinearReferenceFrameA>false</useLinearReferenceFrameA>
<linearLowerLimit x="-0.01" y="0" z="-4"/>
<linearUpperLimit x="0.01" y="2" z="4"/>
<angularLowerLimit x="-0.01" y="-0.01" z="-0.1"/>
<angularUpperLimit x="0.01" y="0.01" z="0.1"/>
<linearStiffness x="300" y="300" z="300"/>
<angularStiffness x="900" y="900" z="900"/>
<linearDamping x="3" y="3" z="3"/>
<angularDamping x="0" y="0" z="6"/>
<linearEquilibrium x="0" y="0" z="0"/>
<angularEquilibrium x="0" y="0" z="0"/>
</generic-constraint>


<generic-constraint bodyA="NPC R FrontThigh" bodyB="NPC R Thigh [RThg]">
<frameInB>
<basis x="0" y="0" z="0" w="1"/>
<origin x="0" y="0" z="0"/>
</frameInB>
<useLinearReferenceFrameA>false</useLinearReferenceFrameA>
<linearLowerLimit x="-0.01" y="0" z="-4"/>
<linearUpperLimit x="0.01" y="2" z="4"/>
<angularLowerLimit x="-0.01" y="-0.01" z="-0.1"/>
<angularUpperLimit x="0.01" y="0.01" z="0.1"/>
<linearStiffness x="300" y="300" z="300"/>
<angularStiffness x="900" y="900" z="900"/>
<linearDamping x="3" y="3" z="3"/>
<angularDamping x="0" y="0" z="6"/>
<linearEquilibrium x="0" y="0" z="0"/>
<angularEquilibrium x="0" y="0" z="0"/>
</generic-constraint>

 

 

Link to comment

I made BodySlide version deformed http://bbs.3dmgame.com/thread-4643377-1-1.html  this mesh.

That mesh is not comfortable CBBE reference mesh so ShrinkWrap at BaseShape(simply boneweight copied to BaseShape but it's not worked.) However making slider files and it worked!! Here you go!

attachicon.gifHDT-SMP SMsTBBP BodySlide.7z

It jiggle and collision with SMP hair. BUT!! feet shape has cut!! Like this.

attachicon.gifTESV 2015-03-29 22-48-40-68.jpgattachicon.gifTESV 2015-03-29 22-58-26-92.jpg

How to fix it? :D And collision work but need more wide area.

 

what texture replacer are u using?

and which preset are u using with your outfit/body: SMP_Body_TBBP

Link to comment

Anybody got malehead - femalebody collision working?

or femalehead - femalebody collision?

 

I really don't understand why my game slows down to 1 fps each time I enable per-triangle collisions?

It's the same if I have per-triangle in the basehape xml or in the hands or genitals xml. As long as I have some per-triangle collisions enabled , the game is unplayable...

Link to comment

Hmm..I think I have come as far as I can regarding this.

I have sos, creature genitals, malehands, femalehands  - femalebody (thigh, butt, breasts, vagina) collision, but it can only be used in game if I set it up to use per-vertex - per- vertex collision.

If I use per-triangle- per vertex collisiion the frames drop to 1-3 fps so it's unplayable. However the collision is very good using this setup( I can test it with using just one npc in a single room). If using per-triangle, every triangle is a rigid body so it could also be that every triangle is colliding against everything, I don't really know. 

Tried setting up basehape.xml with only breast collision (per-triangle) but same result. Tried setting baseshape.xml to per-vertex and hands, genitals etc. to per-triangle, but same result. 

So per-vertex - per-triangle is working in game and outdoor etc. for anyone else?

Guess I'll have to stick with per-vertex -  per-vertex collision even though it is far worse....

Link to comment

Tri-collision is basically the actual 'bit of the mesh itself' with the edges (not the dots where the edges meet) doing the work. It's very rare to see anyone use it, even Unreal uses it (for weapons only as yes/no value) for weapon hit detections and nothing else. The rest is either setup manually ber pox or per vertex. Not sure how well it would run in Skyrim, or if the author tested it out and gave up due to the performance value out of the entire thing (wouldn't be surpised, old engines gonna old, especially non 64bit ones :P )

 

I'm not sure what limit SMP has or how hard it will eat into the performance, but you might want to try a denser model (moar polygons) with more vertices to see. In theory, it should 'look' better, but you might end up with the triangle performance issues again, or you might end up lucky, and see that a hand with maybe a couple of hundred more polies (not bleeding edge) doesn't eat too much and looks just as good.

Link to comment

I just managed to install HDT-SMP and wrapping my head around it all, but wow the physics is far superior. I am now looking at the files themselves, so this thread is really informative. Hope to chip in later.

 

I did notice some NPCs are missing shaders, some come out blue, some just have weird shading, but not all. Strange, but probably fixable by reinstalling stuff.

 

Link to comment

Hey guys,

 

I wonder if someone has the same problems:

 

1) When I wish 2 nifs colliide with each other, it works fine, for example - I have hair.nif and body.nif, every of them have it's own .xml attached, with the collision box like:

 

for hair:

 

<per-vertex-shape name="hair">
        <margin>-0.2</margin>
        <priority>0</priority> 
        <tag>hair</tag>
        <no-collide-with-tag>hair</no-collide-with-tag>
</per-vertex-shape>

 

for body:

 

<per-triangle-shape name="body">                  
    <margin>-0.2</margin>                                             
    <priority>0</priority>                                           
    <prenetration>1</prenetration>                       
    <tag>body</tag>                                                                         
    <no-collide-with-tag>body</no-collide-with-tag>
    <weight-threshold bone="NPC Spine [spn0]">0.4</weight-threshold>
    <weight-threshold bone="NPC Spine1 [spn1]">0.4</weight-threshold>  efficiency)-->
  </per-triangle-shape>

 

That works OK, hair and body collides with each other.

 

 

BUT, when I try to perform the same for one .nif with a few NiTriShapes included, it works like shit...

 

For example, I have an outfit with HDT-enabled skirt and pants (pants with no physics).

I wish the skirt to collide with pants.

 

That is how I try to do it:

 

<per-triangle-shape name="Pants">
        <margin>0</margin>
        <priority>0</priority>
        <prenetration>1</prenetration>
        <tag>body</tag>
        <no-collide-with-tag>body</no-collide-with-tag>
 </per-triangle-shape>

 

<per-vertex-shape name="Skirt">
    <margin>1</margin>
    <priority>-1</priority>
    <tag>skirt</tag>
    <no-collide-with-tag>skirt</no-collide-with-tag>
</per-vertex-shape>

 

For some reason it makes smth with collision, with that settings skirt acts retarded in game, it twitches, bounces, gravitating upstairs and so on, like that:

 

 

 

6007b65dc612.jpg

 

 

 

 

 

Why so??? Does somebody know? How to set the collision for two NiTriShapes in terms of one .xml?..

 

 

2) And the second question, it's not a problem actually, but I am curious still:

 

What exactly bones should be mentioned as roots on the top of the code, exсepting keyframed ones for physics?

In my case, I should mention all of them, like that:

 

 

 

ddc8b92985ae.png

 

 

 

Because if I don't, my character just stratching to infinity in game:

 

 

 

994739a2bc54.jpg

 

 

 

Why so? I saw the other authors .xmls without this bone list. Why do I need that bones as roots? What is the reson for it?

 

Will be very gratefull in case someone can help with these questions...

 

 

Link to comment

I just managed to install HDT-SMP and wrapping my head around it all, but wow the physics is far superior. I am now looking at the files themselves, so this thread is really informative. Hope to chip in later.

 

I did notice some NPCs are missing shaders, some come out blue, some just have weird shading, but not all. Strange, but probably fixable by reinstalling stuff.

Some say that setting this: [Optimize]

FasterLoading = false
 
in the hdtSkyrimMemPatch.ini fixed problems with textures
Link to comment

Has anyone managed to get collisions working for the beast races? I play them but no matter what I do collisions don't seem to work for the beast races. I've been following this thread for some time now but nothing seems to work. Very strange...

 

Link to comment

 

I did notice some NPCs are missing shaders, some come out blue, some just have weird shading, but not all. Strange, but probably fixable by reinstalling stuff.

Some say that setting this: [Optimize]

FasterLoading = false
 
in the hdtSkyrimMemPatch.ini fixed problems with textures

 

 

That is exactly what fixed all texture issues, great tip!

 

Link to comment

I've seen a few people mention the crash when undressing problem, but I've yet to find a solution. Could someone who's gotten the basic bounce features working with SMP give me a message or something along those lines to let me know how you did it? And sorry if this is the wrong place to ask.

Link to comment

I've seen a few people mention the crash when undressing problem, but I've yet to find a solution. Could someone who's gotten the basic bounce features working with SMP give me a message or something along those lines to let me know how you did it? And sorry if this is the wrong place to ask.

 

Not sure if this helps you but ,some crashes for me where related to having a non standard outfit like Dragon Lilly Armor. See if all files you use check out. I started a new profile (to toy with HDT-SMP) and I use standard CBBE-HDT which seems super stable with Groovtama's latest Skeleton and latest Bodyslide, latest Racemenu.

Link to comment

 

 

Hey guys,

 

I wonder if someone has the same problems:

 

1) When I wish 2 nifs colliide with each other, it works fine, for example - I have hair.nif and body.nif, every of them have it's own .xml attached, with the collision box like:

 

for hair:

 

<per-vertex-shape name="hair">
        <margin>-0.2</margin>
        <priority>0</priority> 
        <tag>hair</tag>
        <no-collide-with-tag>hair</no-collide-with-tag>
</per-vertex-shape>

 

for body:

 

<per-triangle-shape name="body">                  
    <margin>-0.2</margin>                                             
    <priority>0</priority>                                           
    <prenetration>1</prenetration>                       
    <tag>body</tag>                                                                         
    <no-collide-with-tag>body</no-collide-with-tag>
    <weight-threshold bone="NPC Spine [spn0]">0.4</weight-threshold>
    <weight-threshold bone="NPC Spine1 [spn1]">0.4</weight-threshold>  efficiency)-->
  </per-triangle-shape>

 

That works OK, hair and body collides with each other.

 

 

BUT, when I try to perform the same for one .nif with a few NiTriShapes included, it works like shit...

 

For example, I have an outfit with HDT-enabled skirt and pants (pants with no physics).

I wish the skirt to collide with pants.

 

That is how I try to do it:

 

<per-triangle-shape name="Pants">
        <margin>0</margin>
        <priority>0</priority>
        <prenetration>1</prenetration>
        <tag>body</tag>
        <no-collide-with-tag>body</no-collide-with-tag>
 </per-triangle-shape>

 

<per-vertex-shape name="Skirt">
    <margin>1</margin>
    <priority>-1</priority>
    <tag>skirt</tag>
    <no-collide-with-tag>skirt</no-collide-with-tag>
</per-vertex-shape>

 

For some reason it makes smth with collision, with that settings skirt acts retarded in game, it twitches, bounces, gravitating upstairs and so on, like that:

 

 

 

6007b65dc612.jpg

 

 

 

 

 

Why so??? Does somebody know? How to set the collision for two NiTriShapes in terms of one .xml?..

 

 

2) And the second question, it's not a problem actually, but I am curious still:

 

What exactly bones should be mentioned as roots on the top of the code, exсepting keyframed ones for physics?

In my case, I should mention all of them, like that:

 

 

 

ddc8b92985ae.png

 

 

 

Because if I don't, my character just stratching to infinity in game:

 

 

 

994739a2bc54.jpg

 

 

 

Why so? I saw the other authors .xmls without this bone list. Why do I need that bones as roots? What is the reson for it?

 

Will be very gratefull in case someone can help with these questions...

 

 

 

I had the same issue, I tried to add physics to the TM Ball Gown and the whole thing (body+outfit mesh) slid up and down like mush.

 

Link to comment

I had the same issue, I tried to add physics to the TM Ball Gown and the whole thing (body+outfit mesh) slid up and down like mush.

 

As far as I can see it happens when the mesh for collision is too highpoly.

Well I just made a collision shape (just full vanilla body), export it as .nif, added .xml to it, deleted BSLightningShaderProperty (to make the mesh transparent in game) and add it to CK as outfit for empty slots.

So I just equip collision as an armor in game and never unequip, it works fine for all objects with physics

Link to comment

 

I had the same issue, I tried to add physics to the TM Ball Gown and the whole thing (body+outfit mesh) slid up and down like mush.

 

As far as I can see it happens when the mesh for collision is too highpoly.

Well I just made a collision shape (just full vanilla body), export it as .nif, added .xml to it, deleted BSLightningShaderProperty (to make the mesh transparent in game) and add it to CK as outfit for empty slots.

So I just equip collision as an armor in game and never unequip, it works fine for all objects with physics

 

 

Yeah the TMBallGown was probably a little ambitious, it has 7000+ vertices together with the body.  I'll try with something different.

 

What you're saying about the vanilla body, could I add that to any armor's .nif as an invisible collision mesh? (I have no CK experience).

 

Link to comment

 

 

I had the same issue, I tried to add physics to the TM Ball Gown and the whole thing (body+outfit mesh) slid up and down like mush.

 

As far as I can see it happens when the mesh for collision is too highpoly.

Well I just made a collision shape (just full vanilla body), export it as .nif, added .xml to it, deleted BSLightningShaderProperty (to make the mesh transparent in game) and add it to CK as outfit for empty slots.

So I just equip collision as an armor in game and never unequip, it works fine for all objects with physics

 

 

Yeah the TMBallGown was probably a little ambitious, it has 7000+ vertices together with the body.  I'll try with something different.

 

What you're saying about the vanilla body, could I add that to any armor's .nif as an invisible collision mesh? (I have no CK experience).

 

 

 

 

Hm 7000 verticles is not much really but yeah probably it is still too much comparing to vanilla.

And as far as I understand it doesn't matter how highpoly the physics mesh is, the problem is in the mesh with which physics is colliding...

For example - in case I have highpoly skirt and highpoly body it acts bad, but if I have highpoly skirt and lowpoly body everything is fine.

 

As for adding vanilla body as an extra NiTriShape - yes, sure, you can.

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use