[x3d-public] [x3d] Minutes of X3D WG call for Jan 18 2019

Michalis Kamburelis michalis.kambi at gmail.com
Sun Jan 20 12:10:55 PST 2019


Hi,

An excellent summary, thanks! Small notes inline below:

vmarchetti at kshell.com <vmarchetti at kshell.com> wrote:

> 2.b Introduce new X3D nodes specifically for "binary meshes", with explicit node fields which support indexing into binary data buffers. These nodes could be efficiently loaded from glTF , but can also support other binary mesh formats. This approach is used in X3DOM's support for gltf (see https://doc.x3dom.org/author/Geometry3D/ExternalGeometry.html ). See https://github.com/michaliskambi/x3d-tests/wiki/Binary-meshes, which includes A. Plesch's ideas on how to do this.

I forgot to mention during the call an important "caveat" here:

The texture coordinates have to be interpreted differently between
glTF and X3D: glTF says that (0,0) is upper-left corner of the texture
image, X3D says (0,0) is bottom-left corner.

A naive solution is to process texture coordinates, doing "texCoord.y
= 1 - texCoord.y" for all texture coordinates. This is "naive" in the
sense that it is inherently inefficient: you have to iterate over
texture coordinates when converting, and thus you do not just "pass
data from a binary mesh in glTF file to GPU".

Castle Game Engine solution to this is to flip the texture at loading:
https://castle-engine.io/x3d_implementation_texturing_extensions.php#section_flip_vertically
. Under that link you will also find a detailed discussion of this
issue (section """Detailed discussion of why this field is necessary
for interoperability with glTF:""") with relevant links to
specifications.

I do not know what is the X3DOM solution for this.

> - glTF seems to have more exporter support.
>
>   Blender:
>   - glTF 2.0 exporter is developed by Khronos,
>   - there is a version for => 2.79 and for >= 2.80,

Ups, I meant here "there is a version for <= 2.79 and for >= 2.80".

https://github.com/KhronosGroup/glTF-Blender-Exporter

https://github.com/KhronosGroup/glTF-Blender-IO

>   - it's even included in Blender by default,
>   - it supports animations, normalmaps.
>
>   In contrast:
>   - X3D exporter is only for => 2.79, until someone fixes it,

Ups, I meant here "only for <= 2.79".

There is a Blender issue: https://developer.blender.org/T59727 . I'm
sure that at some point someone will tackle this (maybe even me, but
I'm overworked now :) ). But until this happens, we don't have Blender
2.80 -> X3D exporter.

Regards,
Michalis



More information about the x3d-public mailing list