@driftengine/assets 4.1.3 → 4.1.5

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/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Model readers for seven formats, and the streaming loader that uploads them.
4
4
 
5
- **Cost: 12.5 KB gzipped on top of core.** Measured by `scripts/size-gate.test.mjs`, which fails if it drifts more than
5
+ **Cost: 12.7 KB gzipped on top of core.** Measured by `scripts/size-gate.test.mjs`, which fails if it drifts more than
6
6
  3% — the number is a fact about the build rather than a claim in a document.
7
7
 
8
8
  Part of [DriftEngine](../../README.md). See [`docs/ARCHITECTURE.md`](../../docs/ARCHITECTURE.md)
package/dist/index.d.ts CHANGED
@@ -70,4 +70,6 @@ export type { ClusterOptions, ClusterSet } from './bake/cluster.ts';
70
70
  export { buildClusterDag } from './bake/clusterLod.ts';
71
71
  export type { ClusterDag, ClusterLevel } from './bake/clusterLod.ts';
72
72
  export { bakeObjectSdf } from './bake/sdf.ts';
73
+ export { IMPOSTOR_GUTTER, IMPOSTOR_TILE, PROXY_BASE_CELLS, PROXY_MIN_CELLS, buildImpostor, buildProxy, frameOf, octahedralCoord, octahedralDirection, proxyResolution, rasteriseView, sampleImpostor, } from './bake/hlod.ts';
74
+ export type { Impostor, ProxyCell, ViewFrame } from './bake/hlod.ts';
73
75
  export type { ObjectSdf } from './bake/sdf.ts';
package/dist/index.js CHANGED
@@ -165,3 +165,16 @@ export { buildClusterDag } from './bake/clusterLod.js';
165
165
  * carries, and a field a consumer cannot bake is a pipeline with no input.
166
166
  */
167
167
  export { bakeObjectSdf } from './bake/sdf.js';
168
+ /*
169
+ * **The third time, and the one that got furthest before anybody noticed.** `bake/hlod.ts` builds
170
+ * the proxies and impostors `docs/CAPABILITIES.md` lists as shipping, it is tested, it is sized and
171
+ * it carries the licence — and until this line its only importer in the whole repository was its
172
+ * own test. A consumer following "the barrel is the contract" could read the row, believe the
173
+ * capability, and find no way to call it.
174
+ *
175
+ * The paragraph above says a demo boundary test caught the cluster case. Nothing caught this one,
176
+ * because no scene tried to bake an impostor — which is what the two paragraphs above are worth
177
+ * together: **a module reached only by its own test is not shipped, and no gate here asks.** Found
178
+ * by censusing what three consumers could adopt and what they could not.
179
+ */
180
+ export { IMPOSTOR_GUTTER, IMPOSTOR_TILE, PROXY_BASE_CELLS, PROXY_MIN_CELLS, buildImpostor, buildProxy, frameOf, octahedralCoord, octahedralDirection, proxyResolution, rasteriseView, sampleImpostor, } from './bake/hlod.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@driftengine/assets",
3
- "version": "4.1.3",
3
+ "version": "4.1.5",
4
4
  "description": "Model readers and the streaming loader for the .drft container",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -27,11 +27,11 @@
27
27
  ],
28
28
  "sideEffects": false,
29
29
  "dependencies": {
30
- "@driftengine/drft": "4.1.3",
31
- "@driftengine/texture": "4.1.3"
30
+ "@driftengine/drft": "4.1.5",
31
+ "@driftengine/texture": "4.1.5"
32
32
  },
33
33
  "peerDependencies": {
34
- "@driftengine/core": "4.1.3"
34
+ "@driftengine/core": "4.1.5"
35
35
  },
36
36
  "author": "Drift Technologies",
37
37
  "repository": {
package/src/index.ts CHANGED
@@ -199,4 +199,31 @@ export type { ClusterDag, ClusterLevel } from './bake/clusterLod.ts';
199
199
  * carries, and a field a consumer cannot bake is a pipeline with no input.
200
200
  */
201
201
  export { bakeObjectSdf } from './bake/sdf.ts';
202
+ /*
203
+ * **The third time, and the one that got furthest before anybody noticed.** `bake/hlod.ts` builds
204
+ * the proxies and impostors `docs/CAPABILITIES.md` lists as shipping, it is tested, it is sized and
205
+ * it carries the licence — and until this line its only importer in the whole repository was its
206
+ * own test. A consumer following "the barrel is the contract" could read the row, believe the
207
+ * capability, and find no way to call it.
208
+ *
209
+ * The paragraph above says a demo boundary test caught the cluster case. Nothing caught this one,
210
+ * because no scene tried to bake an impostor — which is what the two paragraphs above are worth
211
+ * together: **a module reached only by its own test is not shipped, and no gate here asks.** Found
212
+ * by censusing what three consumers could adopt and what they could not.
213
+ */
214
+ export {
215
+ IMPOSTOR_GUTTER,
216
+ IMPOSTOR_TILE,
217
+ PROXY_BASE_CELLS,
218
+ PROXY_MIN_CELLS,
219
+ buildImpostor,
220
+ buildProxy,
221
+ frameOf,
222
+ octahedralCoord,
223
+ octahedralDirection,
224
+ proxyResolution,
225
+ rasteriseView,
226
+ sampleImpostor,
227
+ } from './bake/hlod.ts';
228
+ export type { Impostor, ProxyCell, ViewFrame } from './bake/hlod.ts';
202
229
  export type { ObjectSdf } from './bake/sdf.ts';