[x3d-public] Seed for a project

John Carlson yottzumm at gmail.com
Sun Aug 13 06:14:49 PDT 2023


Good question about BVH!  I am proposing a new mocap format that doesn’t
need a hierarchy, and can do streaming, graph or grid data.

S:structure of data, G for grid, H for tree, D for D for DAG, C for cycles
V: name or id of structure
F: from joint name and/or id
T:to joint name and/or id
O: out name
B:out data (beginning)
I: in name
E:in data  (ending)
.
.
.
etc.

The animation is done like:
J:Joint id or name
C:Joint class or type (may change)
A:Joint alias or DEF (optional)
X:X location, unit (unit may be defaulted, no unit for scaling)
Y:Y location, unit (ditto)
Z:Z location, unit (ditto)
T:frame or time, unit (ditto)
.
.
.
etc.

-V: remove structure
 -J: remove joint
-F: from joint name and/or id
-T: to joint name and/or id

To remove joint, bones or routes.

Later, I will provide 4 data points per joint over time, for impact
simulator I/O grid

J: Joint, as above
U:up data
D:down data
R:right data
L:left data

Plus ways to remove data by adding a - in front or behind the label and a
leading or a trailing + to add data

This needs to be generalized. Think how to do hypergraphs. More verbose
would be an option,  IDK, i don’t want to reinvent a document format.

Obviously inspired by Katy’s format!

Contributions welcome.

John



On Sun, Aug 13, 2023 at 6:24 AM Joe D Williams <joedwil at earthlink.net>
wrote:

> Why concern about BVH?
>
>
>
> -----Original Message-----
> From: John Carlson <yottzumm at gmail.com>
> Sent: Aug 12, 2023 7:48 PM
> To: GPU Group <gpugroup at gmail.com>
> Cc: X3D Graphics public mailing list <x3d-public at web3d.org>
> Subject: Re: [x3d-public] Seed for a project
>
>
> I guess the best way to do the translations and rotations in BVH is from
> the root to the extremities?  Get segments close to root, then work down
> the tree.
>
> What about multiple parents in the DAG?  How is this resolved?  As
> separate children?
>
> I’m pretty sure BVH is a tree?  Anyone know?
>
> John
>
> On Sat, Aug 12, 2023 at 12:00 PM GPU Group <gpugroup at gmail.com> wrote:
>
>> > 1) provide a way to convert X3D nodes and ROUTEs to BVH with
>> animation.  This will require converting routes/segments over time to
>> translations and rotations. Help is requested.
>> One fuzzy idea: use the nodes and routes to animate, and capture the
>> animation at a choke point in the web3d browser. A good choke point is
>> where the browser applies BVH animations to the HAnim. In freewrl there are
>> a few spots where it calls update_jointMatrixFromMotion() and in theory
>> there could be another call there update_MotionFromJointMatrix() which goes
>> the other way, converting a joint matrix into a bvh motion for recording to
>> a file, with frame timestamp.
>>
>>
>>
>> On Sat, Aug 12, 2023 at 10:14 AM John Carlson <yottzumm at gmail.com> wrote:
>>
>>
>>> Here's the seed for a Java (possibly X3D-Edit) project. A graph/grid
>>> editor.
>>>
>>> https://github.com/coderextreme/impact.dir/tree/master/impactVL
>>>
>>> I was thinking of adding:
>>>
>>>  JSON/XML/VRML/BVH/MediaPipeHolistic/JavaSerialized/OpenUSD  I/O, beyond
>>> native.
>>>
>>> There seems to be a slight issue with input right now, at least with the
>>> sort* input files in Impact.java
>>>
>>> Make a copy of a file externally before modifying in the tool, there's
>>> no way to save to another file currently in Impact.java.
>>>
>>> The goals are:
>>>
>>> 1) provide a way to convert X3D nodes and ROUTEs to BVH with animation.
>>> This will require converting routes/segments over time to translations and
>>> rotations. Help is requested.
>>>
>>> 2) provide a way to visualize ROUTEs with Java (anyone else have
>>> something?)
>>>
>>> 3)  provide different naming convention for different I/O
>>>
>>> 4) take input from MediaPipe Holistic (Python) and convert to BVH.
>>>
>>> 5) provide a way to debug X3D events in Java.
>>>
>>> There are already 2 different visualizations. I hope to add more.  One
>>> (Cell4x4) is based on Jed Donnelly's graphics (see images folder) scanned
>>> from his Impact project (hence the name). I would like to use this with
>>> permission, but I haven't heard from him.  The Java is mine, based on his
>>> original idea (not his or other's code).
>>>
>>> Note that I haven't tested the Cell.java program much recently.
>>> Impact.java is what Jed called the "Flow" or "Floweth" language, but his
>>> idea was to create a textual language.  But a challenge is making the 2
>>> visualizations to work together.  The textual language will be implemented
>>> in X3D/BVH. I don't have a reason to create a new language, nor do I want
>>> to.
>>>
>>> Note that I already have the idea for "Inlines" or expanding nodes into
>>> another window.  I'm not sure how well it's implemented.  I'm not sure
>>> about I/O of nested nodes right now.
>>>
>>> This seems like a lot of fun, and maybe even useful, as opposed to X3D
>>> JSON.
>>>
>>> Ant and Makefiles provided.  Not gradle. Too many garbage files to worry
>>> about iwith gradle--I'm not sure why they have all of them. If someone
>>> wants to provide maven or gradle, that would be cool. Ant is okay in Git
>>> for Windows.  If I have to fall back to Makefiles, I can use Cygwin.
>>>
>>> Any problems, file an issue with
>>> https://github.com/coderextreme/impact.dir/issues.  There's one waiting
>>> for you to close, Jed.
>>>
>>> John
>>>
>>>
>>>
>> _______________________________________________
>>> 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/20230813/3b0a1407/attachment.html>


More information about the x3d-public mailing list