[x3d-public] Purpose of X3Dng -- Animation

Joe D Williams joedwil at earthlink.net
Thu Oct 20 14:11:20 PDT 2016


----- Original Message ----- 
From: "Roy Walmsley" <roy.walmsley at ntlworld.com>
To: "'Leonard Daly'" <Leonard.Daly at realism.com>; "'Joe D Williams'" 
<joedwil at earthlink.net>
Cc: "'X3D Public'" <x3d-public at web3d.org>
Sent: Thursday, October 20, 2016 10:17 AM
Subject: RE: [x3d-public] Purpose of X3Dng -- Animation


> Hi Joe,

> I’d like to jump in here, and ask two related high level questions, 
> please.

> 1)      Why is the title of the ISO/IEC 19774 standard series 
> Humanoid Animation?

Humanoid Animation? The topic is Humanoid Animation. Aims at 
construction and animation of a realistic human-like avatar that is 
rigorously defined for use as a technically competent model of a real 
human. There are two parts to the standard. Part 1 provides an 
abstract representation of important structures, interfaces, 
parameters, and parts of a humanoid. Part 2 is a treatment of 
converting typical data from sources such as motion capture systems 
for use in animating the 'standard' HAnim humanoid.

> 2)      Are the standards principally concerned with the general 
> topic of skeletal animation (which, as you say, can equally apply to 
> machines as organic entities), or the more specific portion of 
> skeletal animation that is humanoid animation (where it is 
> understood that humanoid also includes non-human)?

Yes, it is understood that this style of humanoid animation also 
applies to non-human and even could be applied to machines that can be 
represented by a skeletal structure. The parts are named with names 
that generally apply to humans. For instance we called a special HAnim 
configuration of Transform a Joint. X3D has the equivalent of bones, 
the connecting things, called Segment because not even all authoring 
tools of the time called the bone a bone so it had to be different. 
The basic stucture is a Joint that can be placed in a hierarchy. When 
the parent joint is rotated, then the child structures follow as 
expected. So the joint is the basic building block.

Segments can connect Joints. Geometry can be parented by a Segment. As 
parent joint is rotated,then the child segment geometry moves as 
expected. This is the simple humanoid with joints, segments connecting 
joints, and geometry attached to segments. This works but 
intersections of segment geometries amay make a vizible seam.

The next step is deformable skin. For this, the skin is bound to the 
skeleton in such a way that individual vertices of he skin geometry 
are displaced according to skeleton movements. This provides a 
continious mesh that moves naturally as the skeleton moves.

Outside X3D HAnim you might even call the Joint an actuator because 
its animation results in some scaled animation of another part. 
However, 19774 does not deal with generalized animation concepts but 
specifically is aimed at a humanoid figure. Its goal is to establish 
standards that allow transporting a animation created for a 
'standard'character to another 'standard' character. In general, if 
the skeleton hierarchy is similar to 'standard' and is similar 
dimensionally, and the initial pose is similar, then animations can be 
shared. That is the goal, to have libraries of animations that can be 
shared by a wide range of characters.

> Thanks in advance,

Does that help? The top consideration is transorting animations. In 
order to do that, X3D has to have a representative 'standard' 
humanoid.

> Roy

All Best,
Joe



From: x3d-public [mailto:x3d-public-bounces at web3d.org] On Behalf Of 
Leonard Daly
Sent: 20 October 2016 18:01
To: Joe D Williams <joedwil at earthlink.net>; X3D Public 
<x3d-public at web3d.org>
Subject: Re: [x3d-public] Purpose of X3Dng -- Animation



Joe,

Hi Leonard,

http://realism.com/blog/purpose-x3d-animation.

There are a few nuggets of some important general stuff mixed in with 
a poor and uninformed view of the industry and what X3D HAnim can do.


There is absolutely nothing in my post about H-Anim. There is no use 
of "H-Anim", "HAnim", or "Human" (all case insensitive).
That was an explicit choice.

It is likely that I am far more informed of standard industry 
practices for character animation than any other active participant in 
the Consortium. I am Chair (4th year) of LA ACM SIGGRAPH -- supporting 
professional in the industry and location where character animation 
was developed and where its capabilities are pushed to its limits. The 
Chapter regularly discusses and has presentations from the top 
modelers, riggers, and animators in the (entertainment) industry. I 
also had tutoring on the specifics from some animators currently 
working in the industry, and the post was reviewed by an industry 
person prior to publication.

So I might be wrong, but I don't really think so.






My opinion is you are not even close to understanding what it is and 
about what is really going on with data used to build and animate a 
humanoid or any other skeletal creation.

How about actually using an X3D browser that does HAnim, the best is 
BSContact (it used to be that Flux was as good as BSContact) or 
instant, or any browser using the prototypes we have, and extend 
yourself to read some of the example code for Segment geometry and 
skin geometry examples and the actual rigging and animation steps 
before you write in an authoritative manner. You're understanding is 
very incomplete and even wrong about details in the article.


Because my point is not H-Anim. Rigged joint animation is not H-Anim. 
As the article describes rigged joint animation can just as easily be 
used for non-humans, non-animals (e.g., trees), or even non-living 
(e.g., machines) models.






Try the X3D features, read the spec, and actually try some example and 
you will see X3D is not as incomplete as you think.


Rigged skin animation is not available for Immersive. This type of 
animation needs to be available at what amounts to Interchange. X3D is 
incomplete with regards to this.







HAnim is not that easy to understand, as you have shown in your 
article. However, X3D HAnim is logical and completely the way it is 
done everywhere. So, quit making remarks about what X3D doesn't do at 
least until you actually do something with what we have.


HAnim is *NOT* the way it is done everywhere. It's only the way it is 
done in X3D, and even that does not follow the same principles as the 
industry work.






The only thing you showed in this article is that you haven't read the 
HAnim spec,


Because it is NOT about H-Anim -- it is about rigged skin animation. 
There is absolutely no assumption about the model being rigged.





you have not used the X3D HAnim to build a character, have not looked 
at any X3D HAnim examples, have not even tried to build anything close 
to an operating HAnim yourself, have not really understood how those 
animation authoring systems work, and finally you haven't even asked 
anyone any meaningful questions about the basic technology.


^^^^^ All irrelevant to my post.


Leonard Daly


P.S. Right now (X3D V3.3) the biggest problem with H-Anim is that X3D 
does not support rigged deformable skin animation of joints. It is 
included in a separate component. My post is showing that this 
animation capability needs to be included in a standard "profile" (in 
V3 terminology) of future X3D. That helps H-Anim by providing an easy 
and existing means to do the animation.








Of course I am open to discussing what is HAnim and how we do it. Just 
ask.

All Best,
Joe


----- Original Message ----- From: "Leonard Daly" 
<mailto:Leonard.Daly at realism.com> <Leonard.Daly at realism.com>
To: "X3D Public"  <mailto:x3d-public at web3d.org> <x3d-public at web3d.org>
Sent: Wednesday, October 19, 2016 8:04 AM
Subject: [x3d-public] Purpose of X3Dng -- Animation





My next post on the topic is up at
http://realism.com/blog/purpose-x3d-animation. This is an explanation 
of
how animation is done using rigged models and why it is important to
include it standard X3D. It does not include node proposals - that 
will
take further research and discussion.





-- 
Leonard Daly
3D Systems & Cloud Consultant
LA ACM SIGGRAPH Chair
President, Daly Realism - Creating the Future





More information about the x3d-public mailing list