-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Vito Miliano wrote:
> Sorry, I have to call foul on some of this. > > Any animation you see in any Unreal Tournament 2004 (except for the > flags in CTF, I think, and anything that just moves textures around, > which is how moving tree leaves works most of the time) has a skeleton > behind it. The same skeletal system that drives characters drives the > vehicles; the physics system is competely separate. It is possible, I am not privy to the details of the proprietary Unreal engine, but I did lot's of skeletal animation during the past four years during my PhD in VRlab, both with Cal3D and other systems and I am quite familiar with the workings behind this. What strikes me odd - how are you going to rotate the wheels of the vehicle when all "skeleton" that is being modelled there has a star-like topology? The "bone" doesn't even pass through the rotation axis of the wheel! It could be used perhaps as a suspension strut for the physics, but that's all - it is useless to rotate the wheel (that's what the original poster wanted, AFAIK). I didn't say that it is impossible to do it in this way. However, take into account that it makes a large difference, whether you are trying to make models for Unreal and for Soya. Both engines work in different ways and if Unreal animates everything using only skeletons - I do not think so, as it is a huge overkill if you do not need skinning (e.g. on a car), but I have no means to verify it - then you have also to model everything using skeletons only. You are essentially stuck with whatever the engine and the exporters allow. In Soya, you have direct access to the transforms and there is no need to use a cannon to shoot a fly. Btw, notice that I didn't speak about the joint hierarchies for physics, but about bones - these are similar but different things. Perhaps the Unreal exporter uses Maya bones to specify the physical joints? I do not know, but this doesn't fit with the workings of Cal3D. > You can use physics > to trigger your e.g. tire rotation animations, but it's not necessary. Well, not that you can, but you *have to*. Otherwise the wheels would appear "sliding" and floating, because the movement of the wheels would not correspond to the velocity of the vehicle and terrain. It is possible to calculate this without physics (e.g. ReplicantBody does this for human characters to avoid the effect of sliding feet), but if the physics engine is there anyway, I do not think that anybody would do it without. > Animations can be blended or played back at any point along the > hierarchy, so one animation that drives one wheel can be played back > independently of anything else going on in the car. Yeah, this is pretty standard animation blending. > If you poke around a little more, you'll see my name signed to some of > those. I don't know of any reason why Cal3D wouldn't be able to handle > programmatically animating a vehicle other than the fact that no-one's > tried it; I didn't say that Cal3D wouldn't be able to do it, just that it is a huge overkill and most likely you wouldn't be happy with the result. Cal is optimized for human bodies, does skinning, keyframe interpolation and such. In fact, unless you write your own animation mixer (even a very simple one), there is no way how to drive the "bones" yourself from outside. Cal expects that all animation happens by means of Cal animations (static key frame animations), not by external influence (procedurally) and it is coded to that effect. Been there, done that - I have done one version of the osgCal node for OpenSceneGraph :( That's why you wouldn't like to use Cal3D for this. Yes, in principle you can do it, but you can also go around the world by bike. Same level of difficulty. > skeletal systems aren't a cakewalk, but it's not brain surgery > either. Don't rule it out just because it's not trivial. I didn't rule out anything. I have just said that this is not a good solution for the problem given by Mark. Regards, Jan - -- Jan Ciger GPG public key: http://www.keyserver.net/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org iD8DBQFDWo5pn11XseNj94gRAiESAKDSwdKVY+l1fVrfy3J7UwUWK5ksRACg25zu 6GzPkLZUQK/Zm6MWf9evobQ= =1bDh -----END PGP SIGNATURE-----
