[x3d-public] [x3d] Spec Comment by on 19775-1: X3D Architecture- V4.0:component support needed for glTF inline loading conversion

Joseph D Williams joedwil at earthlink.net
Wed May 4 08:55:30 PDT 2022


➢ calculate "inverse bind matrices" from H-Anim nodes (thus essentially converting H-Anim -> glTF animation) and then follow glTF skinned animation approach to make it suitable on GPU.
➢ 
https://github.com/michaliskambi/x3d-tests/wiki/Converting-glTF-to-X3D

Thanks for all work on this, as it is an important connection that might be shown. With all 4.0 going on, but here is where the tool needs to generate some additional data in addition to what is in the gltf fields directly. Since animation data for each frame is not based on the last frame, but from the state prior to animation, a style of animation could be to keep the original pose, or instead to create the inverse matrix operation. So, for each frame, the tool uses the last value and inverse matrix to find the original value, then applies the new animation data to the point. At least, that is what seems to present itself. In HAnim the field called skin defines this basic state of the mesh prior to animation. This  allows the tool to have the original values to create the operation, getting rid of those cumbersome coord interpolators and restores the possibility of realtime animation. Use of the gltf fields to derive coordinate interpolators for this is was a breakthrough in transporting animation data. First the export was only available as video frames, so the animation export was just a giant file of pixels for each frame, not even a video yet, Never any hint of the animation engine work. 
Thanks and Best, 
Joe



From: GPU Group
Sent: Wednesday, May 4, 2022 7:56 AM
To: X3D Public Mailing List (x3d-public at web3d.org)
Subject: Re: [x3d-public] [x3d] Spec Comment by on 19775-1: X3D Architecture- V4.0:component support needed for glTF inline loading conversion

Here's an example of an area to work on: I was working on .mapping yesterday and noticed I didn't have the wood grain texture on GreenChair right leg front correct when zoomed in. I found my texture area and the sample viewer texture area on the raw image in GIMP - about x=500 / 2048, and ydown 1170/2048 for sample viewer and ydown 716 for freewrl. I tried flipping the y = 1 - y, but not close enough. tried scaling by texture scale, didn't nail it but got closer.
One idea is to look at the export code in blender, or to do some smaller sample scene in blender with texture transform, to sort it out.


On Tue, May 3, 2022 at 3:34 PM Michalis Kamburelis <michalis.kambi at gmail.com> wrote:
Note that we already edited that statement in
https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html
--  it's "Lighting component level 3" (not 4 as in spec comment) and
we list "Minimum required glTF support".

Looking at that "Minimum required glTF support" it implies the need to support:

- Shape:2, Lighting:3 as already stated there
- Grouping:1 (already mentioned as "Prerequisites" for Networking:2 though)
- Rendering:3 or Geometry3D:2 (you need *some* way to render meshes
composed from any triangles, obviously)

This does not cover "what do you need to convert 100% of glTF into
X3D", because we do not know the answer to that yet.

The best attempt at mapping glTF->X3D is on
https://github.com/michaliskambi/x3d-tests/wiki/Converting-glTF-to-X3D
that I linked om this list before. It lists my knowledge (and thus
CGE/view3dscene implementation) and has bits of knowledge about what
X3DOM is doing. I welcome other implementors to review it and modify
-- what are *you* doing, and if you're doing something else -- write
*why*. Edit wiki, or just write email to me.

But that wiki page does not cover everything from glTF, we're not
there yet. Some things require research. Some things are more obvious
how to do (we could probably get consensus about them easily), but
still require adding it to spec at some point (like Tangent node or
X3DColorNode.mode). I hope to work on them after X3D 4.0 (it takes
ages to finalize X3D 4.0, so at this point I very don't want to add
anything to X3D 4.0 :) ).

We'll get to a "nicely written and complete" mapping glTF->X3D at some
point, but this is still a work in progress. X3D 4.0 is in nice
position (with PhysicalMaterial and many other things matching glTF)
but we still have way to go. Both implementations (including my own)
and the spec.

Regards,
Michalis

pon., 2 maj 2022 o 00:06 Joseph D Williams <joedwil at earthlink.net> napisał(a):
>
> Maybe this needs a nice graph that links standard gltf data asset fields to certain x3d native data fields and those that are ‘compiled’ containers of data derived from certain x3d fields.
>
> Thanks
>
> Joe
>
>
>
> From: Brutzman, Donald (Don) (CIV)
> Sent: Monday, April 25, 2022 8:15 AM
> To: Andreas Plesch
> Cc: Spec Feedback; X3D Public Mailing List (x3d-public at web3d.org); x3d at web3d.org
> Subject: Re: [x3d] Spec Comment by on 19775-1: X3D Architecture - V4.0:component support needed for glTF inline loading conversion
>
>
>
> [cc: x3d-public]
>
>
>
> Thanks for insightful comment.  Happy to modify this statement to list all
>
> appropriate components, possibly Immersive profile.
>
>
>
> Michalis, do you have any opinions from writing your glTF->X3D conversion
>
> code?
>
>
>
> It helps to know full coverage.  If there is a glTF test file that includes
>
> all constructs, that would also be helpful to convert and add to our
>
> architecture.
>
>
>
> 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
>
>
>
> -----Original Message-----
>
> From: x3d <x3d-bounces at web3d.org> On Behalf Of Spec Feedback
>
> Sent: Thursday, April 21, 2022 12:47 PM
>
> To: x3d at web3d.org
>
> Subject: [x3d] Spec Comment by on 19775-1: X3D Architecture - V4.0
>
>
>
> -- Submitter indicates that this comment may be public: *Yes* --
>
>
>
> Comment on 19775-1: X3D Architecture - V4.0
>
>
>
> https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/component
>
> s/networking.html#X3DUrlObject
>
>
>
> -----------------
>
> "Support for loading glTF assets (see 2.[GLTF]) also requires support for
>
> Shape component level 2 and Lighting component level 4."
>
>
>
> Many different data fragments may be contained in the current standard gltf
>
> asset structure, even animation data, so maybe also more general statement?
>
>
>
>
>
>
>
> -----------------
>
>
>
> Submitted on Thursday, 2022,  April 21 - 12:47pm by  (Joe D Williams )
>
> IP: 12.206.82.58
>
>
>
> See: https://www.web3d.org/node/1694/submission/5663
>
>
>
>
>
> _______________________________________________
>
> x3d mailing list
>
> x3d at web3d.org
>
> http://web3d.org/mailman/listinfo/x3d_web3d.org
>
>
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org

_______________________________________________
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/20220504/db0def82/attachment.html>


More information about the x3d-public mailing list