@aura3d/assets 4.0.3 → 4.0.4

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.
Files changed (59) hide show
  1. package/dist/DataTextureLoader.d.ts +16 -0
  2. package/dist/DataTextureLoader.d.ts.map +1 -0
  3. package/dist/DataTextureLoader.js +29 -0
  4. package/dist/DataTextureLoader.js.map +1 -0
  5. package/dist/EXRLoader.d.ts +78 -0
  6. package/dist/EXRLoader.d.ts.map +1 -0
  7. package/dist/EXRLoader.js +1398 -0
  8. package/dist/EXRLoader.js.map +1 -0
  9. package/dist/FileLoader.d.ts +32 -0
  10. package/dist/FileLoader.d.ts.map +1 -0
  11. package/dist/FileLoader.js +79 -0
  12. package/dist/FileLoader.js.map +1 -0
  13. package/dist/GLTFRenderResources.d.ts +9 -0
  14. package/dist/GLTFRenderResources.d.ts.map +1 -1
  15. package/dist/GLTFRenderResources.js +47 -4
  16. package/dist/GLTFRenderResources.js.map +1 -1
  17. package/dist/GLTFSharedTextureCache.d.ts +40 -0
  18. package/dist/GLTFSharedTextureCache.d.ts.map +1 -0
  19. package/dist/GLTFSharedTextureCache.js +68 -0
  20. package/dist/GLTFSharedTextureCache.js.map +1 -0
  21. package/dist/ImageBitmapLoader.d.ts +27 -0
  22. package/dist/ImageBitmapLoader.d.ts.map +1 -0
  23. package/dist/ImageBitmapLoader.js +51 -0
  24. package/dist/ImageBitmapLoader.js.map +1 -0
  25. package/dist/ImageLoader.d.ts.map +1 -1
  26. package/dist/ImageLoader.js +12 -5
  27. package/dist/ImageLoader.js.map +1 -1
  28. package/dist/LoadContext.d.ts +4 -1
  29. package/dist/LoadContext.d.ts.map +1 -1
  30. package/dist/LoadContext.js +7 -2
  31. package/dist/LoadContext.js.map +1 -1
  32. package/dist/LoaderFetch.d.ts +12 -0
  33. package/dist/LoaderFetch.d.ts.map +1 -0
  34. package/dist/LoaderFetch.js +54 -0
  35. package/dist/LoaderFetch.js.map +1 -0
  36. package/dist/TextureLoader.d.ts.map +1 -1
  37. package/dist/TextureLoader.js +3 -1
  38. package/dist/TextureLoader.js.map +1 -1
  39. package/dist/asset-corpus/ProductionGLTFRenderPipeline.d.ts +6 -0
  40. package/dist/asset-corpus/ProductionGLTFRenderPipeline.d.ts.map +1 -1
  41. package/dist/asset-corpus/ProductionGLTFRenderPipeline.js +2 -1
  42. package/dist/asset-corpus/ProductionGLTFRenderPipeline.js.map +1 -1
  43. package/dist/browser-index.d.ts +9 -0
  44. package/dist/browser-index.d.ts.map +1 -1
  45. package/dist/browser-index.js +5 -0
  46. package/dist/browser-index.js.map +1 -1
  47. package/dist/gltf-runtime.d.ts +2 -0
  48. package/dist/gltf-runtime.d.ts.map +1 -1
  49. package/dist/gltf-runtime.js +1 -0
  50. package/dist/gltf-runtime.js.map +1 -1
  51. package/dist/index.d.ts +11 -0
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +7 -0
  54. package/dist/index.js.map +1 -1
  55. package/dist/loaders/TextureLoader.d.ts +27 -1
  56. package/dist/loaders/TextureLoader.d.ts.map +1 -1
  57. package/dist/loaders/TextureLoader.js +62 -4
  58. package/dist/loaders/TextureLoader.js.map +1 -1
  59. package/package.json +4 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EXRLoader.js","sourceRoot":"","sources":["../../../../packages/assets/src/EXRLoader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * threejs-parity ST-04 (§6 lane L4): `THREE.FileLoader` — fetch a URL and hand
3
+ * back the response in the requested `responseType`, with real progress
4
+ * callbacks and abort support.
5
+ */
6
+ import { type AuraLoaderProgress } from "./LoaderFetch.js";
7
+ export type FileLoaderResponseType = "" | "arraybuffer" | "blob" | "document" | "json" | "text";
8
+ export declare class FileLoader<T = unknown> {
9
+ /** three's `loader.responseType` — default `""` mirrors three's ArrayBuffer. */
10
+ responseType: FileLoaderResponseType;
11
+ /** three's `loader.mimeType` — applied via `Blob` type or left to the response. */
12
+ mimeType?: string;
13
+ /** three's `loader.withCredentials` — forwarded to `fetch` credentials. */
14
+ withCredentials: boolean;
15
+ /** three's `loader.requestHeader` — extra headers merged into the request. */
16
+ requestHeader: Record<string, string>;
17
+ /** Optional base URL prepended to relative `url`s (three's `path`). */
18
+ path: string;
19
+ setResponseType(value: FileLoaderResponseType): this;
20
+ setMimeType(value: string): this;
21
+ setWithCredentials(value: boolean): this;
22
+ setRequestHeader(value: Record<string, string>): this;
23
+ setPath(value: string): this;
24
+ /**
25
+ * `loader.load(url, onLoad?, onProgress?, onError?)` — returns the decoded
26
+ * response through a Promise and the optional three-style callbacks.
27
+ */
28
+ load(url: string, onLoad?: (data: T) => void, onProgress?: (progress: AuraLoaderProgress) => void, onError?: (error: unknown) => void): Promise<T>;
29
+ loadAsync(url: string, onProgress?: (progress: AuraLoaderProgress) => void): Promise<T>;
30
+ private loadUrl;
31
+ }
32
+ //# sourceMappingURL=FileLoader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileLoader.d.ts","sourceRoot":"","sources":["../../../../packages/assets/src/FileLoader.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAc,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,MAAM,MAAM,sBAAsB,GAAG,EAAE,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhG,qBAAa,UAAU,CAAC,CAAC,GAAG,OAAO;IACjC,gFAAgF;IAChF,YAAY,EAAE,sBAAsB,CAAiB;IACrD,mFAAmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,eAAe,UAAS;IACxB,8EAA8E;IAC9E,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAC3C,uEAAuE;IACvE,IAAI,SAAM;IAEV,eAAe,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI;IAKpD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKhC,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAKxC,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAKrD,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK5B;;;OAGG;IACH,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAC1B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,EACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GACjC,OAAO,CAAC,CAAC,CAAC;IAUb,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;YAIzE,OAAO;CAuBtB"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * threejs-parity ST-04 (§6 lane L4): `THREE.FileLoader` — fetch a URL and hand
3
+ * back the response in the requested `responseType`, with real progress
4
+ * callbacks and abort support.
5
+ */
6
+ import { fetchBytes } from "./LoaderFetch.js";
7
+ export class FileLoader {
8
+ /** three's `loader.responseType` — default `""` mirrors three's ArrayBuffer. */
9
+ responseType = "arraybuffer";
10
+ /** three's `loader.mimeType` — applied via `Blob` type or left to the response. */
11
+ mimeType;
12
+ /** three's `loader.withCredentials` — forwarded to `fetch` credentials. */
13
+ withCredentials = false;
14
+ /** three's `loader.requestHeader` — extra headers merged into the request. */
15
+ requestHeader = {};
16
+ /** Optional base URL prepended to relative `url`s (three's `path`). */
17
+ path = "";
18
+ setResponseType(value) {
19
+ this.responseType = value;
20
+ return this;
21
+ }
22
+ setMimeType(value) {
23
+ this.mimeType = value;
24
+ return this;
25
+ }
26
+ setWithCredentials(value) {
27
+ this.withCredentials = value;
28
+ return this;
29
+ }
30
+ setRequestHeader(value) {
31
+ this.requestHeader = value;
32
+ return this;
33
+ }
34
+ setPath(value) {
35
+ this.path = value;
36
+ return this;
37
+ }
38
+ /**
39
+ * `loader.load(url, onLoad?, onProgress?, onError?)` — returns the decoded
40
+ * response through a Promise and the optional three-style callbacks.
41
+ */
42
+ load(url, onLoad, onProgress, onError) {
43
+ const pending = this.loadUrl(url, onProgress)
44
+ .then((data) => {
45
+ onLoad?.(data);
46
+ return data;
47
+ });
48
+ if (onError)
49
+ pending.catch(onError);
50
+ return pending;
51
+ }
52
+ loadAsync(url, onProgress) {
53
+ return this.loadUrl(url, onProgress);
54
+ }
55
+ async loadUrl(url, onProgress) {
56
+ const resolved = this.path ? `${this.path}${url}` : url;
57
+ const buffer = await fetchBytes(resolved, undefined, onProgress);
58
+ switch (this.responseType) {
59
+ case "json":
60
+ return JSON.parse(new TextDecoder().decode(buffer));
61
+ case "text":
62
+ return new TextDecoder().decode(buffer);
63
+ case "blob":
64
+ return new Blob([buffer], this.mimeType ? { type: this.mimeType } : {});
65
+ case "document": {
66
+ if (typeof DOMParser === "undefined") {
67
+ throw new Error("FileLoader responseType 'document' requires DOMParser (browser environment)");
68
+ }
69
+ const text = new TextDecoder().decode(buffer);
70
+ return new DOMParser().parseFromString(text, (this.mimeType ?? "application/xml"));
71
+ }
72
+ case "arraybuffer":
73
+ case "":
74
+ default:
75
+ return buffer;
76
+ }
77
+ }
78
+ }
79
+ //# sourceMappingURL=FileLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileLoader.js","sourceRoot":"","sources":["../../../../packages/assets/src/FileLoader.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,15 @@ export interface GLTFRenderResourceOptions {
28
28
  * `baseColorFactor` and the rest of the asset still loads.
29
29
  */
30
30
  readonly failOnMissingTexture?: boolean;
31
+ /**
32
+ * SA-04: shared GPU-texture ownership for skinned clones. When set, decoded
33
+ * `Texture` objects are leased from this cache (keyed by
34
+ * `imageIndex:colorSpace`) instead of being created per call, so N clones of
35
+ * one GLB decode and upload each image once. `dispose()` on the returned
36
+ * resources releases the lease rather than disposing the textures; the cache
37
+ * frees them when the last lease releases.
38
+ */
39
+ readonly sharedTextures?: import("./GLTFSharedTextureCache.js").GLTFSharedTextureCache;
31
40
  /**
32
41
  * Share a single runtime material instance across glTF materials whose definitions are identical
33
42
  * apart from their name.
@@ -1 +1 @@
1
- {"version":3,"file":"GLTFRenderResources.d.ts","sourceRoot":"","sources":["../../../../packages/assets/src/GLTFRenderResources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GLTFRenderResources.d.ts","sourceRoot":"","sources":["../../../../packages/assets/src/GLTFRenderResources.ts"],"names":[],"mappings":"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"}
@@ -168,6 +168,7 @@ export async function createGLTFRenderResources(asset, options = {}) {
168
168
  const morphTargetLibrary = new Map();
169
169
  const textureLibrary = new Map();
170
170
  const textureByImage = new Map();
171
+ const sharedTextureLease = options.sharedTextures?.acquire() ?? null;
171
172
  const scene = asset.createScene({
172
173
  ...(options.materialVariant ? { materialVariant: options.materialVariant } : {}),
173
174
  ...(options.sceneIndex !== undefined ? { sceneIndex: options.sceneIndex } : {}),
@@ -198,13 +199,49 @@ export async function createGLTFRenderResources(asset, options = {}) {
198
199
  throw new Error(`glTF material texture ${info.texture} references missing image ${info.image}`);
199
200
  }
200
201
  const cacheKey = textureCacheKey(info.image, colorSpace);
202
+ const decoder = options.imageDecoder ?? ((sourceImage, imageIndex, sourceAsset) => decodeImageInBrowser(sourceImage, imageIndex, sourceAsset, decodeOptionsForImage(imageIndex)));
203
+ if (sharedTextureLease) {
204
+ try {
205
+ const texture = await sharedTextureLease.getOrCreate(cacheKey, async () => {
206
+ const decoded = await decoder(image, info.image, asset);
207
+ const texture = new Texture({
208
+ width: decoded.width,
209
+ height: decoded.height,
210
+ ...(decoded.format ? { format: decoded.format } : {}),
211
+ colorSpace,
212
+ label: textureAsset.name,
213
+ ...(decoded.mipLevels ? { mipLevels: decoded.mipLevels } : decoded.data ? { data: decoded.data } : { source: decoded.source }),
214
+ ...(decoded.fallbackData ? { fallbackData: decoded.fallbackData } : {}),
215
+ ...(decoded.fallbackMipLevels ? { fallbackMipLevels: decoded.fallbackMipLevels } : {})
216
+ });
217
+ if (options.textureBudget !== undefined || options.maxTextureSize !== undefined) {
218
+ return applyTextureBudget(texture, {
219
+ ...(options.textureBudget !== undefined ? { textureBudgetBytes: options.textureBudget } : {}),
220
+ ...(options.maxTextureSize !== undefined ? { maxTextureSize: options.maxTextureSize } : {})
221
+ });
222
+ }
223
+ return texture;
224
+ });
225
+ setTextureLibraryEntry(textureLibrary, textureAsset.name, colorSpace, texture);
226
+ return texture;
227
+ }
228
+ catch (error) {
229
+ if (options.failOnMissingTexture) {
230
+ throw error;
231
+ }
232
+ const reason = error instanceof Error ? error.message : String(error);
233
+ warnMissingGLTFTexture(textureAsset.name, image.uri, reason);
234
+ const fallback = createFallbackTexture(textureAsset.name, colorSpace);
235
+ setTextureLibraryEntry(textureLibrary, textureAsset.name, colorSpace, fallback);
236
+ return fallback;
237
+ }
238
+ }
201
239
  const existing = textureByImage.get(cacheKey);
202
240
  if (existing) {
203
241
  const texture = await existing;
204
242
  setTextureLibraryEntry(textureLibrary, textureAsset.name, colorSpace, texture);
205
243
  return texture;
206
244
  }
207
- const decoder = options.imageDecoder ?? ((sourceImage, imageIndex, sourceAsset) => decodeImageInBrowser(sourceImage, imageIndex, sourceAsset, decodeOptionsForImage(imageIndex)));
208
245
  const texturePromise = (async () => {
209
246
  const decoded = await decoder(image, info.image, asset);
210
247
  const texture = new Texture({
@@ -328,7 +365,7 @@ export async function createGLTFRenderResources(asset, options = {}) {
328
365
  }
329
366
  }
330
367
  catch (error) {
331
- disposeGLTFRenderResourceMaps(geometryLibrary, textureLibrary);
368
+ disposeGLTFRenderResourceMaps(geometryLibrary, textureLibrary, sharedTextureLease);
332
369
  throw error;
333
370
  }
334
371
  const bounds = computeGLTFRenderResourceBounds(scene, geometryLibrary, morphTargetLibrary);
@@ -380,7 +417,7 @@ export async function createGLTFRenderResources(asset, options = {}) {
380
417
  };
381
418
  },
382
419
  setMaterialVariant: (variant) => applyGLTFMaterialVariant({ asset, scene, materialLibrary, renderableBindings, buildMaterial, variant }),
383
- dispose: () => disposeGLTFRenderResourceMaps(geometryLibrary, textureLibrary)
420
+ dispose: () => disposeGLTFRenderResourceMaps(geometryLibrary, textureLibrary, sharedTextureLease)
384
421
  };
385
422
  }
386
423
  /**
@@ -940,9 +977,15 @@ function toMat4(values) {
940
977
  }
941
978
  return array;
942
979
  }
943
- function disposeGLTFRenderResourceMaps(geometryLibrary, textureLibrary) {
980
+ function disposeGLTFRenderResourceMaps(geometryLibrary, textureLibrary, sharedTextureLease) {
944
981
  for (const geometry of geometryLibrary.values())
945
982
  geometry.dispose();
983
+ if (sharedTextureLease) {
984
+ // Shared textures belong to the clone cache — release this pipeline's pin;
985
+ // the cache disposes them when the last lease releases.
986
+ sharedTextureLease.release();
987
+ return;
988
+ }
946
989
  for (const texture of textureLibrary.values())
947
990
  texture.dispose();
948
991
  }