[x3d-public] Purpose of X3Dng -- Animation

Joe D Williams joedwil at earthlink.net
Thu Oct 20 16:37:30 PDT 2016


Great, I think the overall term could be skeletal animation, given 
that you have a skeleton. We are also giving a 'standard' pattern for 
the skeleton so you can build one from scratch and keybaord and X3D 
player, and so that existing skeletons can be adapted to the 
'standard' and, finally, that 'standard' animations can then be shared 
by similar skeletons.

Please tell me if you find something else.

The best path for what you are thinking about is looking at some 
running examples, and some user code. If you don't have access to an 
X3D player that can play our example hanim animations, then please 
postpone thinking about text changes about what HAnim is and is not 
until you can play and read some of the stuff.

Thanks and Best,
Joe

 http://www.hypermultimedia.com/x3d/hanim/HAnimCollection20130818/HAnimCollection20130818.zipI have some later but this would be convenient to find some stuff youcan read with simplist text editor (no auto line wrap, please).----- Original Message -----From: "Roy Walmsley" <roy.walmsley at ntlworld.com>To: "'Joe D Williams'" <joedwil at earthlink.net>Cc: "'X3D Public'" <x3d-public at web3d.org>Sent: Thursday, October 20, 2016 3:09 PMSubject: RE: [x3d-public] Purpose of X3Dng -- AnimationJoe,Thanks for your response. Yes, it does help.Having a summary of what the specification is meant to be about, andunderstanding that it is a subset of that area of computer graphicscommonly referred to as skeletal animation, helps to formulate clearideas on the content for the general portions of the standard, such asthe Introduction, Scope, and Concepts Overview (4.1, 4.2.1).Regards,Roy-----Original Message-----From: Joe D Williams [mailto:joedwil at earthlink.net]Sent: 20 October 2016 22:11To: Roy Walmsley <roy.walmsley at ntlworld.com>; 'Leonard Daly'<Leonard.Daly at realism.com>Cc: 'X3D Public' <x3d-public at web3d.org>Subject: Re: [x3d-public] Purpose of X3Dng -- Animation----- 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 AMSubject: 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 atconstruction and animation of a realistic human-like avatar that isrigorously defined for use as a technically competent model of a realhuman. There are two parts to the standard. Part 1 provides anabstract representation of important structures, interfaces,parameters, and parts of a humanoid. Part 2 is a treatment ofconverting typical data from sources such as motion capture systemsfor 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 alsoapplies to non-human and even could be applied to machines that can berepresented by a skeletal structure. The parts are named with namesthat generally apply to humans. For instance we called a special HAnimconfiguration of Transform a Joint. X3D has the equivalent of bones,the connecting things, called Segment because not even all authoringtools 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. Whenthe parent joint is rotated, then the child structures follow asexpected. So the joint is the basic building block.Segments can connect Joints. Geometry can be parented by a Segment. Asparent joint is rotated,then the child segment geometry moves asexpected. This is the simple humanoid with joints, segments connectingjoints, and geometry attached to segments. This works butintersections of segment geometries amay make a vizible seam.The next step is deformable skin. For this, the skin is bound to theskeleton in such a way that individual vertices of he skin geometryare displaced according to skeleton movements. This provides acontinious mesh that moves naturally as the skeleton moves.Outside X3D HAnim you might even call the Joint an actuator becauseits animation results in some scaled animation of another part.However, 19774 does not deal with generalized animation concepts butspecifically is aimed at a humanoid figure. Its goal is to establishstandards that allow transporting a animation created for a'standard'character to another 'standard' character. In general, ifthe skeleton hierarchy is similar to 'standard' and is similardimensionally, and the initial pose is similar, then animations can beshared. That is the goal, to have libraries of animations that can beshared by a wide range of characters.> Thanks in advance,Does that help? The top consideration is transorting animations. Inorder to do that, X3D has to have a representative 'standard'humanoid.> RoyAll Best,JoeFrom: x3d-public [mailto:x3d-public-bounces at web3d.org] On Behalf OfLeonard DalySent: 20 October 2016 18:01To: Joe D Williams <joedwil at earthlink.net>; X3D Public<x3d-public at web3d.org>Subject: Re: [x3d-public] Purpose of X3Dng -- AnimationJoe,Hi Leonard,http://realism.com/blog/purpose-x3d-animation.There are a few nuggets of some important general stuff mixed in witha 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 useof "H-Anim", "HAnim", or "Human" (all case insensitive).That was an explicit choice.It is likely that I am far more informed of standard industrypractices for character animation than any other active participant inthe Consortium. I am Chair (4th year) of LA ACM SIGGRAPH -- supportingprofessional in the industry and location where character animationwas developed and where its capabilities are pushed to its limits. TheChapter regularly discusses and has presentations from the topmodelers, riggers, and animators in the (entertainment) industry. Ialso had tutoring on the specifics from some animators currentlyworking in the industry, and the post was reviewed by an industryperson 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 andabout what is really going on with data used to build and animate ahumanoid or any other skeletal creation.How about actually using an X3D browser that does HAnim, the best isBSContact (it used to be that Flux was as good as BSContact) orinstant, or any browser using the prototypes we have, and extendyourself to read some of the example code for Segment geometry andskin geometry examples and the actual rigging and animation stepsbefore you write in an authoritative manner. You're understanding isvery 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 beused 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 andyou will see X3D is not as incomplete as you think.Rigged skin animation is not available for Immersive. This type ofanimation needs to be available at what amounts to Interchange. X3D isincomplete with regards to this.HAnim is not that easy to understand, as you have shown in yourarticle. However, X3D HAnim is logical and completely the way it isdone everywhere. So, quit making remarks about what X3D doesn't do atleast until you actually do something with what we have.HAnim is *NOT* the way it is done everywhere. It's only the way it isdone in X3D, and even that does not follow the same principles as theindustry work.The only thing you showed in this article is that you haven't read theHAnim 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 lookedat any X3D HAnim examples, have not even tried to build anything closeto an operating HAnim yourself, have not really understood how thoseanimation authoring systems work, and finally you haven't even askedanyone any meaningful questions about the basic technology.^^^^^ All irrelevant to my post.Leonard DalyP.S. Right now (X3D V3.3) the biggest problem with H-Anim is that X3Ddoes not support rigged deformable skin animation of joints. It isincluded in a separate component. My post is showing that thisanimation capability needs to be included in a standard "profile" (inV3 terminology) of future X3D. That helps H-Anim by providing an easyand existing means to do the animation.Of course I am open to discussing what is HAnim and how we do it. Justask.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 AMSubject: [x3d-public] Purpose of X3Dng -- AnimationMy next post on the topic is up athttp://realism.com/blog/purpose-x3d-animation. This is an explanationofhow animation is done using rigged models and why it is important toinclude it standard X3D. It does not include node proposals - thatwilltake further research and discussion.--Leonard Daly3D Systems & Cloud ConsultantLA ACM SIGGRAPH ChairPresident, Daly Realism - Creating the Future



More information about the x3d-public mailing list