[x3d-public] X3D minutes 29 May: HAnimMotion efficiency, X3D4 draft publication milestone

Don Brutzman brutzman at nps.edu
Fri May 29 10:02:47 PDT 2020


Call planned this week on the familiar Zoom room. (In June there may be a change.)  Topics follow.

Attendees: Anita Havele, Vince Marchetti, Dick Puk, Doug Sanden, Don Brutzman.

0. Website issues.

We discussed and agreed to send email regarding website issues that are reported in the X3D Working Minutes to Anita Havele and Vince Marchetti.  Typically these are also archived on communications at web3D.org list for easy future reference.

-- 

1. HAnimMotion implementation report and potential DEF/USE efficiencies (Doug Sanden)

> Here's a preview of what I would present
> http://dug9.users.sourceforge.net/web3d/tests/hanim/web3d/HAnim_Motion.pdf
> on my zoom computer I'd just click the links to show mp4 or data files 

Doug is lead architect of FreeWrl player.

[1] FreeWRL
     http://freewrl.sourceforge.net

Today, as part of screen recording, he showed

a. HAnimMotion example from HAnim2 specification VRML example, both in source and video playback. (Also being converted to other X3D4 forms).
b. Some touchups of examples were necessary but he got things working with little difficulty.
c. While implementing he saw that some of the very large data blocks might be more efficiently handled via DEF/USE when multiple characters were re-using the same information (for example, multiple characters following each other).
d. MotionData and MotionPlay were the clean splits that he evaluated for HAnimMotion.  Interesting approach!

   <HAnimMotionPlay enabled='true' loop='true' >
   <HAnimMotionData DEF='MOTIONDATA' frameCount="392" frameDuration=".033333"
              joints="humanoid_root, l_hip, l_knee, l_talocrural, r_hip,
                    r_knee, r_talocrural, vl5, IGNORED, l_shoulder,
                    l_elbow, l_radiocarpal, IGNORED, r_shoulder, r_elbow,
                    r_radiocarpal, IGNORED, skullbase"

              channels="6 Xposition Yposition Zposition Zrotation Xrotation Yrotation
                      3 Zrotation Xrotation Yrotation
                      3 Zrotation Xrotation Yrotation
                      3 Zrotation Xrotation Yrotation
	[... etc. ...]
   <HAnimMotionData>

<HAnimHumanoid>
        <!-- ... etc. ... -->
        <HAnimMotionPlay enabled='true' loop='true' >
               <HAnimMotionDataFile url='"01_02.bvh"'/>
        </HAnimMotionPlay>
</HAnimHumanoid>

e. He then described work with BVH motion data files.  He located numerous libraries and examples, with CMU particularly interesting, and then some BVH conversions of their captures. He then wrote a BVHReader.c (under an unrestricted MIT license) and created an experimental node to test it.

f. Test case: read X3D Motion data from example in specification, converted that to BVH format, then was able to read result in Blender.

g. Discussion of possible improvements to HAnimPlay node.

We discussed how modifying X3D4 specification to fully capture HAnim2 Motion Object as a pair of nodes is acceptable from the perspective of ISO rules.

Meanwhile such a split might be useful for other implementing languages as well, and so an amendment to HAnim2 specification itself may be advisable.  Of note is that errata and possible additions (such as LOA-4) to the HAnim2 Examples annex are already being generated.

h. Reading BVH directly: he did that, see example above.

For those examples, I think we could have a HAnimMotionData node that also included url field, so HAnimMotionDataFile would not be needed.

Some issues follow.
i. Mapping of Joint names: we have regular definitions in HAnim for actual humans but also allow arbitrary names.  It seems like some lookup tables or comparison algorithms (i.e. somebody's names to LOA-1) might be appropriate.  Doug identified 3 possible techniques:
j. Rotation accumulation over IGNOREd joints: need to keep track of intermediate rotations when converting.
k. Blender points of interest when mapping models - worth exploring and documenting further.

l. Other HAnim authoring implementations:

[2] Suwon University HAnim Editor
     Can you folks release it?

[3] X3D-Edit BHV import
     https://savage.nps.edu/X3D-Edit
     TODO links to source, screenshots

Any others?

Joe Williams, John Carlson and Don Brutzman are actively working on collecting prior HAnim examples in an new HumanoidAnimation example archive.  Numerous quality assurance (QA) tests in X3D Schematron and corrections in X3dTidy are being applied.

[4] HumanoidAnimation X3D Examples Archive
     https://www.web3d.org/x3d/content/examples/HumanoidAnimation/#information

Current directories there are Characters Legacy Polygonal Prototypes Specifications Templates, with more directories planned for Motions Medical Organs Skeleton and Skin.

[5] X3D Resources: Quality Assurance (QA)
     https://www.web3d.org/x3d/content/examples/X3dResources.html#QualityAssurance

[6] X3D Schematron rules
     "X3D Schematron helps authors by providing quality assurance to ensure intended results in X3D scenes and metadata."
     https://www.web3d.org/x3d/tools/schematron/X3dSchematron.html

[7] X3D Tidy cleanup
     "X3D Tidy is an XSLT stylesheet that checks for simple authoring difficulties in X3D scenes and fixes them."
     https://www.web3d.org/x3d/stylesheets/X3dTidy.html

[8] X3D for Web Authors (X3D4WA) Tutorial Slideset HAnim
     http://x3dgraphics.com/slidesets/X3dForAdvancedModeling/HumanoidAnimation.pdf

Note that another annual HAnim Competition is planned as part of

[9] Web3D 2020 Conference - HAnim Competition
     https://www.web3d.org/event/web3d-2020-conference-virtual-event
     http://2020.web3dconference.org
     http://2020.web3dconference.org/competition-hanim

Video of today's demonstration will be provided when available.

----

2. X3D4 draft specification publication: request all active input efforts are complete in 1 month.

Goal of release: provide everyone with understanding of what X3D4 is, enabling maximum implementation and interoperability.

a. We last published an X3D4 public draft one year ago, in support of SIGGRAPH 2019.

	X3Dv4 Draft Specification available to public now!
	Release reviewed satisfactorily by X3D Working Group, 19 July 2019.
	https://www.web3d.org/news-story/x3dv4-draft-specification-available-public-now
   
	Web3D at SIGGRAPH 2019
	https://www.web3d.org/event/siggraph-2019

b. We are now nearing the planned milestone for public release, again prior to (virtual) SIGGRAPH 2020.

	SIGGRAPH 2020
	https://s2020.siggraph.org
	https://s2020.siggraph.org/attend/health-and-safety

	X3D Version 4 Overview
	https://www.web3d.org/x3d4

c. All contributors are asked to have their inputs complete and reflected in the spec.

	https://github.com/Web3DConsortium     (public)
	https://github.com/Web3DConsortium/X3D (working group, member only)

	Mantis Issue tracker: View Issues
	https://www.web3d.org/member-only/mantis/view_all_bug_page.php

As lead of Design Printing Scanning Working Group, Vince reports their priorities:

> 1.	Adding Normal field to PointSet:
> a.	No change made in V4 Specification yet: Section 11.4.11
> b.	x3d-public discussion Dec 28 2019 [http://web3d.org/pipermail/x3d-public_web3d.org/2019-December/011603.html]
> c.	Mantis issue 1261: No decision documented in Mantis issue on whether to add Normal node to PointSet [https://www.web3d.org/member-only/mantis/view.php?id=1261]
> 2.	Changed default value of containerField in the XML encoding for Metadata nodes
> a.	This is a change to the DTD defined for the XML encoding
> b.	Mantis issue 1283 [https://www.web3d.org/member-only/mantis/view.php?id=1283 ]
> c.	There is as yet no version 4.0 of the x3d-3.3.dtd or x3d-3.3.xsd documents. In version 3.3 of the standard documents they are in the ISO-IEC19776-1v3.3/Parto1 folder

Available and frequently updated (published and version control and documentation) via

	https://www.web3d.org/specifications

> PointProperties node
> a.	spec prose in V4   is present at section 12.4.5: Spec prose notes a single To Do to reference the ISO Registry for MarkerType [https://isotc.iso.org/livelink/livelink/fetch/-8916524/8916549/8916590/6208440/class_pages/markertype.html]
> b.	Mantis issue 1252 : final comment is need to reconcile with PBR [https://www.web3d.org/member-only/mantis/view.php?id=1252]

As specification editors, Dick and I request that everything be sorted out and complete within one month, deadline 30 June.  That will enable us to confirm readiness for publication, so that X3D Working Group can recommend draft publication to Web3D Board of Directors.

Spot check of components listing on top page:
- Annotations needs to be removed,
- Layout has at least 2 implementations, need to discuss, likely won't deprecate.

HTML might best land as a new Annex M with mentions in Concepts, working approach is
- How to pass events to/from HTML script and event producers
- How to apply CSS stylesheets,
- Formalization of X3DOM approach (in the DOM) and X_ITE approach (in an X3DCanvas via url)

Everything on the books looks achievable - please keep charging!

-----

3. Web3D 2020 Conference forecast.

	Web3D 2020, The 25th International Conference on 3D Web Technology
	9-13 November 2020, Virtual Conference, "3D for a Hyperconnected World"
	https://2020.web3dconference.org

The program committee has decided to go ahead.  Much work in progress.

Deadline for submissions 5 June 2020...  Keep Writing Those Papers!!

Thanks for all feedback, MVP to Doug for the presentation today.  Most impressive.

Have fun with X3D!  8)

all the best, Don
-- 
Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman at nps.edu
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman



More information about the x3d-public mailing list