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

Brutzman, Donald (Don) (CIV) brutzman at nps.edu
Sun Oct 30 12:12:23 PDT 2022


Hi Joe, thanks for earlier analysis.  I have add your primary points as TODO
future work items in the model.

 

*	<meta content='Joe Williams: 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.' name='TODO'/>

 

Please be advised that we are currently not designing, rather we are simply
attempting to implement the specifications correctly using X3D-Edit
BVH-to-X3D converter.  For design, we are using the specifications with
focus on HAnimMotion node for Clause 6:

*	HAnim Specification version 2.0, Part 2:  Humanoid animation (HAnim)
motion data animation
*	Clause 4 Concepts,
https://www.web3d.org/documents/specifications/19774/V2.0/MotionDataAnimatio
n/Concepts.html
*	Clause 5 HAnim motion data animation using interpolators,
https://www.web3d.org/documents/specifications/19774/V2.0/MotionDataAnimatio
n/AnimationUsingInterpolators.html
*	Clause 6 HAnim motion data animation using Motion objects
*
https://www.web3d.org/documents/specifications/19774/V2.0/MotionDataAnimatio
n/MotionNodes.html

 

*	X3D4 Part 1: Architecture and base components
*	Clause 26 Humanoid Animation (HAnim) component, 26.3.4 HAnimMotion
*
https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-DIS/Part01/
components/hanim.html#HAnimMotion

 

Additionally interpreted by

*	X3D Tooltips, HAnimMotion
*	https://www.web3d.org/x3d/tooltips/X3dTooltips.html#HAnimMotion

 

Since there might not be a discernable correspondence between the joint
arbitrarily chosen in a BVH file and our LOA subsets, am currently setting
loa='-1' (meaning no LOA correspondence).  Facilitating such mocap
distillation seems like a useful task for future tool capabilities.
Meanwhile, am curious to hear what you think about the reported HAnim tree
structure. topology diagnostics are a new level of sophistication for us.
8)

 

Since we know how to do regular X3D animations well, it seems most important
to first unlock the vast trove of BVH animation models out there.

 

Once we do that well, your idea to focus on regular X3D interpolators as a
result from distilling BVH data might be useful too.  Let's "get it right"
in the most straightforward path first.

 

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: x3d-public <x3d-public-bounces at web3d.org> On Behalf Of Joseph D
Williams
Sent: Friday, October 28, 2022 7:52 PM
To: X3D Graphics public mailing list <x3d-public at web3d.org>
Subject: [x3d-public] FW: BVH tasks, joining forces, BVH to HAnim validation

 

From: Brutzman, Donald (Don) (CIV) <mailto:brutzman at nps.edu> 
Sent: Friday, October 28, 2022 7:06 AM
To: Joseph D Williams <mailto:joedwil at earthlink.net> ; John Carlson
<mailto:yottzumm at gmail.com> 
Cc: X3D Graphics public mailing list <mailto:x3d-public at web3d.org> ;
Brutzman, Donald (Don) (CIV) <mailto:brutzman at nps.edu> 
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.html
*
https://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/Motio
nAnimation/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.html
*
https://www.web3d.org/x3d/content/examples/HumanoidAnimation/MotionAnimation
/BvhConversion1.html
*
https://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
<mailto: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
<mailto:joedwil at earthlink.net> > 
Sent: Friday, October 28, 2022 3:58 AM
To: John Carlson <yottzumm at gmail.com <mailto:yottzumm at gmail.com> >;
Brutzman, Donald (Don) (CIV) <brutzman at nps.edu <mailto:brutzman at nps.edu> >;
X3D Graphics public mailing list <x3d-public at web3d.org
<mailto: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 <mailto:yottzumm at gmail.com> 
Sent: Thursday, October 27, 2022 7:16 AM
To: Brutzman, Donald (Don) (CIV) <mailto:brutzman at nps.edu> ; X3D Graphics
public mailing list <mailto:x3d-public at web3d.org> 
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
<mailto:yottzumm at gmail.com> > wrote:

I will try to confirm savage.nps.edu <http://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 <mailto: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/examp
les/HumanoidAnimation/MotionAnimation/
<https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsourcefor
ge.net%2Fp%2Fx3d%2Fcode%2FHEAD%2Ftree%2Fwww.web3d.org%2Fx3d%2Fcontent%2Fexam
ples%2FHumanoidAnimation%2FMotionAnimation%2F&data=05%7C01%7Cbrutzman%40nps.
edu%7C6dd0c7e791c642c2b04e08dab958ae82%7C6d936231a51740ea9199f7578963378e%7C
0%7C0%7C638026089839799950%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQI
joiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2000%7C%7C%7C&sdata=eGtzmQOsHhVG
jvLnQqcw4FqObY%2BLYPBbJmIAK5BQceM%3D&reserved=0> 

*     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
<mailto: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 <http://faculty.nps.edu/brutzman> 

 

From: John Carlson <yottzumm at gmail.com <mailto:yottzumm at gmail.com> > 
Sent: Wednesday, October 26, 2022 2:59 PM
To: Brutzman, Donald (Don) (CIV) <brutzman at nps.edu <mailto:brutzman at nps.edu>
>; Michalis Kamburelis <michalis.kambi at gmail.com
<mailto:michalis.kambi at gmail.com> >; Joe D Williams <joedwil at earthlink.net
<mailto:joedwil at earthlink.net> >; Nicholas Polys <npolys at vt.edu
<mailto: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.bv
h
<https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.co
m%2Fmrdoob%2Fthree.js%2Fblob%2Fdev%2Fexamples%2Fmodels%2Fbvh%2Fpirouette.bvh
&data=05%7C01%7Cbrutzman%40nps.edu%7C6dd0c7e791c642c2b04e08dab958ae82%7C6d93
6231a51740ea9199f7578963378e%7C0%7C0%7C638026089839799950%7CUnknown%7CTWFpbG
Zsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2
000%7C%7C%7C&sdata=WT6GRBxPVfqfPgVZ6H8c17MXSPIgtg1nIl4PKzpyfww%3D&reserved=0
> 

 

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/20221030/a2feb32f/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5353 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20221030/a2feb32f/attachment-0001.p7s>


More information about the x3d-public mailing list