@needle-tools/gltf-progressive 3.3.5 → 3.4.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NEEDLE_progressive/README.md +45 -47
- package/gltf-progressive.js +697 -569
- package/gltf-progressive.min.js +9 -7
- package/gltf-progressive.umd.cjs +9 -7
- package/lib/extension.d.ts +31 -3
- package/lib/extension.js +301 -56
- package/lib/utils.internal.d.ts +6 -0
- package/lib/utils.internal.js +92 -0
- package/lib/version.js +1 -1
- package/package.json +1 -1
|
@@ -1,32 +1,12 @@
|
|
|
1
1
|
# NEEDLE Progressive Extensions Schema
|
|
2
2
|
|
|
3
|
-
This document describes the
|
|
4
|
-
|
|
5
|
-
## Base Types
|
|
6
|
-
|
|
7
|
-
### NEEDLE_progressive_model_LOD
|
|
8
|
-
|
|
9
|
-
Represents a single Level of Detail (LOD) file reference.
|
|
10
|
-
|
|
11
|
-
| Property | Type | Required | Description |
|
|
12
|
-
|----------|------|----------|-------------|
|
|
13
|
-
| `path` | `string` | Yes | Relative path to the LOD file |
|
|
14
|
-
| `hash` | `string` | No | Optional hash for file verification |
|
|
15
|
-
|
|
16
|
-
### NEEDLE_progressive_ext
|
|
17
|
-
|
|
18
|
-
Base extension format for progressive assets.
|
|
19
|
-
|
|
20
|
-
| Property | Type | Required | Description |
|
|
21
|
-
|----------|------|----------|-------------|
|
|
22
|
-
| `guid` | `string` | Yes | Unique identifier of the object (texture, mesh) the LODs belong to |
|
|
23
|
-
| `lods` | `Array<NEEDLE_progressive_model_LOD>` | Yes | Array of available LOD levels |
|
|
3
|
+
This document describes the `NEEDLE_progressive` mesh and texture extensions that are used for progressive loading with `gltf-progressive`.
|
|
24
4
|
|
|
25
5
|
## Extension Types
|
|
26
6
|
|
|
27
|
-
###
|
|
7
|
+
### `NEEDLE_progressive` texture extension
|
|
28
8
|
|
|
29
|
-
Texture extension for progressive texture loading, inheriting from `
|
|
9
|
+
Texture extension for progressive texture loading, inheriting from `NEEDLE_progressive_base`.
|
|
30
10
|
|
|
31
11
|
| Property | Type | Required | Description |
|
|
32
12
|
|----------|------|----------|-------------|
|
|
@@ -41,28 +21,7 @@ Texture extension for progressive texture loading, inheriting from `NEEDLE_progr
|
|
|
41
21
|
| `width` | `number` | Yes | Texture width in pixels |
|
|
42
22
|
| `height` | `number` | Yes | Texture height in pixels |
|
|
43
23
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
Mesh extension for progressive mesh loading, inheriting from `NEEDLE_progressive_ext`.
|
|
47
|
-
|
|
48
|
-
| Property | Type | Required | Description |
|
|
49
|
-
|----------|------|----------|-------------|
|
|
50
|
-
| `guid` | `string` | Yes | Inherited from base type |
|
|
51
|
-
| `lods` | `Array<MeshLOD>` | Yes | Array of mesh LOD levels with geometry data |
|
|
52
|
-
|
|
53
|
-
**MeshLOD Properties:**
|
|
54
|
-
| Property | Type | Required | Description |
|
|
55
|
-
|----------|------|----------|-------------|
|
|
56
|
-
| `path` | `string` | Yes | Relative path to the mesh LOD file |
|
|
57
|
-
| `hash` | `string` | No | Optional hash for file verification |
|
|
58
|
-
| `densities` | `number[]` | Yes | Density values per primitive |
|
|
59
|
-
| `indexCount` | `number` | No | Number of indices in LOD0 |
|
|
60
|
-
| `vertexCount` | `number` | No | Number of vertices in LOD0 |
|
|
61
|
-
|
|
62
|
-
## Usage Examples
|
|
63
|
-
|
|
64
|
-
### Texture Extension Example
|
|
65
|
-
|
|
24
|
+
#### Example
|
|
66
25
|
```json
|
|
67
26
|
{
|
|
68
27
|
"guid": "texture-asset-123",
|
|
@@ -82,7 +41,25 @@ Mesh extension for progressive mesh loading, inheriting from `NEEDLE_progressive
|
|
|
82
41
|
}
|
|
83
42
|
```
|
|
84
43
|
|
|
85
|
-
###
|
|
44
|
+
### `NEEDLE_progressive` mesh extension
|
|
45
|
+
|
|
46
|
+
Mesh extension for progressive mesh loading, inheriting from `NEEDLE_progressive_base`.
|
|
47
|
+
|
|
48
|
+
| Property | Type | Required | Description |
|
|
49
|
+
|----------|------|----------|-------------|
|
|
50
|
+
| `guid` | `string` | Yes | Inherited from base type |
|
|
51
|
+
| `lods` | `Array<MeshLOD>` | Yes | Array of mesh LOD levels with geometry data |
|
|
52
|
+
|
|
53
|
+
**MeshLOD Properties:**
|
|
54
|
+
| Property | Type | Required | Description |
|
|
55
|
+
|----------|------|----------|-------------|
|
|
56
|
+
| `path` | `string` | Yes | Relative path to the mesh LOD file |
|
|
57
|
+
| `hash` | `string` | No | Optional hash for file verification |
|
|
58
|
+
| `densities` | `number[]` | Yes | Density values per primitive |
|
|
59
|
+
| `indexCount` | `number` | No | Number of indices in LOD0 |
|
|
60
|
+
| `vertexCount` | `number` | No | Number of vertices in LOD0 |
|
|
61
|
+
|
|
62
|
+
##### Example
|
|
86
63
|
|
|
87
64
|
```json
|
|
88
65
|
{
|
|
@@ -103,4 +80,25 @@ Mesh extension for progressive mesh loading, inheriting from `NEEDLE_progressive
|
|
|
103
80
|
}
|
|
104
81
|
]
|
|
105
82
|
}
|
|
106
|
-
```
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Base Types
|
|
86
|
+
|
|
87
|
+
### LOD
|
|
88
|
+
|
|
89
|
+
Represents a single Level of Detail (LOD) file reference.
|
|
90
|
+
|
|
91
|
+
| Property | Type | Required | Description |
|
|
92
|
+
|----------|------|----------|-------------|
|
|
93
|
+
| `path` | `string` | Yes | Relative path to the LOD file |
|
|
94
|
+
| `hash` | `string` | No | Optional hash for file verification |
|
|
95
|
+
|
|
96
|
+
### NEEDLE_progressive_base
|
|
97
|
+
|
|
98
|
+
Base extension format for progressive assets.
|
|
99
|
+
|
|
100
|
+
| Property | Type | Required | Description |
|
|
101
|
+
|----------|------|----------|-------------|
|
|
102
|
+
| `guid` | `string` | Yes | Unique identifier of the object (texture, mesh) the LODs belong to |
|
|
103
|
+
| `lods` | `Array<LOD>` | Yes | Array of available LOD levels |
|
|
104
|
+
|