Strange use of <float_min> in (Standard) animations

Post » Tue Dec 06, 2011 11:14 am

Can anyone explain, why and when Animations have values in NifSkope (NiTransformInterpolator for Translation and Scale)? And always for the Forearm twist bones only.

I had seen that in animations coming from the japanes community and assumed this was some sort of conversion error. In Blender these animations show spikes from the wrist area into the sky, but in-game they work.

But now I have found that original Bethesda anims (like idle.kf) have the same values. In NifSkope , in Blender they are (wrongly) imported to +/- 10,000.0, so they don't work if they are re-exported (they show spikes in-game as well). One comment I read somewhere made me believe that this is a work-around for a game-engine error, which prevents fps values of lower than 30. Is this true?
I assume, it can only be set correctly with 3DS Max. Could someone please check there?

I wouldn't care, but I want to modify some anims, and I'm afraid I break something if I don't know what I'm doing here.
User avatar
Danny Blight
 
Posts: 3400
Joined: Wed Jun 27, 2007 11:30 am

Post » Tue Dec 06, 2011 6:27 am

One comment I read somewhere made me believe that this is a work-around for a game-engine error, which prevents fps values of lower than 30. Is this true?
I assume, it can only be set correctly with 3DS Max. Could someone please check there?


Who ever said this was a moron !, Ignore this person in the future.

I wouldn't care, but I want to modify some anims, and I'm afraid I break something if I don't know what I'm doing here.


Float Min/Max get exported for several reason from official exporters usually they are nothing more then a way for the anim to tell the game engine to not load data pertaining to that field hence the reason you see ALOT of Float Min related to the scale field as its very rare to animate scaling onto actors and its especially a bad idea to do this for a game engine that does not hold default scale values and GameBryo does not so you could for instance scale a node to 2.0 using an anim that ends without resetting it then use that same anim and it will scale it to 2.0 again which = 4.0 again 8.0 again 16.0...... you see what I mean do not do it, it causes more issues that it fixes.

If you just want to import then just set that value to 1.0 and resave the anim.
User avatar
Kristian Perez
 
Posts: 3365
Joined: Thu Aug 23, 2007 3:03 am

Post » Tue Dec 06, 2011 7:54 am

Float Min/Max get exported for several reason from official exporters usually they are nothing more then a way for the anim to tell the game engine to not load data pertaining to that field hence the reason you see ALOT of Float Min related to the scale field as its very rare to animate scaling onto actors and its especially a bad idea to do this for a game engine that does not hold default scale values and GameBryo does not so you could for instance scale a node to 2.0 using an anim that ends without resetting it then use that same anim and it will scale it to 2.0 again which = 4.0 again 8.0 again 16.0...... you see what I mean do not do it, it causes more issues that it fixes.

If you just want to import then just set that value to 1.0 and resave the anim.

Makes sense, but that doesn't explain, why Bethesda is using it for their base animations, and only for the Forearmtwist bones (both for location and scale). So far I have only seen it for base idle and some Hand2Hand: could it be that they want to prevent shields to be shown?
User avatar
El Khatiri
 
Posts: 3568
Joined: Sat Sep 01, 2007 2:43 am

Post » Tue Dec 06, 2011 7:06 am

Makes sense, but that doesn't explain, why Bethesda is using it for their base animations, and only for the Forearmtwist bones (both for location and scale). So far I have only seen it for base idle and some Hand2Hand: could it be that they want to prevent shields to be shown?


Its used to optimize memory load per actor that can load several hundred animations at once -> the reason having Idle use these does not mess anything up is because Idle does not set the default Positions, Rotations or Scales of Nodes the Skeleton.nif does.
User avatar
Davorah Katz
 
Posts: 3468
Joined: Fri Dec 22, 2006 12:57 pm

Post » Tue Dec 06, 2011 10:19 am

Its used to optimize memory load per actor that can load several hundred animations at once -> the reason having Idle use these does not mess anything up is because Idle does not set the default Positions, Rotations or Scales of Nodes the Skeleton.nif does.

:confused: :confused: :confused:
Thanks for your reply, SaidenStorm. Looks like you know what you're saying, and I don't need to be concerned. But it raises even more questions for me.
Could you point me to some documentation, tutorials, threads which cover these kind of things, in this depth??? Except for the Wiki I have not found very much yet.
User avatar
Everardo Montano
 
Posts: 3373
Joined: Mon Dec 03, 2007 4:23 am


Return to IV - Oblivion