PDA

View Full Version : TA Normalize Bone Weights -tried it?



erikals
10-02-2010, 07:44 AM
 
just thought it looked interesting...
http://loupguru.com/store/index.php?main_page=product_info&cPath=1_11&products_id=45

 

jasonwestmas
10-02-2010, 08:18 PM
 
just thought it looked interesting...
http://loupguru.com/store/index.php?main_page=product_info&cPath=1_11&products_id=45

 

you may need it for video games because you need to "use weightmaps only" to get the deformations to look right in in the game engine.

MaDDoX
12-24-2010, 02:54 PM
you may need it for video games because you need to "use weightmaps only" to get the deformations to look right in in the game engine.
True. That was also the only way to properly export to Mobu (Motion Builder) using the FBX format, at least up to 9.6 - hopefully in 10 we'll be able to properly export the dynamic weights to weightmaps-only. I've got that specific plugin back when it was free, and it did an okay job, but to be honest it presented some rounding errors that prevented it from being flawless, and it required major editing afterwards. With some tweaks to the script it should be possible to force some numbers rounding to get rid of that issue.

For the record, if you use Maya into your pipeline, its "normalize weights" function works flawless, with the new LW 10 FBX i/o improvements it might be feasible to go back and forth across applications to perform those lil' tasks without a hitch in the app where it's easier. For instance, mirroring weights with the LW plugins is much better than in Maya, where it always screws up (although there are a couple workarounds for that).

jasonwestmas
12-24-2010, 03:28 PM
True. That was also the only way to properly export to Mobu (Motion Builder) using the FBX format, at least up to 9.6 - hopefully in 10 we'll be able to properly export the dynamic weights to weightmaps-only. I've got that specific plugin back when it was free, and it did an okay job, but to be honest it presented some rounding errors that prevented it from being flawless, and it required major editing afterwards. With some tweaks to the script it should be possible to force some numbers rounding to get rid of that issue.

For the record, if you use Maya into your pipeline, its "normalize weights" function works flawless, with the new LW 10 FBX i/o improvements it might be feasible to go back and forth across applications to perform those lil' tasks without a hitch in the app where it's easier. For instance, mirroring weights with the LW plugins is much better than in Maya, where it always screws up (although there are a couple workarounds for that).

Yeah maya is easy to use in that regard. I can't see using LW for exporting characters even with the FBX options out there. Baking the IK into the bone rotations is sooo last decade.

MaDDoX
01-11-2011, 09:44 AM
Baking the IK into the bone rotations is sooo last decade.
Well, if you're exporting to a game engine that's what you gotta do anyways, be it in the source 3D app or in the game engine itself it *will* become a frame-by-frame recording of joint rotations. So I don't see a problem with having it done in the source 3D app tbh, I do it in Maya and Mobu all the time.

jasonwestmas
01-11-2011, 12:39 PM
Well, if you're exporting to a game engine that's what you gotta do anyways, be it in the source 3D app or in the game engine itself it *will* become a frame-by-frame recording of joint rotations. So I don't see a problem with having it done in the source 3D app tbh, I do it in Maya and Mobu all the time.

Believe me, there is a much more automated way to transfer IK influence to the FK bones. If the LW motion baker was smarter I wouldn't care as much but it really is a tedious scenario with characters.

Dodgy
01-12-2011, 06:05 AM
Vertex paint will normalize bone weights. You don't need a plugin.....

erikals
01-12-2011, 09:45 AM
just tried it, yep, if it's bones inside the mesh, it will normalize it... http://erikalstad.com/backup/anims.php_files/king.gif

 

MaDDoX
01-24-2011, 08:25 AM
http://www.3dcel.jp/weightpaint/WeightPaintTool100.zip


If the LW motion baker was smarter I wouldn't care as much but it really is a tedious scenario with characters.
I dunno Jason, Mobu has a "smart bake" option which really reduces the number of keys - and the resulting file size - but it's got me some problems in the past, especially with very extreme rotations like the ones you got from a shoulder when picking an arrow in the back of the character. Something to do with quaternion interpolation, quaternions are limited to 180 degrees as you're probably aware. That's why I find frame-by-frame baking more reliable.


Vertex paint will normalize bone weights. You don't need a plugin.....
It does?!?! Oh F#&*! :-o Thanks bud, now I'll probably have an easier time transfering my weightless skinning to explicit weights.

jasonwestmas
01-24-2011, 09:11 AM
http://www.3dcel.jp/weightpaint/WeightPaintTool100.zip


I dunno Jason, Mobu has a "smart bake" option which really reduces the number of keys - and the resulting file size - but it's got me some problems in the past, especially with very extreme rotations like the ones you got from a shoulder when picking an arrow in the back of the character. Something to do with quaternion interpolation, quaternions are limited to 180 degrees as you're probably aware. That's why I find frame-by-frame baking more reliable.


I guess you've never used a game exporter that bakes all the motion to the bones automatically. I've never had to manually bake anything using mainstream plugins from max and maya for Hero Engine or even Torque. I've even used a home made plugin for LW8.5 that automatically bakes the motion to all the bones for Valve source engine.

warmiak
01-27-2011, 11:16 AM
http://www.3dcel.jp/weightpaint/WeightPaintTool100.zip


I dunno Jason, Mobu has a "smart bake" option which really reduces the number of keys - and the resulting file size - but it's got me some problems in the past, especially with very extreme rotations like the ones you got from a shoulder when picking an arrow in the back of the character. Something to do with quaternion interpolation, quaternions are limited to 180 degrees as you're probably aware. That's why I find frame-by-frame baking more reliable.
.....
.

Yeah, it is actually pretty simple. If you rotate over 180 then there are two ways to do it ... the longer way (say rotating by 200 degrees) or the shorter way ( -(360-200)).
You will arrive at the same location but the shorter arc will flip.
So if you have some in-between keys (say, 80,160 and then 200) and if the inbetween keys (80,160) get removed , you are stuck with a single key (200) and two separate ways to get to it.

MaDDoX
01-28-2011, 05:29 AM
I guess you've never used a game exporter that bakes all the motion to the bones automatically.
I've worked with the Ogre exporter once, and the art guys at a company I've worked once (I was a producer back then pfft) used RAD game tools. Anyways, I admit I don't get it, what's the difference between a custom exporter bake and baking an animation using the standard Maya/Lightwave bake option? Isn't the whole point just making sure your animation is seamlessly ported to the target platform?

jasonwestmas
01-28-2011, 08:21 AM
I've worked with the Ogre exporter once, and the art guys at a company I've worked once (I was a producer back then pfft) used RAD game tools. Anyways, I admit I don't get it, what's the difference between a custom exporter bake and baking an animation using the standard Maya/Lightwave bake option? Isn't the whole point just making sure your animation is seamlessly ported to the target platform?

I guess your experience with LW motion baker is less painful than mine then. That's good.

MaDDoX
02-02-2011, 08:28 AM
I guess your experience with LW motion baker is less painful than mine then. That's good.
Well, not necessarily, probably just luck.. which is not quite comforting for future affairs.. ok you've got me scared now 8~

jasonwestmas
02-02-2011, 09:49 AM
Well, not necessarily, probably just luck.. which is not quite comforting for future affairs.. ok you've got me scared now 8~

Well, RebelHill showed me MF Motion Baker from Mental Fish. I tried it out and I can now tell you that I wouldn't be afraid to bake in Lightwave anymore. :)

http://mentalfish.com

MaDDoX
02-03-2011, 04:05 AM
Well, RebelHill showed me MF Motion Baker from Mental Fish. I tried it out and I can now tell you that I wouldn't be afraid to bake in Lightwave anymore. :)

Aw nice, you got me scared for a second. Best part of the Mental Fish scripts is that they're not compiled, meaning it's easy to dissect and extend the code - which is in fact encouraged by the author according to the .ls comments. Interestingly I'm finding that lscript, although more limited in scope, it's actually more comprehensive than Maya's MEL. It's really easy getting to grips with it and automating boring tasks - which unfortunately Lightwave still has a ton of due to the ancient engine. Thanks for bringing that to our attention. :thumbsup:

warmiak
02-04-2011, 12:44 PM
Well, RebelHill showed me MF Motion Baker from Mental Fish. I tried it out and I can now tell you that I wouldn't be afraid to bake in Lightwave anymore. :)

http://mentalfish.com

Does it bake IK stuff ?

Cageman
02-04-2011, 01:07 PM
Does it bake IK stuff ?

Yes. One of the few things it doesn't bake is Match Goal Orientation. So, don't use that if you are setting up a rig. I recomend using the new tools for orient constraining or use the OrientConstrain motionmodifier to achive the same effect as Match Goal Orientation.

It is great to see that there are others than me finding use for MF Motionbaker. :) It was actually developed upon my request, since the native Motionbaker had a very hard time seeing things such as Node Item Motion and bake the results of that down to keyframes.

:)

There is also a tool from DStorm that is called Bake IK to Key, which, when run, bakes ALL IK-chains down to keyframes and after baking is finished, it removes the IK. So, if you have multiple IK-chains in your scene, they will all be baked (and it is superfast).

http://www.dstorm.co.jp/dsproducts/lw9/FreePlugins/Motion/Bake_IK_to_Key.html

:)

warmiak
02-04-2011, 02:24 PM
That's interesting.

I have been doing animation/mesh exporters from Lightwave to diferent formats for various people for 5 years now and I always coded using the SDK instead of using the script , mostly because of performance etc but there are still some issues I haven't been able to solve even when using the SDK.

One is how to capture information coming from custom motion modifiers set to "after IK".
As far as I know, the only way to capture IK data with C code is to create a custom motion modifier, set it to "after IK" and have it capture incoming data during animation replay - that's all happening automatically and works great but it fails when someone has another motion modifier set to "after IK" and since there is no way in the SDK to indicate that my motion modifier has to be the very last one to be run in the chain of motion modifiers, my code tends to miss whatever other "after IK" motion modifiers are contributing to the final node transform.

There is just no unified way to capture the very final transform , for instance to handle "Match Goal Orientation" I need to query if it is on and then manually transform everything affected by it all the way to the world space and back ... stuff like that.
Hopefully, their Core SDK will make it more predictable and easier to use.