[X3D-Public] HAnim DiamondMan: review, adding support, improvements

Michael Aratow maratow at noegenesis.com
Wed Apr 3 23:57:21 PDT 2013


Awesome work!!!

On 4/3/13 8:07 PM, Don Brutzman wrote:
> Joe and I are starting to slog through examples.  William Glascoe 
> cheered us on tonight.  Here are notes, questions welcome.
>
> Our slogan is "the path to H-Anim 2 must first go through H-Anim 1." 
> We've got to make sure all of the good work in the past is captured, 
> documented, tested and repeatable.  Here we go!
>
> 1.  We reviewed specification and tooltips as part of this, making 
> some nice clarifications to the tooltips.
> http://www.web3d.org/x3d/content/X3dTooltips.html#HAnimHumanoid
>
> 2.  We next decided to first tackle the DiamondMan models.
>
> http://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation/DiamondManLOA-0.html 
>
> http://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation/DiamondManLOA-0.x3d 
>
>
> To avoid breaking the original copyright, we looked at whether 
> shuffling Matt's metadata helped clarify things.  For example:
>
>      <Group DEF='OriginalAuthorMetadata'>
>        <WorldInfo info='"HANIM 1.1 Default Joint Centers, 
> Level-Of-Articulation 1 
> -------------------------------------------------------- HANIM 1.1 
> (VRML 2.0) Author name: eMpTy (a.k.a. Matthew T. Beitler) HANIM 1.1 
> (VRML 2.0) Author email: beitler at graphics.cis.upenn.edu or 
> beitler at acm.org HANIM 1.1 (VRML 2.0) Author homepage: 
> http://www.cis.upenn.edu/~beitler HANIM 1.1 (VRML 2.0) Compliance 
> Date: May 12, 1999 HANIM 1.1 Compliance Information: 
> http://ece.uwaterloo.ca/~h-anim/ Construction Info (joint centers): 
> The joint centers of this figure are based on the work of Norman 
> Badler, director of the Center for Human Modeling and Simulation at 
> the University of Pennsylvania. The original document which these 
> joint centers are based on can be found at: 
> http://www.cis.upenn.edu/~badler/anthro/89-71.ps, .pdf"' title='HANIM 
> 1.1 Default Joint Centers, LOA0'/>
>        <!-- Original HAnimHumanoid 
> info='"authorEmail=beitler at graphics.cis.upenn.edu beitler at acm.org" 
> "authorName=Matthew T. Beitler" "copyright=Copyright 1999 Matthew T. 
> Beitler" "creationDate=05/12/99" "humanoidVersion=JointCenters 1.1 
> LOA0" "usageRestrictions=PERMISSION TO FULLY USE THIS SCENE GRAPH IS 
> GRANTED PROVIDED THIS COPYRIGHT INFORMATION AND DOCUMENTATION OF THE 
> ORIGINAL AUTHOR IS INCLUDED. This humanoid scene graph is provided 
> _as-is_ and without warranty of any kind express implied or otherwise 
> including without limitation any warranty of merchantability or 
> fitness for a particular purpose."' -->
>      </Group>
>
> Still pretty darn confusing...
>
> 3.  Attached are screen snapshots for how to X3D-Edit allows editing 
> HAnimHumanoid node.
>
> Notice the tabbed support for the "info" field, breaking the 
> information attributes into repeatable chunks.
>
> This is the kind of help that tools can provide to authors who are 
> checking or creating content.  Am hoping to do more and more of that.
>
> So this first examination took some time, but it helped us get 
> recentered on what is possible and what can be improved.
>
> 4.  The Quality Assurance checkbox in X3D-Edit showed the following 
> scene errors in diamond man LOA 0:
>
> cvc-complex-type.4: Attribute 'name' must appear on element 'HAnimJoint'.
> cvc-complex-type.4: Attribute 'name' must appear on element 'HAnimJoint'.
> etc.
>
> So that is a previously unsuspected error in this scene (and others) 
> that need to be fixed.
>
> Cool!  The worst bugs are undiscovered bugs, now we found things to fix.
>
> Anyone can confirm this diagnosis using the X3D Validator.
> https://savage.nps.edu/X3dValidator
> http://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation/DiamondManLOA-0.x3d 
>
>
> We traced down the reason for this requirement.  It is found in the 
> H-Anim 1.1 specification:
> http://h-anim.org/Specifications/H-Anim1.1/#nodes
> "The Joint node is also used to store other joint-specific 
> information. In particular, a joint name is provided so that 
> applications can identify each Joint node at runtime."
>
> We checked the H-Anim specification for each and every node.  The name 
> field is always required for each of the nodes.
>
> I checked our X3D Schematron rules and found that it would allow an 
> empty name to pass through...  ouch.  now fixed!
>
> We also found that X3D DOCTYPES and X3D Schema were also 
> inconsistent/mistaken about requiring the name fields... also fixed!
>
> Found another problem with suggested values.  Future fix follows:
> - TODO confirm, add jointNames and segmentNames as shown in
>
> http://www.web3d.org/files/specifications/19774/V1.0/HAnim/concepts.html#Hierarchy 
>
>
> These corrections will all be tested, confirmed OK and then pushed to 
> our public sites, then announced separately.
>
> Way cool!!  More bugs getting found for fixing, now and in future.  8)
>
>
> 5.  Joe suspected that this LOA model is actually more complicated 
> than it should be... so we checked.  Yes it is more than Level 0, too 
> many joints there.  This led to a number of other issues which we 
> explored.
>
> The H-Anim 1.1 spec lists legal Joint and Site values for each Level 
> of Articulation (LOA).
> http://h-anim.org/Specifications/H-Anim1.1/appendices.html#appendixa
>
> This is very cool... also pretty mixed up.  We found:
>
> - H-Anim specifications are not correctly linked (or labeled regarding 
> status) on Web3d.org, Len and Dick can you please fix?
> - There is a lot of internal structure in HAnim that has always been 
> pretty well defined but hard to follow
> - We will make improvements in validation and tools to help authors by 
> taking advantage of this required structure
> - For example, X3D Schematron should be able to tell what LOA a scene 
> actually is; we will write rules for that
> - We will start a wiki page dedicated to just listing fixes needed in 
> the next round of H-Anim specification update (fixes and 
> clarifications, not adding any brand-new functionality)
> - The Diamond Man examples in the archive are pretty good, but carry 
> along baggage with them... We expect to start some new examples for 
> LOA levels that match the spec more simply.
>
> Whew.  Almost three hours to get just this far and we found even more 
> to do... but lots of really solid progress!
>
> Totally encouraging.  Comments and questions welcome.  Thanks Joe and 
> thanks William.  Onward we go.
>
> all the best, Don
>
>
> _______________________________________________
> X3D-Public mailing list
> X3D-Public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20130403/07c07887/attachment.html>


More information about the X3D-Public mailing list