doc: uppercase to lowercase fix
This commit is contained in:
parent
c813a45eb1
commit
cffd1e1446
|
@ -1507,9 +1507,12 @@ Therefore a 2-button navigation-interface is the bare minimum interface:</p>
|
||||||
<li>the TTS reads the href-value (and/or aria-description if available)</li>
|
<li>the TTS reads the href-value (and/or aria-description if available)</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
<h2 id="xr-fragment-vendor-prefixes">XR Fragment Vendor Prefixes</h2>
|
<h2 id="vendor-prefixes">Vendor Prefixes</h2>
|
||||||
|
|
||||||
<p>Vendor Prefixes (XRFVP’s) allows embedding a 3D file with popular 3D engines/framework-specific features via metadata:</p>
|
<p>Vendor-specific metadata in a 3D scenefiles, are similar to vendor-specific <a href="https://en.wikipedia.org/wiki/CSS#Vendor_prefixes">CSS-prefixes</a> (<code>-moz-opacity: 0.2</code> e.g.).
|
||||||
|
This allows popular 3D engines/frameworks, to initialize specific features when loading a scene/object, in a progressive enhanced way.</p>
|
||||||
|
|
||||||
|
<p>Vendor Prefixes allows embedding 3D engines/framework-specific features a 3D file via metadata:</p>
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
|
@ -1522,25 +1525,28 @@ Therefore a 2-button navigation-interface is the bare minimum interface:</p>
|
||||||
|
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>XR Fragments</td>
|
<td>CSS</td>
|
||||||
<td>vendor-agnostic</td>
|
<td>vendor-agnostic</td>
|
||||||
<td>camera + 3D object(file) load/embed/click/referencing</td>
|
<td>2D canvas + object referencing/styling</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td>XR Fragments VP’s</td>
|
<td>XR Fragments</td>
|
||||||
|
<td>vendor-agnostic</td>
|
||||||
|
<td>3D camera + object(file) load/embed/click/referencing</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>Vendor prefixs</td>
|
||||||
<td>vendor-<strong>specific</strong></td>
|
<td>vendor-<strong>specific</strong></td>
|
||||||
<td>Entity-Component System (ECS)</td>
|
<td>Specialized Entity-Component implementation</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<p>Vendor-specific metadata in a 3D scenefiles, are similar to vendor-specific <a href="https://en.wikipedia.org/wiki/CSS#Vendor_prefixes">CSS-prefixes</a> (<code>-moz-opacity: 0.2</code> e.g.).
|
|
||||||
This allows popular 3D engines/frameworks, to initialize specific features when loading a scene/object, in a progressive enhanced way.</p>
|
|
||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
<p>Why? Because not all XR interactions can be solved/standardized by embedding XR Fragments into any 3D file.
|
<p>Why? Because not all XR interactions can/should be solved/standardized by embedding XR Fragments into any 3D file.
|
||||||
Some XR experiences need more than <strong>navigation</strong> and <strong>show/hide/filtering</strong> of objects (via click-state machines).
|
The lowest common denominator between 3D engines is the ‘entity’-part of their entity-component-system (ECS). The ‘component’-part can be progressively enhanced via vendor prefixes.</p>
|
||||||
The lowest common denominator between s that 3D engines use entity-component-system</p>
|
|
||||||
</blockquote>
|
</blockquote>
|
||||||
|
|
||||||
<p>For example, the following metadata can be added to a .glb file, to make an object grabbable in AFRAME:</p>
|
<p>For example, the following metadata can be added to a .glb file, to make an object grabbable in AFRAME:</p>
|
||||||
|
@ -1563,11 +1569,11 @@ The lowest common denominator between s that 3D engines use entity-component-sys
|
||||||
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
||||||
│ | ├─ name: john | │
|
│ | ├─ name: john | │
|
||||||
│ | O ├─ age: 23 | │
|
│ | O ├─ age: 23 | │
|
||||||
│ | /|\ ├─ -AFRAME-grabbable: '' | > inits 'grabbable' component on object john │
|
│ | /|\ ├─ -aframe-grabbable: '' | > inits 'grabbable' component on object john │
|
||||||
│ | / \ ├─ -AFRAME-material.color: '#F0A' | > inits 'material' component on object john │
|
│ | / \ ├─ -aframe-material.color: '#F0A' | > inits 'material' component on object john │
|
||||||
│ | ├─ -AFRAME-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
│ | ├─ -aframe-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
||||||
│ | ├─ -THREE-material.fog: false | > changes material settings in THREE.js app │
|
│ | ├─ -three-material.fog: false | > changes material settings in THREE.js app │
|
||||||
│ | ├─ -GODOT-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
│ | ├─ -godot-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
||||||
│ +--------+ | │
|
│ +--------+ | │
|
||||||
│ | │
|
│ | │
|
||||||
├─ -AFRAME-version: '1.6.0' | > │
|
├─ -AFRAME-version: '1.6.0' | > │
|
||||||
|
|
|
@ -955,21 +955,21 @@ Therefore a 2-button navigation-interface is the bare minimum interface:
|
||||||
2. objects with href metadata can be activated via a key (enter on a keyboard)
|
2. objects with href metadata can be activated via a key (enter on a keyboard)
|
||||||
3. the TTS reads the href-value (and/or aria-description if available)
|
3. the TTS reads the href-value (and/or aria-description if available)
|
||||||
|
|
||||||
## XR Fragment Vendor Prefixes
|
## Vendor Prefixes
|
||||||
|
|
||||||
Vendor Prefixes (XRFVP's) allows embedding a 3D file with popular 3D engines/framework-specific features via metadata:
|
|
||||||
|
|
||||||
| what | XR metadata | Lowest common denominator |
|
|
||||||
|------------------|---------------------|-------------------------------------------------------|
|
|
||||||
| XR Fragments | vendor-agnostic | camera + 3D object(file) load/embed/click/referencing |
|
|
||||||
| XR Fragments VP's| vendor-**specific** | Entity-Component System (ECS) |
|
|
||||||
|
|
||||||
Vendor-specific metadata in a 3D scenefiles, are similar to vendor-specific [CSS-prefixes](https://en.wikipedia.org/wiki/CSS#Vendor_prefixes) (`-moz-opacity: 0.2` e.g.).
|
Vendor-specific metadata in a 3D scenefiles, are similar to vendor-specific [CSS-prefixes](https://en.wikipedia.org/wiki/CSS#Vendor_prefixes) (`-moz-opacity: 0.2` e.g.).
|
||||||
This allows popular 3D engines/frameworks, to initialize specific features when loading a scene/object, in a progressive enhanced way.
|
This allows popular 3D engines/frameworks, to initialize specific features when loading a scene/object, in a progressive enhanced way.
|
||||||
|
|
||||||
> Why? Because not all XR interactions can be solved/standardized by embedding XR Fragments into any 3D file.
|
Vendor Prefixes allows embedding 3D engines/framework-specific features a 3D file via metadata:
|
||||||
Some XR experiences need more than **navigation** and **show/hide/filtering** of objects (via click-state machines).
|
|
||||||
The lowest common denominator between s that 3D engines use entity-component-system
|
| what | XR metadata | Lowest common denominator |
|
||||||
|
|------------------|---------------------|-------------------------------------------------------|
|
||||||
|
| CSS | vendor-agnostic | 2D canvas + object referencing/styling |
|
||||||
|
| XR Fragments | vendor-agnostic | 3D camera + object(file) load/embed/click/referencing |
|
||||||
|
| Vendor prefixs | vendor-**specific** | Specialized Entity-Component implementation |
|
||||||
|
|
||||||
|
> Why? Because not all XR interactions can/should be solved/standardized by embedding XR Fragments into any 3D file.
|
||||||
|
The lowest common denominator between 3D engines is the 'entity'-part of their entity-component-system (ECS). The 'component'-part can be progressively enhanced via vendor prefixes.
|
||||||
|
|
||||||
For example, the following metadata can be added to a .glb file, to make an object grabbable in AFRAME:
|
For example, the following metadata can be added to a .glb file, to make an object grabbable in AFRAME:
|
||||||
|
|
||||||
|
@ -992,11 +992,11 @@ For example, the following metadata can be added to a .glb file, to make an obje
|
||||||
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
||||||
│ | ├─ name: john | │
|
│ | ├─ name: john | │
|
||||||
│ | O ├─ age: 23 | │
|
│ | O ├─ age: 23 | │
|
||||||
│ | /|\ ├─ -AFRAME-grabbable: '' | > inits 'grabbable' component on object john │
|
│ | /|\ ├─ -aframe-grabbable: '' | > inits 'grabbable' component on object john │
|
||||||
│ | / \ ├─ -AFRAME-material.color: '#F0A' | > inits 'material' component on object john │
|
│ | / \ ├─ -aframe-material.color: '#F0A' | > inits 'material' component on object john │
|
||||||
│ | ├─ -AFRAME-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
│ | ├─ -aframe-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
||||||
│ | ├─ -THREE-material.fog: false | > changes material settings in THREE.js app │
|
│ | ├─ -three-material.fog: false | > changes material settings in THREE.js app │
|
||||||
│ | ├─ -GODOT-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
│ | ├─ -godot-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
||||||
│ +--------+ | │
|
│ +--------+ | │
|
||||||
│ | │
|
│ | │
|
||||||
├─ -AFRAME-version: '1.6.0' | > │
|
├─ -AFRAME-version: '1.6.0' | > │
|
||||||
|
|
|
@ -118,7 +118,7 @@ Internet-Draft XR Fragments September 2024
|
||||||
23. Additional scene metadata . . . . . . . . . . . . . . . . . . 32
|
23. Additional scene metadata . . . . . . . . . . . . . . . . . . 32
|
||||||
24. Accessibility interface . . . . . . . . . . . . . . . . . . . 33
|
24. Accessibility interface . . . . . . . . . . . . . . . . . . . 33
|
||||||
24.1. Two-button navigation . . . . . . . . . . . . . . . . . 34
|
24.1. Two-button navigation . . . . . . . . . . . . . . . . . 34
|
||||||
24.2. XR Fragment Vendor Prefixes . . . . . . . . . . . . . . 35
|
24.2. Vendor Prefixes . . . . . . . . . . . . . . . . . . . . 35
|
||||||
25. Security Considerations . . . . . . . . . . . . . . . . . . . 37
|
25. Security Considerations . . . . . . . . . . . . . . . . . . . 37
|
||||||
26. FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
|
26. FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
|
||||||
27. authors . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
|
27. authors . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
|
||||||
|
@ -1906,22 +1906,7 @@ van Kammen Expires 24 March 2025 [Page 34]
|
||||||
Internet-Draft XR Fragments September 2024
|
Internet-Draft XR Fragments September 2024
|
||||||
|
|
||||||
|
|
||||||
24.2. XR Fragment Vendor Prefixes
|
24.2. Vendor Prefixes
|
||||||
|
|
||||||
Vendor Prefixes (XRFVP's) allows embedding a 3D file with popular 3D
|
|
||||||
engines/framework-specific features via metadata:
|
|
||||||
|
|
||||||
+==============+===================+==============================+
|
|
||||||
| what | XR metadata | Lowest common denominator |
|
|
||||||
+==============+===================+==============================+
|
|
||||||
| XR Fragments | vendor-agnostic | camera + 3D object(file) |
|
|
||||||
| | | load/embed/click/referencing |
|
|
||||||
+--------------+-------------------+------------------------------+
|
|
||||||
| XR Fragments | vendor-*specific* | Entity-Component System |
|
|
||||||
| VP's | | (ECS) |
|
|
||||||
+--------------+-------------------+------------------------------+
|
|
||||||
|
|
||||||
Table 14
|
|
||||||
|
|
||||||
Vendor-specific metadata in a 3D scenefiles, are similar to vendor-
|
Vendor-specific metadata in a 3D scenefiles, are similar to vendor-
|
||||||
specific CSS-prefixes (https://en.wikipedia.org/wiki/
|
specific CSS-prefixes (https://en.wikipedia.org/wiki/
|
||||||
|
@ -1929,11 +1914,29 @@ Internet-Draft XR Fragments September 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.
|
||||||
|
|
||||||
| Why? Because not all XR interactions can be solved/standardized
|
Vendor Prefixes allows embedding 3D engines/framework-specific
|
||||||
| by embedding XR Fragments into any 3D file. Some XR experiences
|
features a 3D file via metadata:
|
||||||
| need more than *navigation* and *show/hide/filtering* of objects
|
|
||||||
| (via click-state machines). The lowest common denominator between
|
+===========+===================+==============================+
|
||||||
| s that 3D engines use entity-component-system
|
| what | XR metadata | Lowest common denominator |
|
||||||
|
+===========+===================+==============================+
|
||||||
|
| CSS | vendor-agnostic | 2D canvas + object |
|
||||||
|
| | | referencing/styling |
|
||||||
|
+-----------+-------------------+------------------------------+
|
||||||
|
| XR | vendor-agnostic | 3D camera + object(file) |
|
||||||
|
| Fragments | | load/embed/click/referencing |
|
||||||
|
+-----------+-------------------+------------------------------+
|
||||||
|
| Vendor | vendor-*specific* | Specialized Entity-Component |
|
||||||
|
| prefixs | | implementation |
|
||||||
|
+-----------+-------------------+------------------------------+
|
||||||
|
|
||||||
|
Table 14
|
||||||
|
|
||||||
|
| Why? Because not all XR interactions can/should be solved/
|
||||||
|
| standardized by embedding XR Fragments into any 3D file. The
|
||||||
|
| lowest common denominator between 3D engines is the 'entity'-part
|
||||||
|
| of their entity-component-system (ECS). The 'component'-part can
|
||||||
|
| be progressively enhanced via vendor prefixes.
|
||||||
|
|
||||||
For example, the following metadata can be added to a .glb file, to
|
For example, the following metadata can be added to a .glb file, to
|
||||||
make an object grabbable in AFRAME:
|
make an object grabbable in AFRAME:
|
||||||
|
@ -1954,9 +1957,6 @@ Internet-Draft XR Fragments September 2024
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
van Kammen Expires 24 March 2025 [Page 35]
|
van Kammen Expires 24 March 2025 [Page 35]
|
||||||
|
|
||||||
Internet-Draft XR Fragments September 2024
|
Internet-Draft XR Fragments September 2024
|
||||||
|
@ -1980,11 +1980,11 @@ Internet-Draft XR Fragments September 2024
|
||||||
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
||||||
│ | ├─ name: john | │
|
│ | ├─ name: john | │
|
||||||
│ | O ├─ age: 23 | │
|
│ | O ├─ age: 23 | │
|
||||||
│ | /|\ ├─ -AFRAME-grabbable: '' | > inits 'grabbable' component on object john │
|
│ | /|\ ├─ -aframe-grabbable: '' | > inits 'grabbable' component on object john │
|
||||||
│ | / \ ├─ -AFRAME-material.color: '#F0A' | > inits 'material' component on object john │
|
│ | / \ ├─ -aframe-material.color: '#F0A' | > inits 'material' component on object john │
|
||||||
│ | ├─ -AFRAME-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
│ | ├─ -aframe-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
||||||
│ | ├─ -THREE-material.fog: false | > changes material settings in THREE.js app │
|
│ | ├─ -three-material.fog: false | > changes material settings in THREE.js app │
|
||||||
│ | ├─ -GODOT-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
│ | ├─ -godot-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
||||||
│ +--------+ | │
|
│ +--------+ | │
|
||||||
│ | │
|
│ | │
|
||||||
├─ -AFRAME-version: '1.6.0' | > │
|
├─ -AFRAME-version: '1.6.0' | > │
|
||||||
|
|
|
@ -1346,8 +1346,10 @@ Therefore a 2-button navigation-interface is the bare minimum interface:</t>
|
||||||
</ol>
|
</ol>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section anchor="xr-fragment-vendor-prefixes"><name>XR Fragment Vendor Prefixes</name>
|
<section anchor="vendor-prefixes"><name>Vendor Prefixes</name>
|
||||||
<t>Vendor Prefixes (XRFVP's) allows embedding a 3D file with popular 3D engines/framework-specific features via metadata:</t>
|
<t>Vendor-specific metadata in a 3D scenefiles, are similar to vendor-specific <eref target="https://en.wikipedia.org/wiki/CSS#Vendor_prefixes">CSS-prefixes</eref> (<tt>-moz-opacity: 0.2</tt> e.g.).
|
||||||
|
This allows popular 3D engines/frameworks, to initialize specific features when loading a scene/object, in a progressive enhanced way.</t>
|
||||||
|
<t>Vendor Prefixes allows embedding 3D engines/framework-specific features a 3D file via metadata:</t>
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1359,22 +1361,25 @@ Therefore a 2-button navigation-interface is the bare minimum interface:</t>
|
||||||
|
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>XR Fragments</td>
|
<td>CSS</td>
|
||||||
<td>vendor-agnostic</td>
|
<td>vendor-agnostic</td>
|
||||||
<td>camera + 3D object(file) load/embed/click/referencing</td>
|
<td>2D canvas + object referencing/styling</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td>XR Fragments VP's</td>
|
<td>XR Fragments</td>
|
||||||
|
<td>vendor-agnostic</td>
|
||||||
|
<td>3D camera + object(file) load/embed/click/referencing</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>Vendor prefixs</td>
|
||||||
<td>vendor-<strong>specific</strong></td>
|
<td>vendor-<strong>specific</strong></td>
|
||||||
<td>Entity-Component System (ECS)</td>
|
<td>Specialized Entity-Component implementation</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table><t>Vendor-specific metadata in a 3D scenefiles, are similar to vendor-specific <eref target="https://en.wikipedia.org/wiki/CSS#Vendor_prefixes">CSS-prefixes</eref> (<tt>-moz-opacity: 0.2</tt> e.g.).
|
</table><blockquote><t>Why? Because not all XR interactions can/should be solved/standardized by embedding XR Fragments into any 3D file.
|
||||||
This allows popular 3D engines/frameworks, to initialize specific features when loading a scene/object, in a progressive enhanced way.</t>
|
The lowest common denominator between 3D engines is the 'entity'-part of their entity-component-system (ECS). The 'component'-part can be progressively enhanced via vendor prefixes.</t>
|
||||||
<blockquote><t>Why? Because not all XR interactions can be solved/standardized by embedding XR Fragments into any 3D file.
|
|
||||||
Some XR experiences need more than <strong>navigation</strong> and <strong>show/hide/filtering</strong> of objects (via click-state machines).
|
|
||||||
The lowest common denominator between s that 3D engines use entity-component-system</t>
|
|
||||||
</blockquote><t>For example, the following metadata can be added to a .glb file, to make an object grabbable in AFRAME:</t>
|
</blockquote><t>For example, the following metadata can be added to a .glb file, to make an object grabbable in AFRAME:</t>
|
||||||
|
|
||||||
<artwork><![CDATA[+────────────────────────────────────────────────────────────────────────────────────────────────────────+
|
<artwork><![CDATA[+────────────────────────────────────────────────────────────────────────────────────────────────────────+
|
||||||
|
@ -1395,11 +1400,11 @@ The lowest common denominator between s that 3D engines use entity-component-sys
|
||||||
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
│ [3D mesh-+ | // save to z.glb in AFRAME inspector │
|
||||||
│ | ├─ name: john | │
|
│ | ├─ name: john | │
|
||||||
│ | O ├─ age: 23 | │
|
│ | O ├─ age: 23 | │
|
||||||
│ | /|\ ├─ -AFRAME-grabbable: '' | > inits 'grabbable' component on object john │
|
│ | /|\ ├─ -aframe-grabbable: '' | > inits 'grabbable' component on object john │
|
||||||
│ | / \ ├─ -AFRAME-material.color: '#F0A' | > inits 'material' component on object john │
|
│ | / \ ├─ -aframe-material.color: '#F0A' | > inits 'material' component on object john │
|
||||||
│ | ├─ -AFRAME-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
│ | ├─ -aframe-text.value: '{name}{age}'| > inits 'text' component (*) with value 'john' │
|
||||||
│ | ├─ -THREE-material.fog: false | > changes material settings in THREE.js app │
|
│ | ├─ -three-material.fog: false | > changes material settings in THREE.js app │
|
||||||
│ | ├─ -GODOT-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
│ | ├─ -godot-Label3D.text: '{name}{age}'| > inits 'Label3D' component (*) in Godot │
|
||||||
│ +--------+ | │
|
│ +--------+ | │
|
||||||
│ | │
|
│ | │
|
||||||
├─ -AFRAME-version: '1.6.0' | > │
|
├─ -AFRAME-version: '1.6.0' | > │
|
||||||
|
|
Loading…
Reference in New Issue