[x3d-public] MultiTextureTeapot example using X3D3.3

Michalis Kamburelis michalis.kambi at gmail.com
Wed Jun 2 03:46:19 PDT 2021


1. As for adding some additional TextureCoordinateGenerator.mode
values to the spec:

    I would say this is a good idea sometime along X3D 4.x .

    - https://castle-engine.io/x3d_implementation_texturing_extensions.php#section_ext_tex_coord_worldspace
has 2 additional modes: WORLDSPACEREFLECTIONVECTOR , WORLDSPACENORMAL
that complement the existing (in spec) modes
CAMERASPACEREFLECTIONVECTOR and CAMERASPACENORMAL. I think that my 2
new WORLDxxx modes are universally useful: they allow to make real
mirrors, that behave as expected (rotate with model as expected).

    - https://castle-engine.io/x3d_implementation_texturing_extensions.php#section_ext_tex_coord_bounds
has 3 additional modes: BOUNDS, BOUNDS2D, BOUNDS3D. I also think they
are useful, they allow to explicitly request algorithms that you
actually already have in X3D spec but they are now only used as
"default" (and you cannot request them explicitly).

    As always, I'd like to hear opinion of other X3D browser
implementors (can you implement this?) and authors (will you use it?)
:)

2. As for correspondence to glTF (wrt.
https://castle-engine.io/x3d_implementation_texturing_extensions.php
): That's a complicated answer, I would have to go one by one :) But
basically we're good. X3D has some things in this area that glTF
doesn't (glTF doesn't have cubemaps at all, glTF doesn't have
TextureCoordinateGenerator at all) so in this area X3D here has
already more features than glTF.

    One important thing to consider for glTF interoperability is
"flipVertically" field.
https://castle-engine.io/x3d_implementation_texturing_extensions.php#section_flip_vertically

    glTF decided on a different interpretation of texture coordinate Y
than X3D. This extension allows to have both ways, and mix glTF and
X3D nicely. I mentioned this on this mailing list in the past and on
https://github.com/michaliskambi/x3d-tests/wiki/Converting-glTF-to-X3D
.

3. As for finding cubemap images on the Internet: indeed it is not
easy, but it is still easier than finding spherical maps in my
experience :) Note that every "skybox" you find is also a good
cubemap. Here you have 57 skyboxes on clear open-source licenses:
https://opengameart.org/art-search-advanced?keys=skybox .

Regards,
Michalis

śr., 2 cze 2021 o 02:40 John Carlson <yottzumm at gmail.com> napisał(a):
>
> Also, cubemaps are difficult to find,  I got Jeff H.  to convert Paul Debevec’s HDR images to png (with permission).   Maybe Paul would approve usage (as seen with transparent Stanford rabbit and NVidia’s Venus de milo HDR SDK item).
>
> John
>
> On Tue, Jun 1, 2021 at 4:45 PM Don Brutzman <brutzman at nps.edu> wrote:
>>
>> ["we're having fun now..."]
>>
>> On 5/27/2021 2:42 PM, Michalis Kamburelis wrote:
>> >
>> > Cool!
>> >
>> > 1. Note that for creating reflective curvy (non-flat) surfaces, I
>> > would advise to not use spherical mapping
>> > (TextureCoordinateGenerator.mode='COORD-EYE') in most cases.
>> >
>> >      Instead use cubemaps
>> > (TextureCoordinateGenerator.mode='CAMERASPACEREFLECTIONVECTOR' in any
>> > X3D browser
>>
>> now changed
>>
>> > or even better
>> > TextureCoordinateGenerator.mode='WORLDSPACEREFLECTIONVECTOR' specific
>> > in CGE).
>>
>> Wondering if this should be proposed for X3D4?  Not seeing it at
>>
>> [1] X3D Architecture, 18.4.8 TextureCoordinateGenerator
>>      https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD/Part01/components/texturing.html#TextureCoordinateGenerator
>>
>> Looks like you have a lot of proposed extensions at
>>
>> [2] Texturing component - extensions
>>      https://castle-engine.io/x3d_implementation_texturing_extensions.php
>>
>> Wondering how much of this is aligned with glTF, in your estimation?
>>
>> Please consider proposing extensions to existing nodes in X3D4.
>>
>> > Cubemaps are easier to generate with many tools (including
>> > CGE itself and Blender), you also have an option to let X3D browser to
>> > make it by "GeneratedCubeMap". The description of the setup is on
>> > https://castle-engine.io/x3d_implementation_cubemaptexturing.php ,
>> > "Tutorial: How to make a mirror". The general idea is similar, you
>> > just use a different "TextureCoordinateGenerator.mode" and need a
>> > different texture.
>> >
>> > 2. Note that in Castle Game Engine and Instant Reality you can also
>> > use "Teapot" node (thus you don't need to provide teapot geometry
>> > explicitly in "IndexedFaceSet"). Admittedly this was just done as it
>> > was trivial to do within CGE, I would never propose to make this
>> > primitive type standard (way too obscure usage) :)
>>
>> well, I like it too!  and Blender has the Suzanne monkey.  and having non-trivial geometry is important when looking at texture and lighting effects.  so I will work on adding a teapot to simple display options in X3D-Edit Material customizer.  Additional geometry suggestions/contributions are always welcome.
>>
>> [3] X3D Example Archives: X3D4AM, X3D for Advanced Modeling, Geometric Shapes
>>      https://x3dgraphics.com/examples/X3dForAdvancedModeling/GeometricShapes
>>
>> [4] X3D Example Archives: X3D4AM, X3D for Advanced Modeling, Geometric Shapes, Teapot
>>      https://x3dgraphics.com/examples/X3dForAdvancedModeling/GeometricShapes/TeapotIndex.html
>>
>> [5] X3D Example Archives: X3D4AM, X3D for Advanced Modeling, Geometric Shapes, Teapots
>>      https://x3dgraphics.com/examples/X3dForAdvancedModeling/GeometricShapes/TeapotsIndex.html
>>
>> [6] X3D Example Archives: X3D4AM, X3D for Advanced Modeling, Conversions, Blender Monkey Suzanne
>>      https://x3dgraphics.com/examples/X3dForAdvancedModeling/Conversions/BlenderMonkeySuzanneIndex.html
>>
>> > Regards,
>> > Michalis
>> >
>> > czw., 27 maj 2021 o 17:26 Don Brutzman <brutzman at nps.edu> napisał(a):
>> >>
>> >> Interesting new example with magnificent rendering is now published, adapting work by Michalis Kamburelis and contributed by Rick Lentz, authored using X3D-Edit 4.0 beta.  Screenshot of examples index page attached.
>> >>[...]
>> 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 http://faculty.nps.edu/brutzman
>>
>> _______________________________________________
>> x3d-public mailing list
>> x3d-public at web3d.org
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org



More information about the x3d-public mailing list