Strange use of <float_min> in (Standard) animations

Post » Tue May 17, 2011 7:36 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
Lori Joe
 
Posts: 3539
Joined: Tue Jun 20, 2006 6:10 am

Post » Tue May 17, 2011 3:25 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
Lalla Vu
 
Posts: 3411
Joined: Wed Jul 19, 2006 9:40 am

Post » Tue May 17, 2011 1:41 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
james kite
 
Posts: 3460
Joined: Sun Jul 22, 2007 8:52 am

Post » Mon May 16, 2011 11:47 pm

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
Dean Ashcroft
 
Posts: 3566
Joined: Wed Jul 25, 2007 1:20 am

Post » Tue May 17, 2011 3:27 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
Ricky Rayner
 
Posts: 3339
Joined: Fri Jul 13, 2007 2:13 am


Return to IV - Oblivion