updated docs on reflection mapping

This commit is contained in:
Leon van Kammen 2024-10-14 11:52:35 +02:00
parent 89147de484
commit 5318eed885
5 changed files with 124 additions and 99 deletions

View File

@ -1345,7 +1345,15 @@ To apply environment mapping efficiently in a 3D scene, traverse the scene graph
</code></pre> </code></pre>
<p>Most 3D viewers apply one and the same environment map for various models, however this logic <p>Most 3D viewers apply one and the same environment map for various models, however this logic
allows a more natural &amp; automatic strategy for reflection mapping.</p> allows a more natural &amp; automatic strategy for reflection mapping:</p>
<ol>
<li>traverse the scene graph depth-first</li>
<li>remember the most recent parentnode (P) with a texture material</li>
<li>for every non-root node with a texture material
3.1 clone that material (as materials might be shared across objects)
3.2 set the environmentmap to the last known parent texture (P)</li>
</ol>
<h1 id="transclusion-broken-link-resolution">Transclusion (broken link) resolution</h1> <h1 id="transclusion-broken-link-resolution">Transclusion (broken link) resolution</h1>

View File

@ -859,7 +859,13 @@ To apply environment mapping efficiently in a 3D scene, traverse the scene graph
``` ```
Most 3D viewers apply one and the same environment map for various models, however this logic Most 3D viewers apply one and the same environment map for various models, however this logic
allows a more natural & automatic strategy for reflection mapping. allows a more natural & automatic strategy for reflection mapping:
1. traverse the scene graph depth-first
2. remember the most recent parentnode (P) with a texture material
3. for every non-root node with a texture material
3.1 clone that material (as materials might be shared across objects)
3.2 set the environmentmap to the last known parent texture (P)
# Transclusion (broken link) resolution # Transclusion (broken link) resolution

View File

@ -3,7 +3,7 @@
Jens & Leon Internet Engineering Task Force L.R. van Kammen Jens & Leon Internet Engineering Task Force L.R. van Kammen
Internet-Draft 7 October 2024 Internet-Draft 14 October 2024
Intended status: Informational Intended status: Informational
@ -53,7 +53,7 @@ Status of This Memo
van Kammen Expires 10 April 2025 [Page 1] van Kammen Expires 17 April 2025 [Page 1]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -63,7 +63,7 @@ Internet-Draft XR Fragments October 2024
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on 10 April 2025. This Internet-Draft will expire on 17 April 2025.
Copyright Notice Copyright Notice
@ -109,7 +109,7 @@ Table of Contents
van Kammen Expires 10 April 2025 [Page 2] van Kammen Expires 17 April 2025 [Page 2]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -125,7 +125,7 @@ Internet-Draft XR Fragments October 2024
23. Topic-based index-less Webrings . . . . . . . . . . . . . . . 32 23. Topic-based index-less Webrings . . . . . . . . . . . . . . . 32
24. URI Templates (RFC6570) . . . . . . . . . . . . . . . . . . . 33 24. URI Templates (RFC6570) . . . . . . . . . . . . . . . . . . . 33
25. Additional scene metadata . . . . . . . . . . . . . . . . . . 33 25. Additional scene metadata . . . . . . . . . . . . . . . . . . 33
26. Accessibility interface . . . . . . . . . . . . . . . . . . . 34 26. Accessibility interface . . . . . . . . . . . . . . . . . . . 35
26.1. Two-button navigation . . . . . . . . . . . . . . . . . 35 26.1. Two-button navigation . . . . . . . . . . . . . . . . . 35
26.2. Overlap with fileformat-specific extensions . . . . . . 36 26.2. Overlap with fileformat-specific extensions . . . . . . 36
26.3. Vendor Prefixes . . . . . . . . . . . . . . . . . . . . 36 26.3. Vendor Prefixes . . . . . . . . . . . . . . . . . . . . 36
@ -165,7 +165,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 3] van Kammen Expires 17 April 2025 [Page 3]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -221,7 +221,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 4] van Kammen Expires 17 April 2025 [Page 4]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -277,7 +277,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 5] van Kammen Expires 17 April 2025 [Page 5]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -333,7 +333,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 6] van Kammen Expires 17 April 2025 [Page 6]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -389,7 +389,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 7] van Kammen Expires 17 April 2025 [Page 7]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -445,7 +445,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 8] van Kammen Expires 17 April 2025 [Page 8]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -501,7 +501,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 9] van Kammen Expires 17 April 2025 [Page 9]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -557,7 +557,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 10] van Kammen Expires 17 April 2025 [Page 10]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -613,7 +613,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 11] van Kammen Expires 17 April 2025 [Page 11]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -669,7 +669,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 12] van Kammen Expires 17 April 2025 [Page 12]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -725,7 +725,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 13] van Kammen Expires 17 April 2025 [Page 13]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -781,7 +781,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 14] van Kammen Expires 17 April 2025 [Page 14]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -837,7 +837,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 15] van Kammen Expires 17 April 2025 [Page 15]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -893,7 +893,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 16] van Kammen Expires 17 April 2025 [Page 16]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -949,7 +949,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 17] van Kammen Expires 17 April 2025 [Page 17]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1005,7 +1005,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 18] van Kammen Expires 17 April 2025 [Page 18]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1061,7 +1061,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 19] van Kammen Expires 17 April 2025 [Page 19]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1117,7 +1117,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 20] van Kammen Expires 17 April 2025 [Page 20]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1173,7 +1173,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 21] van Kammen Expires 17 April 2025 [Page 21]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1229,7 +1229,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 22] van Kammen Expires 17 April 2025 [Page 22]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1285,7 +1285,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 23] van Kammen Expires 17 April 2025 [Page 23]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1341,7 +1341,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 24] van Kammen Expires 17 April 2025 [Page 24]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1397,7 +1397,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 25] van Kammen Expires 17 April 2025 [Page 25]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1453,7 +1453,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 26] van Kammen Expires 17 April 2025 [Page 26]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1509,7 +1509,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 27] van Kammen Expires 17 April 2025 [Page 27]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1565,7 +1565,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 28] van Kammen Expires 17 April 2025 [Page 28]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1621,7 +1621,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 29] van Kammen Expires 17 April 2025 [Page 29]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1677,7 +1677,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 30] van Kammen Expires 17 April 2025 [Page 30]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -1711,7 +1711,13 @@ Internet-Draft XR Fragments October 2024
Most 3D viewers apply one and the same environment map for various Most 3D viewers apply one and the same environment map for various
models, however this logic allows a more natural & automatic strategy models, however this logic allows a more natural & automatic strategy
for reflection mapping. for reflection mapping:
1. traverse the scene graph depth-first
2. remember the most recent parentnode (P) with a texture material
3. for every non-root node with a texture material 3.1 clone that
material (as materials might be shared across objects) 3.2 set
the environmentmap to the last known parent texture (P)
22. Transclusion (broken link) resolution 22. Transclusion (broken link) resolution
@ -1722,6 +1728,16 @@ Internet-Draft XR Fragments October 2024
src or href values can make a difference src or href values can make a difference
2. mirroring files on another protocol using (HTTP) errorcode tags 2. mirroring files on another protocol using (HTTP) errorcode tags
in src or href properties in src or href properties
van Kammen Expires 17 April 2025 [Page 31]
Internet-Draft XR Fragments October 2024
3. in case of src: nesting a copy of the embedded object in the 3. in case of src: nesting a copy of the embedded object in the
placeholder object (embeddedObject) will not be replaced when the placeholder object (embeddedObject) will not be replaced when the
request fails request fails
@ -1730,14 +1746,6 @@ Internet-Draft XR Fragments October 2024
| for client/server communication, non-HTTP protocols easily map to | for client/server communication, non-HTTP protocols easily map to
| HTTP codes (ipfs ERR_NOT_FOUND maps to 404 e.g.) | HTTP codes (ipfs ERR_NOT_FOUND maps to 404 e.g.)
van Kammen Expires 10 April 2025 [Page 31]
Internet-Draft XR Fragments October 2024
For example: For example:
+────────────────────────────────────────────────────────+ +────────────────────────────────────────────────────────+
@ -1778,6 +1786,14 @@ Internet-Draft XR Fragments October 2024
* href: schoolB.edu/projects.gltf#math&-courses math * href: schoolB.edu/projects.gltf#math&-courses math
* href: university.edu/projects.gltf#math&-theme math * href: university.edu/projects.gltf#math&-theme math
van Kammen Expires 17 April 2025 [Page 32]
Internet-Draft XR Fragments October 2024
| This would hide all object tagged with topic, courses or theme | This would hide all object tagged with topic, courses or theme
| (including math) so that later only objects tagged with math will | (including math) so that later only objects tagged with math will
| be visible | be visible
@ -1786,14 +1802,6 @@ Internet-Draft XR Fragments October 2024
separate content into separate files, or show/hide things using a separate content into separate files, or show/hide things using a
complex logiclayer like javascript. complex logiclayer like javascript.
van Kammen Expires 10 April 2025 [Page 32]
Internet-Draft XR Fragments October 2024
24. URI Templates (RFC6570) 24. URI Templates (RFC6570)
XR Fragments adopts Level1 URI *Fragment* expansion to provide safe XR Fragments adopts Level1 URI *Fragment* expansion to provide safe
@ -1834,22 +1842,18 @@ Internet-Draft XR Fragments October 2024
* BibTex (https://bibtex.eu/fields) when known bibtex-keys exist * BibTex (https://bibtex.eu/fields) when known bibtex-keys exist
with values enclosed in { and }, with values enclosed in { and },
*ARIA* (aria-description) is the most important to support, as it
promotes accessibility and allows scene transcripts. Please start
aria-description with a verb to aid transcripts.
van Kammen Expires 17 April 2025 [Page 33]
van Kammen Expires 10 April 2025 [Page 33]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
*ARIA* (aria-description) is the most important to support, as it
promotes accessibility and allows scene transcripts. Please start
aria-description with a verb to aid transcripts.
| Example: object 'tryceratops' with aria-description: is a huge | Example: object 'tryceratops' with aria-description: is a huge
| dinosaurus standing on a #mountain generates transcript | dinosaurus standing on a #mountain generates transcript
| #tryceratops is a huge dinosaurus standing on a #mountain, where | #tryceratops is a huge dinosaurus standing on a #mountain, where
@ -1892,6 +1896,16 @@ Internet-Draft XR Fragments October 2024
| These attributes can be scanned and presented during an href or | These attributes can be scanned and presented during an href or
| src eye/mouse-over. | src eye/mouse-over.
van Kammen Expires 17 April 2025 [Page 34]
Internet-Draft XR Fragments October 2024
26. Accessibility interface 26. Accessibility interface
The addressibility of XR Fragments allows for unique 3D-to-text The addressibility of XR Fragments allows for unique 3D-to-text
@ -1899,13 +1913,6 @@ Internet-Draft XR Fragments October 2024
Spec: Spec:
<Br> <Br>
van Kammen Expires 10 April 2025 [Page 34]
Internet-Draft XR Fragments October 2024
1. The enduser must be able to enable an accessibility-mode (which 1. The enduser must be able to enable an accessibility-mode (which
persists across application/webpage restarts) persists across application/webpage restarts)
2. Accessibility-mode must contain a text-input for the user to 2. Accessibility-mode must contain a text-input for the user to
@ -1948,6 +1955,13 @@ Internet-Draft XR Fragments October 2024
Therefore a 2-button navigation-interface is the bare minimum Therefore a 2-button navigation-interface is the bare minimum
interface: interface:
van Kammen Expires 17 April 2025 [Page 35]
Internet-Draft XR Fragments October 2024
1. objects with href metadata can be cycled via a key (tab on a 1. objects with href metadata can be cycled via a key (tab on a
keyboard) keyboard)
2. objects with href metadata can be activated via a key (enter on a 2. objects with href metadata can be activated via a key (enter on a
@ -1955,13 +1969,6 @@ Internet-Draft XR Fragments October 2024
3. the TTS reads the href-value (and/or aria-description if 3. the TTS reads the href-value (and/or aria-description if
available) available)
van Kammen Expires 10 April 2025 [Page 35]
Internet-Draft XR Fragments October 2024
26.2. Overlap with fileformat-specific extensions 26.2. Overlap with fileformat-specific extensions
Some 3D scene-fileformats have support for extensions. What if the Some 3D scene-fileformats have support for extensions. What if the
@ -2004,20 +2011,16 @@ Internet-Draft XR Fragments October 2024
3D engines/frameworks, to initialize specific features when loading a 3D engines/frameworks, to initialize specific features when loading a
scene/object, in a progressive enhanced way. scene/object, in a progressive enhanced way.
Vendor Prefixes allows embedding 3D engines/framework-specific
features a 3D file via metadata:
van Kammen Expires 17 April 2025 [Page 36]
van Kammen Expires 10 April 2025 [Page 36]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
Vendor Prefixes allows embedding 3D engines/framework-specific
features a 3D file via metadata:
+===========+===================+==============================+ +===========+===================+==============================+
| what | XR metadata | Lowest common denominator | | what | XR metadata | Lowest common denominator |
+===========+===================+==============================+ +===========+===================+==============================+
@ -2066,10 +2069,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 17 April 2025 [Page 37]
van Kammen Expires 10 April 2025 [Page 37]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -2125,7 +2125,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 38] van Kammen Expires 17 April 2025 [Page 38]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -2181,7 +2181,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 39] van Kammen Expires 17 April 2025 [Page 39]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -2237,7 +2237,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 40] van Kammen Expires 17 April 2025 [Page 40]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -2293,7 +2293,7 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 41] van Kammen Expires 17 April 2025 [Page 41]
Internet-Draft XR Fragments October 2024 Internet-Draft XR Fragments October 2024
@ -2349,4 +2349,4 @@ Internet-Draft XR Fragments October 2024
van Kammen Expires 10 April 2025 [Page 42] van Kammen Expires 17 April 2025 [Page 42]

View File

@ -1191,7 +1191,15 @@ To apply environment mapping efficiently in a 3D scene, traverse the scene graph
]]> ]]>
</artwork> </artwork>
<t>Most 3D viewers apply one and the same environment map for various models, however this logic <t>Most 3D viewers apply one and the same environment map for various models, however this logic
allows a more natural &amp; automatic strategy for reflection mapping.</t> allows a more natural &amp; automatic strategy for reflection mapping:</t>
<ol spacing="compact">
<li>traverse the scene graph depth-first</li>
<li>remember the most recent parentnode (P) with a texture material</li>
<li>for every non-root node with a texture material
3.1 clone that material (as materials might be shared across objects)
3.2 set the environmentmap to the last known parent texture (P)</li>
</ol>
</section> </section>
<section anchor="transclusion-broken-link-resolution"><name>Transclusion (broken link) resolution</name> <section anchor="transclusion-broken-link-resolution"><name>Transclusion (broken link) resolution</name>

File diff suppressed because one or more lines are too long