[sldev] Body motion and facial expression tracking, Microsoft did it
Jan Ciger
jan.ciger at gmail.com
Sat Jun 6 20:53:11 PDT 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Argent Stonecutter wrote:
> If I was talking about a complete procedural animation from scratch,
> sure, but I'm not. I'm talking about using IK to tweak a canned
> animation slightly to adjust for differences between avatars.
But you still need to do those calculations. The way this is done is by
interpolating quaternions between the pose generated by IK and the
original pose, taking the weighting into account, not just modifying the
end of the hand, for example. That could lead to inconsistencies, like
"rubber-like" stretching limbs if the other joints are not moved
correctly as well.
Then it needs to be blended with whatever other animations the av is
doing (e.g. walking + reaching). And this is still the most primitive
approach of how to use IK to modify animations.
Of course, this is not something the script will do, but someone has to
implement the "magic" behind the LSL function you want ... The relevant
code is today on the client *only*. At least part of it would need to be
server-side if you want to synchronize two avatars somehow.
> It'd all be done in the client. The canned animation would play and
> when the prims running the tweak got into a certain range of each
> other they'd get pulled gently together like magnets in jello. The two
> different clients might not see the same things happening at quite the
> same time, but that's already true for canned animations.
I do not see what will be really the advantage of all this if it will be
client-side only and not same for everyone (my IK solution can be
completely different from yours due to lag, numeric accuracy issues,
slower machine, etc.).
A much simpler and better looking result could be achieved by just
implementing synchronization for animations. Then you know that when you
start hugging someone at a certain position, he starts too at the right
position and you meet correctly. You do not need any IK for that, a huge
boon for already slow clients. This is how games implement it - you
won't find any IK in today's game engines.
Regards,
Jan
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org
iD8DBQFKKzmjn11XseNj94gRAuPxAJ9dWfD/JwE2i16cTK5KcNUgoGyEsACeOrU1
3p6NirL5Rm4XjLSUOnzayaE=
=p7/d
-----END PGP SIGNATURE-----
More information about the SLDev
mailing list