Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bhkRagdollTemplate support #22

Merged

Conversation

ttl269
Copy link
Member

@ttl269 ttl269 commented Mar 16, 2014

Added support for bhkRagdollTemplate block based on two .rdt files (.rdt file is a .nif file) located in Fallout3 directory "meshes/ragdollconstraint". It seems that game uses only "Default.rdt" file. Second file "stiff.rdt" is unused and suspicious because in NiHeader it has User Version 2 set to 16 instead of 34 as all Fallout3 files (and also Default.rdt) have. Maybe this file is leftover. Adding support for this file complicated code for Fallout3 in compounds RagdollDescriptor and LimitedHingeDescriptor by additional version conditioning.
Can anybody check Fallout New Vegas files if there are present any .rdt files? It would be good to have more than 2 files for decoding. Or exists other games with these files?
@neomonkeus @skyfox69 @jonwd7 @Ghostwalker71 @throttlekitty @nexustheru @amorilia

@Ghostwalker71
Copy link
Contributor

I scanned through, Oblivion, fallout3, falloutNV, and skyrim mesh bsa. Falllout3 is the only one that contains the rdt files. my best guess is Bethesda was testing out a kinetic dampening method for physics and abandoned it.

@neomonkeus
Copy link
Member

Can they be generated?

@ttl269
Copy link
Member Author

ttl269 commented Mar 20, 2014

@Ghostwalker71 I have tested custom modified .rdt file assigned to specific armor and also modified default.rdt file. It seems that game applies .rdt file when actor has died and his body becomes a "doll". So I don't see any "practical" use of it.

@Ghostwalker71
Copy link
Contributor

It's more for immersion when playing the game, so moving a body that is wearing full heavy armor is not the same as moving a body wearing denim jeans etc. I also think it effects how and if the body floats in water.

@ttl269
Copy link
Member Author

ttl269 commented Mar 21, 2014

Didn't tested in water yet, but it seems that game don't apply .rdt on living - i.e. character animation controlled - npc or player. I have seen .rdt influence only on dead body - not animation controlled.

@neomonkeus
Copy link
Member

I am not sure how the libraries will react to the ? in the attribute names. Can they be renamed.

@ttl269
Copy link
Member Author

ttl269 commented Mar 24, 2014

Of course, they can. I wanted nifskope user to see and realize, that the purpose of these values is uncertain - just like on other places. For example in compound MultiTextureElement or MorphWeight or even in bhkRigidBody (the name Collision Response?, for example).
So, try to discover, if ? character is a problem and in case that yes, we will have to correct this on many places. And which other way to use to clearly inform the user about uncertainty of purpose of that values? The Name is first what user see, so he should know from first sight, that purpose of this value is not certain.

@neomonkeus
Copy link
Member

Would it be better to get a NifSkope feature to highlight any attr that has a ? in the description or add a new attr=unknown to those we don't know about? I am not sure when I will be able to test this to see if ? in the name is an illegal char. The other thing is how the parsers will deal with it anyways.

@Ghostwalker71
Copy link
Contributor

I know the ? is a special wildcard character in some OS so would likely cause issues there, I'm thinking we should implement a two digit legend N0,N1,N2,N3,etc with N0 as completely unknown use. Then we can inform users to the level of certainty we have regarding a specific value. we could set it so that the name is set to a specific color in nifskope depending on the designation in the description.

@neomonkeus
Copy link
Member

Unknown attributes to be supported by #3 so should remove them.

@neomonkeus neomonkeus force-pushed the feature/bhkRagdollTemplate-support branch from 699cae1 to 64f86a7 Compare November 25, 2014 23:30
Added support for bhkRagdollTemplate block based on two .rdt files (.rdt file is a .nif file) located in Fallout3 directory "meshes/ragdollconstraint". It seems that game uses only file "Default.rdt". Second file "stiff.rdt" is unused and suspicious because in NiHeader it has User Version 2 set to 16 instead of 34 as all Fallout3 files (and also Default.rdt) have.
Can anybody check Fallout New Vegas files if there are present any .rdt files? It would be good to have more than 2 files for decoding. Or exists other games with these files?
@neomonkeus neomonkeus force-pushed the feature/bhkRagdollTemplate-support branch from 64f86a7 to d31e19b Compare November 26, 2014 23:23
neomonkeus added a commit that referenced this pull request Nov 26, 2014
@neomonkeus neomonkeus merged commit fdc87c4 into niftools:develop Nov 26, 2014
@neomonkeus neomonkeus deleted the feature/bhkRagdollTemplate-support branch November 26, 2014 23:24
@neomonkeus neomonkeus modified the milestone: Version 0.7 Apr 12, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants