[x3d-public] 3D graphics, vertex attributes Tangent index and vector

Michalis Kamburelis michalis.kambi at gmail.com
Thu May 15 01:24:49 PDT 2025


I don't know about Tangent in X_ITE...

But in Castle Game Engine we have a similar extension -- Tangent node (
https://castle-engine.io/x3d_implementation_rendering_extensions.php ).
Looks like we developed it independently from X_ITE :) It certainly makes
sense to have a node that carry this information, to have perfect
rendering. (Tangents can be auto-calculated, but there are various details
in the auto-calculation algorithm that various renderers may do a bit
differently. When the 3D author used "baking" to make a normalmap texture,
it's better to use exact same tangents as known by the 3D authoring tool.)

At least for Castle Game Engine, the answer is: if the Tangent node is not
present, but we need tangents (e.g. for bump mapping), then the tangent
vectors are calculated to match the normal vectors. So there's no
additional tangentPerVertex or tangentIndex, they would not make sense. By
knowing the normal vectors, by know all we need to generate reasonable
tangent vectors.

See https://castle-engine.io/x3d_implementation_rendering_extensions.php
for more details.

Regards,
Michalis

czw., 15 maj 2025 o 07:43 John Carlson via x3d-public <x3d-public at web3d.org>
napisał(a):

> Note, it’s Tangent vector=… not Tangent point=…
>
> John
>
> On Thu, May 15, 2025 at 12:38 AM John Carlson <yottzumm at gmail.com> wrote:
>
>> I’d ask Holger, cc’d
>>
>> I’ve not used Tangent, myself.
>>
>> X_ITE Supports up to Level 4, so I guess you’re proposing a new level 5
>> for the Geometry 3D component?
>>
>> Look at X_ITE IFS:
>>
>>
>>
>> Maybe check Holger’s create3000 Library for examples?
>>
>> To retrieve examples, last time I tried:
>>
>> git clone https://github.com/create3000/Library
>>
>> Online at:
>>
>> https://github.com/create3000/Library
>>
>> Let’s get v2 Joe Kick out the door, check v2 finger joints, and make sure
>> all joints have converted to v2.
>>
>> John
>>
>> On Wed, May 14, 2025 at 10:45 PM Joe D Williams <joedwil at earthlink.net>
>> wrote:
>>
>>>
>>>
>>> Main questions, in IFS Level5:
>>>
>>> Is a default tangent generated if Tangent point="" field empty?
>>>
>>> tangentPerVertex? assigned to vertex or face?
>>>
>>> tangentIndex? If no tangentIndex is coordIndex used?
>>>
>>>
>>>
>>> Thanks,
>>>
>>> Joe
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> -----Original Message-----
>>> From: John Carlson <yottzumm at gmail.com>
>>> Sent: May 14, 2025 3:00 PM
>>> To: Extensible 3D (X3D) Graphics public discussion <x3d-public at web3d.org
>>> >
>>> Cc: Joe D Williams <joedwil at earthlink.net>
>>> Subject: Re: [x3d-public] 3D graphics, vertex attributes
>>>
>>>
>>> Joe,
>>>
>>> X_ITE has a tangent node:
>>>
>>> Tangent | X_ITE X3D Browser
>>> <https://create3000.github.io/x_ite/components/rendering/tangent/>
>>>
>>> Enjoy!
>>>
>>> John
>>>
>>> On Wed, May 14, 2025 at 4:46 PM Joe D Williams via x3d-public <
>>> x3d-public at web3d.org> wrote:
>>>
>>>> From this:
>>>>
>>>>
>>>> https://docs.google.com/document/d/1hCetnGIkut_dyt4mwkDSTNiLTbrVg1jLo_EArE74DRg/edit?tab=t.0
>>>>
>>>>
>>>> In 3D graphics, vertex attributes define per-vertex data necessary
>>>> for rendering, animation, shading, and so on.
>>>> These attributes include geometric properties such as
>>>> position, normal, tangents, texture mapping information (UV
>>>> coordinates),
>>>> shading data (vertex colors), and
>>>> deformation information (skinning weights and blend shapes).
>>>>
>>>>
>>>> In this discussion of vertex attributes, the only one I don't recall
>>>> seeing in X3D is tangent?
>>>>
>>>> Associated with this work:
>>>>
>>>> https://docs.google.com/spreadsheets/d/18d1qy4jx-d_kLsam-JQAzig23w7dTau0Moe7M32lVvk/edit?gid=0#gid=0
>>>>
>>>>
>>>> Thanks,
>>>> Joe
>>>>
>>>>
>>>> _______________________________________________
>>>> 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/20250515/44340601/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: IMG_0516.png
Type: image/png
Size: 315582 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20250515/44340601/attachment-0001.png>


More information about the x3d-public mailing list