Jump to content

Fixing Skeleton Deformations (Crushed/Torpedo Breasts etc...)


blabba

Recommended Posts

You can just look at their scale values in 3dsmax. But the weird XPMS skeleton with the messed up scales is 1.93 legacy and anything before 2.0 basically

(The entire 2.0 update was recovering the vanilla scales in essence)

 

When you say anything before 2.0, do you mean everything all the way back to XPMS 1.5? Or just through 1.93?

I don't see scaling problems in the 1.6 resource file.

 

 

 

I've never noticed such bad deformations on any animations in my game.

 

On this screen is Arrok Cowgirl stage 2:

 

mUtvy3D.jpg

 

You can test it by yourself. I have tested it with different combinations of body+skeleton, and it was noticable for all of them.

 

 

I ran some test to try to pinpoint the source of the finger crushing:

 

1.6 skeleton, Imported Arrok Cowgirl Actor 1 Stage 2: Crushed Fingers

post-8195-0-79470800-1412221451_thumb.jpgpost-8195-0-29544000-1412221458_thumb.jpg

 

 

1.6 skeleton, default T-Pose reference:

Comparing the 2 scenes, I cannot see the change in scale for the fingers. The fingers are not animated. Am I missing something?

post-8195-0-61529000-1412221470_thumb.jpgpost-8195-0-71956700-1412221477_thumb.jpg

 

 

2.0 skeleton, Imported Arrok Cowgirl Actor 1 Stage 2: Fixing scaling within the skeleton does not fix the crush.

post-8195-0-10504100-1412225825_thumb.jpg

 

 

1.6 skeleton, Imported Arrok Cowgirl Actor 1 Stage 2 Corrective measures: However, notice the Distance To Reference (the distance of the node in relation to it's parent). Changing this fixes the finger distance that's causing the crush. I have no idea how this information creeps into the animation. Scaling the node doesn't change Distance To Reference.

post-8195-0-17656800-1412222204_thumb.jpgpost-8195-0-71517300-1412222212_thumb.jpg

Link to comment

 

You can just look at their scale values in 3dsmax. But the weird XPMS skeleton with the messed up scales is 1.93 legacy and anything before 2.0 basically

(The entire 2.0 update was recovering the vanilla scales in essence)

 

When you say anything before 2.0, do you mean everything all the way back to XPMS 1.5? Or just through 1.93?

I don't see scaling problems in the 1.6 resource file. 

 

 

 

I just did a quick comparison with your resource file and the 2.0 skeleton, your scales look fine in that.

The only problem it may/may not have is with the positioning of the Breast/Butt Bones. I think XP32 moved them, but in the 2.0+ updates they were moved back to their original positions (not 100% sure on that, you'd have to ask groovy)

 

The actual skeletons themselves have changed scales, I think XP32 for the resource files kept them to vanilla scales.

 

As for the animation issues, I'm not an expert on that so I can't say why such a peculiar thing happened. But it doesn't seem to be the skinning's fault in this case at least.

Link to comment

I have no idea how this information creeps into the animation. Scaling the node doesn't change Distance To Reference.

I think there are two things here:

1. First is what we have in animation file. It is changed size(or scale) of several bones, what we can see in NifScope:

post-567314-0-77146500-1412244298_thumb.pngpost-567314-0-98794400-1412244300_thumb.png

2. Second is how nif tools imports that animation file. I think that nif tools doesn't import it as is, but performs some manipulations with animation. As a result we see changed distances between bones.

 

As illustration that nif tools doesn't import animations as is, I can provide this:

(click to view gif animation)

post-567314-0-61960600-1412244425_thumb.gifpost-567314-0-60660300-1412244424_thumb.gif

On the first screen the left hand is slightly moving from side to side. On the second is the same animation imported to 3ds Max - the left hand is much more noticably moving left and right.

Another example is AP_Handjob_A1_S1 animation, how it looks in NifScope and in 3dsMax:

post-567314-0-86154700-1412244325_thumb.pngpost-567314-0-08693000-1412244327_thumb.png

In first case actor standing on kneels, in second actor standing upright.

 

Also I think that nif tools exports animations incorrectly too, because when I fixed fingers in 3ds Max and then exported it back I got "crashed" fingers again. The only way I can get normal fingers is to export animation with using Havok Content Tools.

Link to comment

Just asked groovy (I haven't had time to fix up my skyrim mods)

 

Turns out that yea those animations used messed up scales on export. So the only option would have to be to fix them.

(Or you could reset the skinning to use those scales as defaults, but then all your other animations would scale them to be too big as you've already experienced.)

 

I know nothing about animations so I can't help you there.

I can fix scales in animation, but there is another problem, looks like nif tools changes some other things during import, so that animation's poses becomes changed slightly or even significantly in some cases (as on examples above). In this case fixed animations will not be aligned right way.

It would be easier if there were another way to import animations to 3ds Max, bypassing nif tools.

Link to comment

 

 

You can just look at their scale values in 3dsmax. But the weird XPMS skeleton with the messed up scales is 1.93 legacy and anything before 2.0 basically

(The entire 2.0 update was recovering the vanilla scales in essence)

 

When you say anything before 2.0, do you mean everything all the way back to XPMS 1.5? Or just through 1.93?

I don't see scaling problems in the 1.6 resource file. 

 

 

 

I just did a quick comparison with your resource file and the 2.0 skeleton, your scales look fine in that.

The only problem it may/may not have is with the positioning of the Breast/Butt Bones. I think XP32 moved them, but in the 2.0+ updates they were moved back to their original positions (not 100% sure on that, you'd have to ask groovy)

 

The actual skeletons themselves have changed scales, I think XP32 for the resource files kept them to vanilla scales.

 

As for the animation issues, I'm not an expert on that so I can't say why such a peculiar thing happened. But it doesn't seem to be the skinning's fault in this case at least.

 

Breat bones are now like Dragonfly made them, based on Cherry's skeleton. 

 

Local Breast Bone Pos of different skeletons

 

XPMSE

NPC PreBreast: Pos: (-6 6.0 10) Scale:(1.0)

NPC Breast: Pos: (0 0 0)

Result: (-6 6.0 10)(1.0)

NPC Breast01: Pos: (0 2 0)  

Result: (-6 8 10)(1.0)

 

XPMS 1.93a

NPC PreBreast: Pos: (-4.999999 5.013509 9.990318)(1.2)<= Taking from the skeleton_female.hkx because hkx will overwrite animatable bones by the setted defaults. skeleton_female.nif has unimportant data here. (Scale data here has another negative effect I will explain later)

NPC Breast: Pos: (0.000002 1.999993 -0.003860)

Result: ~(-4.999999 7.013509 9.990318)(1.2) <=  XPMSE and XPMS 1.93a are pretty chose if this would be the overall result but later more 

NPC Breast01: Pos: (0 0 0)  <= No translation no effect from the scale, Incompatibility to normal default skeletons, 

Result2: ~(-4.999999 7.013509 9.990318) (1.2) <= Breast01 Boobs behave differently on scaling so Torpedo Boobs ingame, skinning to this would just hammer it into the mesh itself => mesh broken

 

XPMS (1.6 resource)

NPC PreBreast: Pos: (-5 5.0 6,99)(1.0) <= 3ds Max, Z fucked

NPC Breast: Pos: (0.0 2.0 -0.004)

Result: ~(-5 7 6.99) Scale: (1.0) <= Z fucked

NPC Breast01: Pos: (0 0 0)  

Result: (-5 7 6.99)(1.0)  <= Z fucked of the skinning + wrong scaling behaviour

 

Practical Example: CBBE HDT which is skinned with 2.0, works with any TBBP skeleton with Belly, including all of skulls skeletons. And when using BBP also on 1.93a, with HDT no chance in hell, that is why 1.93a LE is not on Nexus, it doesn't work with defaults.

 

CBBE TBBP was skinned to 1.6, it somehow gets working with 1.93a, because of the hkx. With defaults skeletons without a 1.93a similar hkx no chance in hell. That's why CBBE is completely unusable for HDT because HDT requires perfect skinning, because there is no hkx to fix skinning fuckups.

 

If you use the CBBE TBBP reference skeleton ingame because you use CBBE TBBP with HDT, you not just cause instability with mods, you also cause a lot of armors to be non working.

Link to comment

 

Just asked groovy (I haven't had time to fix up my skyrim mods)

 

Turns out that yea those animations used messed up scales on export. So the only option would have to be to fix them.

(Or you could reset the skinning to use those scales as defaults, but then all your other animations would scale them to be too big as you've already experienced.)

 

I know nothing about animations so I can't help you there.

I can fix scales in animation, but there is another problem, looks like nif tools changes some other things during import, so that animation's poses becomes changed slightly or even significantly in some cases (as on examples above). In this case fixed animations will not be aligned right way.

It would be easier if there were another way to import animations to 3ds Max, bypassing nif tools.

 

 

With only Length as information I get, without local translation\rotation\scale you can't say much except for scales.

Link to comment

 

XPMSE

NPC PreBreast: Pos: (-6 6.0 10) Scale:(1.0)

NPC Breast: Pos: (0 0 0)

Result: (-6 6.0 10)(1.0)

NPC Breast01: Pos: (0 2 0)  

Result: (-6 8 10)(1.0)

 

1. So this must be why importing the cbbe v3.3 body messes up when importing into the 1.6 skeleton rig, correct?

 

2. Do you have a list of all the differences between 1.6 & 2.0+ like you showed with the breast above? I could help pornphile just go through 1.6 and match all the rotation/scales/transform to the 2.0+ max file that blabba provided.

 

That would make his skeleton controller rig essentially perfect and up to date I think right?

Link to comment

What effect would mismatch positions have on animations if the breast are not animated via HCT?

 
I tried to answer both, skinning and animation, in one may be a mistake.
 

If you don't export the data, the bones remain in the default position set in the skeleton\skeleton_female.hkx, if they are set to animatable in the rig map.

 

If you don't export the data, the bones remain in the default position set in the skeleton\skeleton_female.nif, if they are not set to animatable in the rig map.

 

If you export the data, the bones remain in the default position set in the skeleton\skeleton_female.nif. if they are not set to animatable in the rig map.

 

If you export the data, the bones remain in the position set in the animation .hkx (I think havok uses diff, ask an animator on that), if they are set to animatable. The diff references on the defaults in the rig map hkx. Bodies look wierd in 3ds and may cause people to make animations that look good in max but are not correctly for the game.

 

The resource would be fine for animation, but for skinning meshes, unusable as 1.93a is, because of the wrong the Z. XPMS 1.93a nif values worser than the hkx ones.

Link to comment

You do it for all meshes that were not skinned to a vanilla based 1.0 scale skeleton.

 

If your armour mesh contains a body mesh and chest piece weighted to a non-vanilla based 1.0 scale skeleton, then yes you would apply the steps to both the body mesh and the armour mesh.

 

You do not however need to do any of this, if your already weighting to a vanilla based 1.0 scale skeleton (like XPMSE 2.05+)

Link to comment

You do it for all meshes that were not skinned to a vanilla based 1.0 scale skeleton.

 

If your armour mesh contains a body mesh and chest piece weighted to a non-vanilla based 1.0 scale skeleton, then yes you would apply the steps to both the body mesh and the armour mesh.

 

You do not however need to do any of this, if your already weighting to a vanilla based 1.0 scale skeleton (like XPMSE 2.05+)

 

Ah okay - so if, for example, my Iron Armour is weighted to the Skulltyrant "Basic 6" skeleton, I need to open both the _0 and _1 versions in Max & apply that process to every object/NiTriShape in the mesh, correct? :)

 

(Even though Basic 6 is fairly benign, my meshes weighted to it *DO* deform if used with the old un-Groovy XPMS, so I am guessing there's something undesireable going on which I need to fix)

 

*After doing the process I would need to copy+paste the skins from the _0 to the _1  to keep the wight slider working - this won't cause issues or un-do anything will it?

Link to comment
  • 2 weeks later...

This is probably a stupid question but... when I load my female_skeleton, any female_skeleton actually, the bones are always dummies.  How do I fix this!?  Thanks in advance.

 

Depends on what version of niftools your using.

 

2013/2014 niftools from TESrenewal doesn't support importing bones as max bones yet.

 

The 2012 and lower niftools usually have a toggle on the bottom of the import screen that usually says 'Import Bones as Dummy' which you should tick off.

 

If your niftools doesn't have that option at the bottom then it doesn't support importing skeletons as Max bones.

Link to comment

 

This is probably a stupid question but... when I load my female_skeleton, any female_skeleton actually, the bones are always dummies.  How do I fix this!?  Thanks in advance.

 

Depends on what version of niftools your using.

 

2013/2014 niftools from TESrenewal doesn't support importing bones as max bones yet.

 

The 2012 and lower niftools usually have a toggle on the bottom of the import screen that usually says 'Import Bones as Dummy' which you should tick off.

 

If your niftools doesn't have that option at the bottom then it doesn't support importing skeletons as Max bones.

 

 

I'm using 3DS Max 2010 but I don't have that toggle at the bottom of the import screen.  I'm assuming I need to use a different version of the nif import plugin?  I have no idea what version I'm using right now.  Where is the best one found?

post-32908-0-10436200-1414602381_thumb.jpg

Link to comment

Hey blabba, thanks for the guide it was really helpful, I think. What I mean is I followed your steps, got my body converted and loaded into the game with no deformations, and everything I already had installed works fine. However the new sliders for RM provided alongside the latest version of the skeleton don't work. Does that mean I did something wrong or is that a different process entirely?

 

 

EDIT: Realized I wasn't clear as to which skeleton or sliders I was talking about. I have Groovtama's 2.14 skeleton installed with the RM sliders provided alongside it.

Link to comment

Hey blabba, thanks for the guide it was really helpful, I think. What I mean is I followed your steps, got my body converted and loaded into the game with no deformations, and everything I already had installed works fine. However the new sliders for RM provided alongside the latest version of the skeleton don't work. Does that mean I did something wrong or is that a different process entirely?

 

 

EDIT: Realized I wasn't clear as to which skeleton or sliders I was talking about. I have Groovtama's 2.14 skeleton installed with the RM sliders provided alongside it.

 

This guide was for fixing mesh deformations.

 

You'll have to provide more details and ask Groovy about any problems with RM sliders not working with his skeleton.

Link to comment

I though I'd drop in and mention that I'm about to release a new repair tool to automatically fix skinning/bone related deformation issues.

 

The basic idea will be as follows.  Start with a deformed nif (target) and a template nif that has 1 or more compatible seams with the target nif.  So, for example, if you have a deformed body nif, you could select any of the following as a template nif: hands or feet that work with the body, or another body with the same seams as the bad target body.

 

The tool will discard the bad skinning data and replace it with a new clean skinning.  Next, it compares compatible seams to determine the proper offset for the mesh and applies that offset to (probably) the geometry object (mesh) transform.

 

Since bad skinning, bad mesh offsets, and bad seams tend to all show up together, my current plan is to implement this as an update to the current Seam Mender tool.

 

Note, the next release of Mesh Rigger (ready for testing, but not public release) will also include an 'Ignore Old Skinning' option that discards existing skinning. Right now I'm debating with myself whether or not to incorporate the automatic seam offset adjustment to the 'Ignore Old Skinning' feature. It's a tough one. Basically, an unfortunate number of Skyrim meshes use weird skin and bone transforms to properly position the meshes in worldspace. Ignore the skinning, you get an improperly positioned mesh. The solution is to calculate the proper offset of the mesh after the skinning is discarded. *Unfortunately* that calculation depends on the presence of compatible seams between the template and the target nifs, which is not necessarily guaranteed.

 

Hmm.

 

Anyways, let me know if you have any meshes with funky distortions to test these tools on.

 

Latest public versions of my tools can be found at http://kgtools.org/

Link to comment

 

Hey blabba, thanks for the guide it was really helpful, I think. What I mean is I followed your steps, got my body converted and loaded into the game with no deformations, and everything I already had installed works fine. However the new sliders for RM provided alongside the latest version of the skeleton don't work. Does that mean I did something wrong or is that a different process entirely?

 

 

EDIT: Realized I wasn't clear as to which skeleton or sliders I was talking about. I have Groovtama's 2.14 skeleton installed with the RM sliders provided alongside it.

 

This guide was for fixing mesh deformations.

 

You'll have to provide more details and ask Groovy about any problems with RM sliders not working with his skeleton.

 

 

My bad, I assumed that since deformations were caused by the mesh attaching incorrectly to the skeleton and the sliders function by moving the skeletal points and thus adjusting the mesh that the two were related. I'll pm groovtama or something.

Link to comment

Archived

This topic is now archived and is closed to further replies.

  • 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