Skip to content

Commit 4146960

Browse files
Merge branch '3d-tiles-next' into gaussian-splatting-ext
2 parents 0692d66 + 00578e2 commit 4146960

File tree

80 files changed

+13110
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+13110
-0
lines changed
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# CESIUM_tile_edges
2+
3+
## Contributors
4+
5+
* Ian Lilley, Cesium
6+
* Sean Lilley, Cesium
7+
8+
## Status
9+
10+
Draft
11+
12+
## Dependencies
13+
14+
Written against the glTF 2.0 specification.
15+
16+
## Overview
17+
18+
This extension allows terrain tiles encoded in glTF to identify vertices that make up tile edges, modeled after [quantized-mesh](https://github.com/CesiumGS/quantized-mesh). It is helpful to know which vertices are on the edges in order to add skirts to hide cracks between adjacent levels of detail.
19+
20+
<table>
21+
<tr>
22+
<td>Single tile with edges highlighted</td>
23+
<td>Single tile with skirts generated at runtime</td>
24+
<td>Full tileset with tile coordinates superimposed</td>
25+
</tr>
26+
<tr>
27+
<td><img src="figures/tile-edges.png"></td>
28+
<td><img src="figures/tile-skirts.png"></td>
29+
<td><img src="figures/tileset.png"></td>
30+
</tr>
31+
</table>
32+
33+
```json
34+
{
35+
"meshes": [
36+
{
37+
"primitives": [
38+
{
39+
"attributes": {
40+
"POSITION": 0,
41+
"NORMAL": 1
42+
},
43+
"indices": 2,
44+
"material": 0,
45+
"mode": 4,
46+
"extensions": {
47+
"CESIUM_tile_edges": {
48+
"left": 3,
49+
"bottom": 4,
50+
"right": 5,
51+
"top": 6
52+
}
53+
}
54+
}
55+
]
56+
}
57+
]
58+
}
59+
```
60+
61+
Each edge specifies the ID of an accessor containing indices of vertices that make up the edge. The accessor `componentType` must be `UNSIGNED_SHORT` (5123) or `UNSIGNED_INT` (5125).
62+
63+
The four edges form a counter-clockwise ring around the triangle mesh
64+
65+
* `left` indices are on the left edge (generally negative X) and are ordered from top to bottom (generally positive Z to negative Z)
66+
* `bottom` indices are on the bottom edge (generally negative Z) and are ordered from left to right (generally negative X to positive X)
67+
* `right` indices are on the right edge (generally positive X) and are ordered from bottom to top (generally negative Z to positive Z)
68+
* `top` indices are on the top edge (generally positive Z) and are ordered from right to left (generally positive X to negative X)
69+
70+
## Optional vs. Required
71+
72+
This extension is optional, meaning it should be placed in the `extensionsUsed` list, but not in the `extensionsRequired` list.
162 KB
Loading
168 KB
Loading
987 KB
Loading
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/2020-12/schema",
3+
"$id": "mesh.primitive.CESIUM_tile_edges.schema.json",
4+
"title": "CESIUM_tile_edges glTF Mesh Primitive extension",
5+
"type": "object",
6+
"description": "`CESIUM_tile_edges` extension for a primitive in a glTF model.",
7+
"allOf": [
8+
{
9+
"$ref": "glTFProperty.schema.json"
10+
}
11+
],
12+
"properties": {
13+
"left": {
14+
"allOf": [
15+
{
16+
"$ref": "glTFid.schema.json"
17+
}
18+
],
19+
"description": "The index of the accessor containing indices that make up the left edge."
20+
},
21+
"bottom": {
22+
"allOf": [
23+
{
24+
"$ref": "glTFid.schema.json"
25+
}
26+
],
27+
"description": "The index of the accessor containing indices that make up the bottom edge."
28+
},
29+
"right": {
30+
"allOf": [
31+
{
32+
"$ref": "glTFid.schema.json"
33+
}
34+
],
35+
"description": "The index of the accessor containing indices that make up the right edge."
36+
},
37+
"top": {
38+
"allOf": [
39+
{
40+
"$ref": "glTFid.schema.json"
41+
}
42+
],
43+
"description": "The index of the accessor containing indices that make up the top edge."
44+
},
45+
"extensions": {},
46+
"extras": {}
47+
},
48+
"required": [
49+
"left",
50+
"bottom",
51+
"right",
52+
"top"
53+
]
54+
}

0 commit comments

Comments
 (0)