Re: Dual quaternion skinning operator for XSI

Date : Tue, 18 Dec 2007 18:26:47 +0100
To : XSI(at)Softimage.COM
From : Philipp Oeser <philipp.oeser(at)liga01.de>
Subject : Re: Dual quaternion skinning operator for XSI
Totally agreed...

I was just spreading the word for the rigger here (who up until now is quite happy with what he sees...)
(still: what he noticed was this strange behaviour on scaling which doesnt seem to occur in the other implementations...)


Bradley Gabe schrieb:
Dual Quaternion skinning offers a different mathematical approach to solving for deformation, but it alone by no means is *the* solution. It's the proverbial procrustean bed, some things improve but at the expense of others. While volume is better maintained at joint centers and candy-wrapper twists go away, the resulting deforms still don't look natural, and in some cases look worse than what you get with the traditional envelope algorithm.

The main issue for us as riggers has always been trying to figure out clever ways to isolate our rotational axes per joint in order to distribute different types of deforms per joint motion. Example, an elbow rig. Assuming a standard XSI IK chain, we bend the elbow by rotating the second arm bone in the z axis, and twist the forearm by rotating it in the x axis. The elbow bend is best if the effect is localized close to the joint center. The forearm twist, we would rather distribute down the length of the forearm towards the wrist. A dual quaternion solution doesn't isolate those two deforms, we will still have to do that via rigging. And while the dual quaternion solution will keep our forearms from losing volume as they twist, it's going to be debatable as to whether they look better on the elbow bend.

Here's where the future actually looks bright for those of us without cMuscles built into our software. The more ideal solution for the deformation problem does not lie in an all or nothing algorithm, and possibly not in someone else's pre-canned muscle system. I suspect, the more ideal solution will be found in a conditional deformation system. One where we get to choose from many different types of deforms and have them activate, blend, and normalize based on a set of kinematic rules... When the forearm rotates in the z-axis, apply an 80-20 blend of dual quaternion to traditional envelope. When the elbow rotates in the z-axis, apply a 20-80 blend, along with a localized push operation... Basically, we're taking all the jiggering away from the externals of rigging and moving them to the internals of the deformation system where they can be out of the way of the animators, and nicely multi-threaded. :-)


On Dec 18, 2007 9:24 AM, Philipp Oeser <philipp.oeser(at)liga01.de> wrote:
Hi,
it really is an improvement over the "regular" envelope, thanx
again...slowdown can be noticable but what the heck...
One thing though:
Scaling seems to be quite different than the "regular"envelope. Ladislav
Kavan talks about solving this limitation in his realtime approach by
having extra vertexshader instructions.
Is there something like this in the current implementation?

In any case: thanx!
Philipp




Fernando Navarro schrieb:
>   Hi all:
>   I have released a new envelope operator that implements dual
> quaternion interpolation. It has been designed to replace the existing
> envelope operator using the same inputs (deformers, weights, ...). It
> can be used with NURBS surfaces and curves, polygonal surfaces and
> lattices.
>   As part of the package I have written a brief explanation that will
> help you understand the differences between the traditional and this
> method.
>
>   You can download it at http://www.highend3d.com/f/4977.html
>
>   It's a working release but can be improved. If you have and
> suggestion or find a bug, just drop me a line...
>
>   Hope you enjoy it!
>     Fernando
> ---
> Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
> unsubscribe xsi
>
>


--


LIGA_01 COMPUTERFILM GmbH
Philipp Oeser

MUNICH
Landwehrstrasse 60-62
80336 Munich, Germany
fon: +49 - (0)89 - 51 555 8-88
fax: +49 - (0)89 - 51 555 8-77

www.liga01.com

Diese Nachricht enthält vertrauliche und/oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtümlich erhalten haben, informieren Sie bitte den Absender und löschen diese Nachricht. Das unerlaubte Kopieren und die unbefugte Weiterleitung dieser Nachricht sind nicht gestattet.

This message may contain confidential and/or privileged information. If you are not the intended recipient or if you have received this message in error, please notify the sender and delete this message. Any unauthorised copying, disclosure or distribution of this message is strictly forbidden.


---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi



-- 


LIGA_01 COMPUTERFILM GmbH
Philipp Oeser

MUNICH
Landwehrstrasse 60-62
80336 Munich, Germany
fon: +49 - (0)89 - 51 555 8-88
fax: +49 - (0)89 - 51 555 8-77

www.liga01.com

Diese Nachricht enthält vertrauliche und/oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtümlich erhalten haben, informieren Sie bitte den Absender und löschen diese Nachricht. Das unerlaubte Kopieren und die unbefugte Weiterleitung dieser Nachricht sind nicht gestattet.

This message may contain confidential and/or privileged information. If you are not the intended recipient or if you have received this message in error, please notify the sender and delete this message. Any unauthorised copying, disclosure or distribution of this message is strictly forbidden.
--- Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body: unsubscribe xsi

Search the XSI List archives here or use the advanced search form to search across mailing lists. Searching help is available.
This site supposedly brought to you by Benjamin Grosser and the Imaging Technology Group.