[x3d-public] FW: BVH tasks, joining forces, BVH to HAnim validation

Joseph D Williams joedwil at earthlink.net
Fri Oct 28 19:52:01 PDT 2022



From: Brutzman, Donald (Don) (CIV)
Sent: Friday, October 28, 2022 7:06 AM
To: Joseph D Williams; John Carlson
Cc: X3D Graphics public mailing list; Brutzman, Donald (Don) (CIV)
Subject: RE: [x3d-public] BVH tasks, joining forces, BVH to HAnim validation

➢ Hi Joe – thanks for analysis.

Thanks for the oportunity

➢ Intent is to produce compliant HAnim if at all possible.  Am mimicking whatever is provided by BVH model using HAnim nodes.

Just go ahead an construct the ‘standard’ skeleton. Since all those are probably mostly have the same ‘defect’ check hands and feet also then the conversion may be systematic. 

➢ Please note that BVH files are often dissimilar in model structure.  If you see a better HAnim tree structure we ought to map to, great, please advise.  Will try to produce better tree diagrams – diagnostics follow.

No, the bvh model was considered (Arizona, if I recall) but we opted for more realistic, not to mention better functionality, but that was then. We want standard animations running on standard skeletons. loa

> Also needed: how can we figure out better default viewpoints? 

First, stop the animation, rescale to humanoid, and navigate or maybe the player can find the thing, or try and figure it out by some analysis (as shown in example)? Sets of these may be similar. Best practice mocap eventually found a standard before animation pose and starting view location. 

➢ At a minimum we ought to be able to have X3D Schematron diagnose whether results are compliant X3D HAnim LOA—0,1, 2, 3, or 4.  Here are current errors/diagnostics.
Just use loa4, but let’s get some simple alias for joints, segments, sites, etc. to make it simple.


. . . 

➢ I think we are getting memory errors with this very large file. 

No wonder with those ridiculous and repeated keytime lists that don’t work that well anyway.

Thanks for All,
Joe



• https://www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation/PirouetteIndex.htmlhttps://www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation/Pirouette.x3d


Performing DTD validation...
Checking file:/C:/x3d-code/www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation/Pirouette.x3d...
Attribute value "BvhPirouette_hip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
Attribute value "BvhPirouette__tip" of type ID must be unique within the document.
XML DTD validation: fail!

[I think I see how to fix that in the converter, a DEF name is missing in the middle of each of the __ entries above.  Will try this weekend.]

Performing X3D Schematron check...
[….] didn’t come back, unfortunately


I think we are getting memory errors with this very large file.  Am hoping to produce a Pirouette version of the pretty-print tree, similar to

• https://www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation/BvhConversion1Index.htmlhttps://www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation/BvhConversion1.htmlhttps://www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation/BvhConversion1.html#HipsHAnimHumanoidReport

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 https:// faculty.nps.edu/brutzman

From: Joseph D Williams <joedwil at earthlink.net> 
Sent: Friday, October 28, 2022 3:58 AM
To: John Carlson <yottzumm at gmail.com>; Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>; X3D Graphics public mailing list <x3d-public at web3d.org>
Subject: RE: [x3d-public] BVH tasks, joining forces, vim plugin

The only problem I am having with these examples is that the skeleton is not x3d Hanim. 
It is simplified legacy version, undefined by hanim, left in the bvh dust by reason of reality. 
The example varies from Hanim differing mainly, but not exclusively, in the simplification of the spine and its role in controlling shoulder and head motions  This skeleton is not bad, but just too simple to show more realistic complex motions, like throwing something. It represents a noble relic in steps toward a deliverable humanoid. 

Anyway, Please consider that the target playback skeleton is Not any bvh skeleton that happens to be described in whatever bvh file we are leveraging. For any bvh conversion the target should be a ‘standard’ loa4 skeleton along with converted x3d hanim user code for skeleton and animations. (Note: Define some standard simple names/numbers for loa4 joints-segments-sites to reduce text).
Likewise, if an x3d tool exports x3d to bvh, it should be a ‘standard’ skeleton (with uniform time steps). 
This gives the author full control of the skeleton and the animations and makes the stuff usable and actually reusable. 

I think this is a necessary when the goal is generation of transportable animations, only really possible using a ‘standard’ Hanim character. Again, the example skeleton I see there is just fine for some stuff, like standing around, but when you have to get real, then  you won’t have to play long to see limits. 

More historical fun with hanim and x3d and yes, even bvh. 
bvh to hanim to gltf 
Reminds me that the x3d Hanim animation repository would naturally deliver a ‘standard’ animation set aimed at a ‘standard’ loa4 skeleton, and the delivery format would naturally be gltf. 

Thanks, 
Joe


From: John Carlson
Sent: Thursday, October 27, 2022 7:16 AM
To: Brutzman, Donald (Don) (CIV); X3D Graphics public mailing list
Subject: Re: [x3d-public] BVH tasks, joining forces, vim plugin

Okay, X3D-Edit is now on sourceforge.

On Thu, Oct 27, 2022 at 8:33 AM John Carlson <yottzumm at gmail.com> wrote:
I will try to confirm savage.nps.edu today, and try to download a new version of x3d-edit.

If there’s still a problem, i will provide screenshots.

John

On Wed, Oct 26, 2022 at 8:29 PM Brutzman, Donald (Don) (CIV) <brutzman at nps.edu> wrote:
John: thanks, I just tested, X3D-Edit converted successfully (with warning about very large file) and result validated for me.  Haven’t viewed the scene animation in X3D yet.
 
Am running a full build on HAnim examples and will upload/announce on x3d-public when this example is ready.
 
Preliminary results in sourceforge at
 
• https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation/
• see Pirhouette.bvh  Pirhouette.bvh.txt  Pirhouette.x3d
 
Results will be going to
 
• https://www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation
 
Question: were you able to find the original pirouette.bvh used by three.js in the CMU repository?  Or elsewhere on Web?  The github three.js site does not appear to give any provenance information for this model (and BVH file format does not have a place to put that).
 
Onward we go…
 
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 https:// faculty.nps.edu/brutzman
 
From: John Carlson <yottzumm at gmail.com> 
Sent: Wednesday, October 26, 2022 2:59 PM
To: Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>; Michalis Kamburelis <michalis.kambi at gmail.com>; Joe D Williams <joedwil at earthlink.net>; Nicholas Polys <npolys at vt.edu>
Subject: Fwd: BVH tasks, joining forces, vim plugin
 
NPS WARNING: *external sender* verify before acting.
 
Joe, Nicholas, can you help with debugging conversion of this pirouette.bvh in X3D-Edit?  There's a ton of stack trace from X3D-Edit when one tries the first two options from the X3D-Edit menu.  I'm unsure if the .bvh file currently works on michalis' convert.php page (may be worth a look as well, looked like .bvh was not accepted model type.
I believe this may be the bvh file:
 
https://github.com/mrdoob/three.js/blob/dev/examples/models/bvh/pirouette.bvh
 
I will go looking for more .bvh files in three.js
 
GL,
 
John



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


More information about the x3d-public mailing list