@aura3d/engine 4.0.5 → 4.0.6

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 (26) hide show
  1. package/README.md +2 -2
  2. package/dist/create-aura3d/index.js +1 -1
  3. package/dist/engine/agent-api/compiler/customMaterial.d.ts +26 -3
  4. package/dist/engine/agent-api/compiler/customMaterial.d.ts.map +1 -1
  5. package/dist/engine/agent-api/compiler/customMaterial.js +115 -9
  6. package/dist/engine/agent-api/compiler/customMaterial.js.map +1 -1
  7. package/dist/engine/agent-api/compiler/customTextures.d.ts +17 -0
  8. package/dist/engine/agent-api/compiler/customTextures.d.ts.map +1 -0
  9. package/dist/engine/agent-api/compiler/customTextures.js +84 -0
  10. package/dist/engine/agent-api/compiler/customTextures.js.map +1 -0
  11. package/dist/engine/agent-api/compiler/primitives.d.ts.map +1 -1
  12. package/dist/engine/agent-api/compiler/primitives.js +7 -1
  13. package/dist/engine/agent-api/compiler/primitives.js.map +1 -1
  14. package/dist/engine/agent-api/compiler/renderer.d.ts.map +1 -1
  15. package/dist/engine/agent-api/compiler/renderer.js +12 -0
  16. package/dist/engine/agent-api/compiler/renderer.js.map +1 -1
  17. package/dist/engine/agent-api/nodes/types.d.ts +2 -2
  18. package/dist/engine/agent-api/nodes/types.d.ts.map +1 -1
  19. package/package.json +26 -26
  20. package/templates/cinematic-scene/package.json +2 -2
  21. package/templates/mini-game/package.json +2 -2
  22. package/templates/product-viewer/package.json +2 -2
  23. package/templates/production-asset-inspector/package.json +1 -1
  24. package/templates/production-material-studio/package.json +1 -1
  25. package/templates/production-product-configurator/package.json +1 -1
  26. package/templates/production-product-viewer/package.json +1 -1
package/README.md CHANGED
@@ -766,5 +766,5 @@ Fleet-standard SEO pass on the marketing/docs static site (`marketing/`, deploye
766
766
  - **robots.txt**: regenerated with 14 named AI-crawler Allow groups (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, …) plus `*`, each repeating the real defensive disallows (`/node_modules/`, `/src/`, `/*.map$`); absolute Host + Sitemap; placeholder-domain swap-note. Generated identically for the marketing entry and the repo-root entry.
767
767
  - **sitemap.xml**: exact bijection of the committed 36-route public manifest (home + 13 docs + 20 active showcase apps + the 2 wow example apps) with per-route `lastmod` derived from real git history. The old hand-maintained sitemap was stale in both directions: retired showcase prototypes (`showcase-turbo-drift-circuit`, `showcase-skyline-runner`) were still listed; `/showcase/aura-clash/*` was listed although the builder now writes redirect stubs to `/apps/showcase-index/` for the retired Aura Clash showcase; 4 more `/showcase/aura-clash/*` subroutes and 6 `/apps/*` gallery/wow routes are not produced by the current build (owner follow-up if any should return as real content); and the 20 active showcase apps were missing. `docs/index.html` (301 → `/`) and the canonicalized duplicate `docs/aura-clash.html` are deliberately not listed.
768
768
  - **Generator + drift guard**: `marketing/scripts/gen-seo.mjs` (`npm run seo:gen` in `marketing/`) emits robots/sitemap/llms for both entries from one manifest; `--check` (wired into `npm run build`) fails the build if any manifest route loses its source file, the docs family drifts from `marketing/docs/*.html`, or a route is missing from `dist/` after the build.
769
- - **llms.txt**: now a standard LLM-crawler map — honest frozen summary, Facts block (release pinned to the repo manifest, the same source the version guard uses), every public route linked with its real title/description, git-derived Last updated, placeholder-domain swap-note — with the long-form agent guide preserved verbatim below a marker. The stale "Current release: 4.0.1" line was corrected to 4.0.5 (repo manifest).
770
- - **Per-page meta**: the brand pass `8ec1bf3` had already landed unique titles, absolute canonicals, and OG/Twitter brand renders across the home and all docs pages (verified; `docs/aura-clash.html` correctly canonicalizes onto `aura-clash-showcase.html`). This pass closed the remaining gaps: canonical + OG/Twitter brand renders wired into all 20 active showcase app sources (`apps/showcase-*/index.html`); three v1/v2 title collisions disambiguated (Aura Slam 3D, Apex Overdrive, THERMAL DRIFT) and the stale `Aura3D 4.0.1` tag in the teleoperator-v2 title corrected to 4.0.5; the two wow example apps' `og:image` fixed from a relative `/og/aura3d-og.png` that exists nowhere in the repo to the committed absolute brand render, plus twitter cards added.
769
+ - **llms.txt**: now a standard LLM-crawler map — honest frozen summary, Facts block (release pinned to the repo manifest, the same source the version guard uses), every public route linked with its real title/description, git-derived Last updated, placeholder-domain swap-note — with the long-form agent guide preserved verbatim below a marker. The stale "Current release: 4.0.1" line was corrected to 4.0.6 (repo manifest).
770
+ - **Per-page meta**: the brand pass `8ec1bf3` had already landed unique titles, absolute canonicals, and OG/Twitter brand renders across the home and all docs pages (verified; `docs/aura-clash.html` correctly canonicalizes onto `aura-clash-showcase.html`). This pass closed the remaining gaps: canonical + OG/Twitter brand renders wired into all 20 active showcase app sources (`apps/showcase-*/index.html`); three v1/v2 title collisions disambiguated (Aura Slam 3D, Apex Overdrive, THERMAL DRIFT) and the stale `Aura3D 4.0.1` tag in the teleoperator-v2 title corrected to 4.0.6; the two wow example apps' `og:image` fixed from a relative `/og/aura3d-og.png` that exists nowhere in the repo to the committed absolute brand render, plus twitter cards added.
@@ -75,7 +75,7 @@ export function createA3DProject(options) {
75
75
  const dependencies = { ...(packageJson.dependencies ?? {}) };
76
76
  const auraDependencies = Object.keys(dependencies).filter((name) => name.startsWith("@aura3d/"));
77
77
  if (auraDependencies.length === 0) {
78
- dependencies["@aura3d/engine"] = options.packageVersion ?? "4.0.5";
78
+ dependencies["@aura3d/engine"] = options.packageVersion ?? "4.0.6";
79
79
  }
80
80
  else if (options.packageVersion) {
81
81
  for (const dependency of auraDependencies)
@@ -24,8 +24,16 @@
24
24
  * Known honest limits (documented, not silently applied):
25
25
  * - `i32`/`bool` ride the float uniform channel; GLSL aliases emit int()/bool() casts.
26
26
  * - `mat3` is padded into a mat4 slot; its alias emits `mat3(u_x)`.
27
- * - `texture2d` accepts a `TextureBinding`; an `AuraTextureRef` lowers to a
28
- * non-required binding so the renderer uses its fallback texture.
27
+ * - `texture2d` accepts a `TextureBinding`, a `texture.*` handle
28
+ * (`AuraTextureRef`, resolved to its real device texture with the handle's
29
+ * sampler state), a raw rendering `Texture` (for example a render-target
30
+ * colour attachment), or a texture asset ref (`assets.x`, loaded by
31
+ * `upgradeCustomMaterialTextures` after mount). Handle sampler fields are
32
+ * re-synced every frame without recompiling; `needsUpdate` re-uploads the
33
+ * same device texture. A uniform with no texture samples the renderer's
34
+ * white fallback and is named in `customDiagnostics`
35
+ * (`CUSTOM_TEXTURE_UNBOUND`). The handle's `repeat/offset/rotation` are not
36
+ * applied: a custom shader receives raw UVs and owns its own transform.
29
37
  * - `fog` is recorded in `customDiagnostics`, never silently applied.
30
38
  */
31
39
  import { PortableShaderMaterial, type UniformValue } from "../../../rendering/index.js";
@@ -44,6 +52,10 @@ export declare function normalizeCustomUniformValue(type: AuraCustomUniformType,
44
52
  export declare function stableSpecStringify(value: unknown): string;
45
53
  /** FNV-1a over the canonical spec — identical specs share one program cache entry. */
46
54
  export declare function customMaterialCacheKey(spec: AuraCustomMaterialSpec): string;
55
+ /** Lowered `u_*` uniform name for an authored uniform name. */
56
+ export declare const customUniformNameFor: (publicName: string) => string;
57
+ /** Authored names of the texture2d uniforms declared on a custom material. */
58
+ export declare function customTextureUniformNames(material: PortableShaderMaterial): readonly string[];
47
59
  /**
48
60
  * The compiled custom material. `sources` may omit WGSL — such materials are
49
61
  * WebGL2-only and the WebGPU device fails closed with `WGSL_PROGRAM_MISSING`.
@@ -54,7 +66,11 @@ export declare class AuraCustomShaderMaterial extends PortableShaderMaterial {
54
66
  readonly name?: string;
55
67
  });
56
68
  dispose(): void;
57
- /** Diagnostics authored-side: `fog` is recorded here, never silently applied. */
69
+ /**
70
+ * Diagnostics authored-side: `fog` is recorded here, never silently applied,
71
+ * and a texture2d uniform with no texture is named (`CUSTOM_TEXTURE_UNBOUND`)
72
+ * because the shader then samples the renderer's white fallback.
73
+ */
58
74
  get customDiagnostics(): readonly string[];
59
75
  }
60
76
  /** Compile an `AuraCustomMaterialSpec` into a renderer-integrated portable material. */
@@ -68,6 +84,13 @@ export declare function clearCustomUniformWrites(runtimeId: string): void;
68
84
  * program cache entry are untouched, so the program count stays constant.
69
85
  */
70
86
  export declare function applyCustomUniformWrites(material: PortableShaderMaterial, writes: ReadonlyMap<string, AuraUniformValue>): number;
87
+ /**
88
+ * Re-derives each live `texture.*` handle's binding (texture + sampler state)
89
+ * and writes it only when it changed, so wrap/filter edits on the handle reach
90
+ * the draw without a program change. `needsUpdate` needs no sync: the binding
91
+ * points at the same device texture, whose revision the device re-uploads.
92
+ */
93
+ export declare function syncCustomTextureRefs(material: PortableShaderMaterial): number;
71
94
  /**
72
95
  * Validates a `handle.setUniform(name, value)` call against the node's
73
96
  * material spec — throws `invalid-material-spec` when the node is not a custom
@@ -1 +1 @@
1
- {"version":3,"file":"customMaterial.d.ts","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/customMaterial.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EACL,sBAAsB,EActB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,KAAK,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAyBzG;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,SAAoB,GAAG,OAAO,CAAC,IAAI,IAAI,sBAAsB,CAuE7H;AAsDD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,YAAY,CAqBvH;AA6OD,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQ1D;AAQD,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,sBAAsB,GAAG,MAAM,CAmB3E;AAqBD;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,sBAAsB;IAClE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;gBAE3B,IAAI,EAAE,sBAAsB,EAAE,OAAO,GAAE;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO;IA2CzE,OAAO,IAAI,IAAI;IAYxB,iFAAiF;IACjF,IAAI,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAEzC;CACF;AAED,wFAAwF;AACxF,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,sBAAsB,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,wBAAwB,CAEhH;AASD,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAOvG;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAE3G;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAEhE;AAeD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM,CAchI;AAUD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE;IAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAA;CAAE,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAUvK"}
1
+ {"version":3,"file":"customMaterial.d.ts","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/customMaterial.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EACL,sBAAsB,EAetB,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAK3B,OAAO,KAAK,EAAgB,sBAAsB,EAAE,qBAAqB,EAAkB,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AA0BvI;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,SAAoB,GAAG,OAAO,CAAC,IAAI,IAAI,sBAAsB,CAuE7H;AAqED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,YAAY,CAwBvH;AA6OD,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQ1D;AAUD,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,sBAAsB,GAAG,MAAM,CAmB3E;AAcD,+DAA+D;AAC/D,eAAO,MAAM,oBAAoB,GAAI,YAAY,MAAM,KAAG,MAAsE,CAAC;AAEjI,8EAA8E;AAC9E,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,SAAS,MAAM,EAAE,CAE7F;AAWD;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,sBAAsB;IAClE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;gBAE3B,IAAI,EAAE,sBAAsB,EAAE,OAAO,GAAE;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO;IAiDzE,OAAO,IAAI,IAAI;IAYxB;;;;OAIG;IACH,IAAI,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAUzC;CACF;AAED,wFAAwF;AACxF,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,sBAAsB,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,wBAAwB,CAEhH;AASD,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAOvG;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAE3G;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAEhE;AAeD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM,CAwBhI;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,CAW9E;AAyBD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE;IAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAA;CAAE,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAUvK"}
@@ -24,13 +24,23 @@
24
24
  * Known honest limits (documented, not silently applied):
25
25
  * - `i32`/`bool` ride the float uniform channel; GLSL aliases emit int()/bool() casts.
26
26
  * - `mat3` is padded into a mat4 slot; its alias emits `mat3(u_x)`.
27
- * - `texture2d` accepts a `TextureBinding`; an `AuraTextureRef` lowers to a
28
- * non-required binding so the renderer uses its fallback texture.
27
+ * - `texture2d` accepts a `TextureBinding`, a `texture.*` handle
28
+ * (`AuraTextureRef`, resolved to its real device texture with the handle's
29
+ * sampler state), a raw rendering `Texture` (for example a render-target
30
+ * colour attachment), or a texture asset ref (`assets.x`, loaded by
31
+ * `upgradeCustomMaterialTextures` after mount). Handle sampler fields are
32
+ * re-synced every frame without recompiling; `needsUpdate` re-uploads the
33
+ * same device texture. A uniform with no texture samples the renderer's
34
+ * white fallback and is named in `customDiagnostics`
35
+ * (`CUSTOM_TEXTURE_UNBOUND`). The handle's `repeat/offset/rotation` are not
36
+ * applied: a custom shader receives raw UVs and owns its own transform.
29
37
  * - `fog` is recorded in `customDiagnostics`, never silently applied.
30
38
  */
31
- import { PortableShaderMaterial, ShaderPreprocessor, ShaderLibrary, SHADER_CHUNKS, TextureBinding, globalShaderChunkEntries, globalShaderWgslChunkSource, isTextureBinding, registerGlobalShaderSource, unregisterGlobalShaderSource } from "../../../rendering/index.js";
39
+ import { PortableShaderMaterial, ShaderPreprocessor, ShaderLibrary, SHADER_CHUNKS, Texture, TextureBinding, globalShaderChunkEntries, globalShaderWgslChunkSource, isTextureBinding, registerGlobalShaderSource, unregisterGlobalShaderSource } from "../../../rendering/index.js";
32
40
  import { AuraRuntimeError } from "./errors.js";
33
41
  import { assertCustomAttributeName } from "../RootGeometry.js";
42
+ import { auraTextureRefTexture } from "../nodes/texture.js";
43
+ import { auraTextureRefSampler, auraTextureRefTransform, isAuraTextureRef } from "./textures.js";
34
44
  /* ------------------------------------------------------------------------- */
35
45
  /* Validation (SH-02) */
36
46
  /* ------------------------------------------------------------------------- */
@@ -138,6 +148,19 @@ export function assertAuraCustomMaterialSpec(spec, owner = "material.custom") {
138
148
  }
139
149
  }
140
150
  const isTextureRef = (value) => isRecord(value) && value.kind === "aura-texture-ref" && typeof value.id === "string";
151
+ /** `assets.x` texture refs carry a url; the texture itself loads after mount. */
152
+ const isAssetTextureRef = (value) => isRecord(value) && value.kind === "aura-asset-ref" && value.type === "texture";
153
+ /**
154
+ * A `texture.*` handle → a binding over its real device texture with the
155
+ * handle's sampler state. A ref with no backing texture (never uploaded) keeps
156
+ * the fallback-sampling placeholder so the material still compiles.
157
+ */
158
+ function bindingForTextureRef(ref, name) {
159
+ const texture = auraTextureRefTexture(ref);
160
+ if (!texture)
161
+ return new TextureBinding({ name, texture: null, required: false });
162
+ return new TextureBinding({ name, texture, sampler: auraTextureRefSampler(ref), transform: auraTextureRefTransform(ref), required: false });
163
+ }
141
164
  const numericArray = (value) => {
142
165
  if (typeof value === "number")
143
166
  return [value];
@@ -185,9 +208,14 @@ export function normalizeCustomUniformValue(type, value, name = "uniform") {
185
208
  if (type === "texture2d") {
186
209
  if (isTextureBinding(value))
187
210
  return value;
188
- if (isTextureRef(value))
211
+ if (value instanceof Texture)
212
+ return new TextureBinding({ name, texture: value, required: false });
213
+ if (isAuraTextureRef(value))
214
+ return bindingForTextureRef(value, name);
215
+ // Placeholder until `upgradeCustomMaterialTextures` loads the asset's url.
216
+ if (isAssetTextureRef(value))
189
217
  return new TextureBinding({ name, texture: null, required: false });
190
- invalidSpec("material.custom", `uniform "${name}" expects a TextureBinding or AuraTextureRef value`);
218
+ invalidSpec("material.custom", `uniform "${name}" expects a TextureBinding, a texture handle (texture.*), a Texture (for example a render-target colour attachment) or a texture asset ref`);
191
219
  }
192
220
  if (type === "color3" && typeof value === "string") {
193
221
  const color = parseColor3(value);
@@ -445,6 +473,10 @@ const normalizeHashableValue = (value) => {
445
473
  return { kind: "texture-binding", name: value.name };
446
474
  if (isTextureRef(value))
447
475
  return { kind: "texture-ref", id: value.id };
476
+ if (value instanceof Texture)
477
+ return { kind: "texture", label: value.label };
478
+ if (isAssetTextureRef(value))
479
+ return { kind: "asset-texture-ref", id: value.id };
448
480
  return numericArray(value) ?? value;
449
481
  };
450
482
  /** FNV-1a over the canonical spec — identical specs share one program cache entry. */
@@ -476,6 +508,14 @@ const adapterPreprocessor = new ShaderPreprocessor();
476
508
  const globalSourceRefs = new Map();
477
509
  /** material → authored-name → lowered uniform descriptor (runtime setUniform lookup). */
478
510
  const publicUniformsByMaterial = new WeakMap();
511
+ /** material → lowered uniform name → live `texture.*` handle bound there (sampler state re-syncs each frame). */
512
+ const liveTextureRefsByMaterial = new WeakMap();
513
+ /** Lowered `u_*` uniform name for an authored uniform name. */
514
+ export const customUniformNameFor = (publicName) => publicName.startsWith("u_") ? publicName : `u_${publicName}`;
515
+ /** Authored names of the texture2d uniforms declared on a custom material. */
516
+ export function customTextureUniformNames(material) {
517
+ return [...(publicUniformsByMaterial.get(material)?.values() ?? [])].filter((uniform) => uniform.auraType === "texture2d").map((uniform) => uniform.publicName);
518
+ }
479
519
  function adapterLibraryFor(_name) {
480
520
  // One fresh library per material instance: two materials that lower to the
481
521
  // same cache key may coexist (register() throws on duplicate names in a
@@ -521,6 +561,14 @@ export class AuraCustomShaderMaterial extends PortableShaderMaterial {
521
561
  });
522
562
  this.fogRequested = spec.fog === true;
523
563
  publicUniformsByMaterial.set(this, new Map(uniforms.map((uniform) => [uniform.publicName, uniform])));
564
+ const liveRefs = new Map();
565
+ for (const [publicName, uniform] of Object.entries(spec.uniforms ?? {})) {
566
+ const value = isRecord(uniform) ? uniform.value : undefined;
567
+ if (isAuraTextureRef(value))
568
+ liveRefs.set(customUniformNameFor(publicName), { publicName, ref: value });
569
+ }
570
+ if (liveRefs.size > 0)
571
+ liveTextureRefsByMaterial.set(this, liveRefs);
524
572
  registerGlobalShaderSource(this.sourcePair(this.sources));
525
573
  globalSourceRefs.set(this.shaderKey, (globalSourceRefs.get(this.shaderKey) ?? 0) + 1);
526
574
  }
@@ -537,9 +585,22 @@ export class AuraCustomShaderMaterial extends PortableShaderMaterial {
537
585
  globalSourceRefs.set(this.shaderKey, refs);
538
586
  }
539
587
  }
540
- /** Diagnostics authored-side: `fog` is recorded here, never silently applied. */
588
+ /**
589
+ * Diagnostics authored-side: `fog` is recorded here, never silently applied,
590
+ * and a texture2d uniform with no texture is named (`CUSTOM_TEXTURE_UNBOUND`)
591
+ * because the shader then samples the renderer's white fallback.
592
+ */
541
593
  get customDiagnostics() {
542
- return this.fogRequested ? ["material.custom: fog is not wired to custom shaders — the field is recorded, not applied"] : [];
594
+ const out = [];
595
+ if (this.fogRequested)
596
+ out.push("material.custom: fog is not wired to custom shaders — the field is recorded, not applied");
597
+ for (const publicName of customTextureUniformNames(this)) {
598
+ const binding = this.getParameter(customUniformNameFor(publicName));
599
+ if (isTextureBinding(binding) && !binding.texture) {
600
+ out.push(`[CUSTOM_TEXTURE_UNBOUND] material.custom: texture uniform "${publicName}" has no texture; the shader samples the white fallback`);
601
+ }
602
+ }
603
+ return out;
543
604
  }
544
605
  }
545
606
  /** Compile an `AuraCustomMaterialSpec` into a renderer-integrated portable material. */
@@ -566,7 +627,7 @@ export function clearCustomUniformWrites(runtimeId) {
566
627
  customUniformWrites.delete(runtimeId);
567
628
  }
568
629
  const inferTypeFromValue = (value) => {
569
- if (isTextureBinding(value) || isTextureRef(value))
630
+ if (isTextureBinding(value) || isTextureRef(value) || value instanceof Texture || isAssetTextureRef(value))
570
631
  return "texture2d";
571
632
  const scalars = numericArray(value);
572
633
  switch (scalars?.length ?? 0) {
@@ -589,10 +650,24 @@ export function applyCustomUniformWrites(material, writes) {
589
650
  for (const [publicName, value] of writes) {
590
651
  const lowered = publics?.get(publicName);
591
652
  const type = lowered?.auraType ?? inferTypeFromValue(value);
592
- const uniformName = lowered?.name ?? (publicName.startsWith("u_") ? publicName : `u_${publicName}`);
653
+ const uniformName = lowered?.name ?? customUniformNameFor(publicName);
593
654
  if (!material.uniformSchema.some((uniform) => uniform.name === uniformName))
594
655
  continue;
595
656
  const normalized = normalizeCustomUniformValue(type, value, publicName);
657
+ if (type === "texture2d") {
658
+ // A newly written handle becomes the live ref; any other texture value stops the per-frame sync.
659
+ let refs = liveTextureRefsByMaterial.get(material);
660
+ if (isAuraTextureRef(value)) {
661
+ if (!refs) {
662
+ refs = new Map();
663
+ liveTextureRefsByMaterial.set(material, refs);
664
+ }
665
+ refs.set(uniformName, { publicName, ref: value });
666
+ }
667
+ else {
668
+ refs?.delete(uniformName);
669
+ }
670
+ }
596
671
  if (uniformValuesEqual(material.getParameters().get(uniformName), normalized))
597
672
  continue;
598
673
  material.setParameter(uniformName, normalized);
@@ -600,9 +675,40 @@ export function applyCustomUniformWrites(material, writes) {
600
675
  }
601
676
  return applied;
602
677
  }
678
+ /**
679
+ * Re-derives each live `texture.*` handle's binding (texture + sampler state)
680
+ * and writes it only when it changed, so wrap/filter edits on the handle reach
681
+ * the draw without a program change. `needsUpdate` needs no sync: the binding
682
+ * points at the same device texture, whose revision the device re-uploads.
683
+ */
684
+ export function syncCustomTextureRefs(material) {
685
+ const refs = liveTextureRefsByMaterial.get(material);
686
+ if (!refs?.size)
687
+ return 0;
688
+ let applied = 0;
689
+ for (const [uniformName, { publicName, ref }] of refs) {
690
+ const next = bindingForTextureRef(ref, publicName);
691
+ if (textureBindingsEqual(material.getParameters().get(uniformName), next))
692
+ continue;
693
+ material.setParameter(uniformName, next);
694
+ applied += 1;
695
+ }
696
+ return applied;
697
+ }
698
+ const samplersEqual = (a, b) => a.minFilter === b.minFilter && a.magFilter === b.magFilter && a.addressU === b.addressU && a.addressV === b.addressV
699
+ && a.addressW === b.addressW && a.maxAnisotropy === b.maxAnisotropy && a.compare === b.compare && a.mirror === b.mirror;
700
+ const pairEqual = (a, b) => a.length === b.length && a.every((entry, index) => entry === b[index]);
701
+ function textureBindingsEqual(a, b) {
702
+ if (!isTextureBinding(a) || !isTextureBinding(b))
703
+ return false;
704
+ return a === b || (a.texture === b.texture && samplersEqual(a.sampler, b.sampler)
705
+ && pairEqual(a.offset, b.offset) && pairEqual(a.scale, b.scale) && a.rotation === b.rotation);
706
+ }
603
707
  const uniformValuesEqual = (a, b) => {
604
708
  if (a === b)
605
709
  return true;
710
+ if (isTextureBinding(a) || isTextureBinding(b))
711
+ return textureBindingsEqual(a, b);
606
712
  if (typeof a === "number" && typeof b === "number")
607
713
  return a === b;
608
714
  const av = numericArray(a);
@@ -1 +1 @@
1
- {"version":3,"file":"customMaterial.js","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/customMaterial.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"customMaterial.js","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/customMaterial.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * R-26 — texture asset refs (`assets.x`) bound to `material.custom` / `material.node`
3
+ * texture2d uniforms. `texture.*` handles and raw `Texture` values resolve
4
+ * synchronously in `customMaterial.ts`; an asset ref only carries a url, so its
5
+ * image loads here after mount (the same fire-and-forget pass the PBR texture
6
+ * upgrade uses). Asset textures sample raw bytes (`linear`): a custom shader
7
+ * owns its own colour management, as three's ShaderMaterial does.
8
+ *
9
+ * Limit: primitive nodes only. A `material.custom` on a `model(...)` node keeps
10
+ * the white fallback for asset refs (named by `CUSTOM_TEXTURE_UNBOUND`).
11
+ */
12
+ import type { ProductionRuntimePrimitiveEntry } from "../nodes/types.js";
13
+ type BitmapLoader = (url: string) => Promise<ImageBitmap>;
14
+ /** Loads and binds asset-ref textures for every primitive custom material (once per resource). */
15
+ export declare function upgradeCustomMaterialTextures(entries: readonly ProductionRuntimePrimitiveEntry[], warn: (message: string) => void, loadBitmap?: BitmapLoader): Promise<void>;
16
+ export {};
17
+ //# sourceMappingURL=customTextures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customTextures.d.ts","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/customTextures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAgB,+BAA+B,EAAsC,MAAM,mBAAmB,CAAC;AAU3H,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;AAiD1D,kGAAkG;AAClG,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,SAAS,+BAA+B,EAAE,EACnD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,EAC/B,UAAU,GAAE,YAA4C,GACvD,OAAO,CAAC,IAAI,CAAC,CAQf"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * R-26 — texture asset refs (`assets.x`) bound to `material.custom` / `material.node`
3
+ * texture2d uniforms. `texture.*` handles and raw `Texture` values resolve
4
+ * synchronously in `customMaterial.ts`; an asset ref only carries a url, so its
5
+ * image loads here after mount (the same fire-and-forget pass the PBR texture
6
+ * upgrade uses). Asset textures sample raw bytes (`linear`): a custom shader
7
+ * owns its own colour management, as three's ShaderMaterial does.
8
+ *
9
+ * Limit: primitive nodes only. A `material.custom` on a `model(...)` node keeps
10
+ * the white fallback for asset refs (named by `CUSTOM_TEXTURE_UNBOUND`).
11
+ */
12
+ import { PortableShaderMaterial, Texture, TextureBinding } from "../../../rendering/index.js";
13
+ import { customTextureUniformNames, customUniformNameFor } from "./customMaterial.js";
14
+ import { loadProductionPrimitiveBitmap } from "./textures.js";
15
+ const passed = new WeakSet();
16
+ const isRecord = (value) => typeof value === "object" && value !== null;
17
+ const isAssetTextureRef = (value) => isRecord(value) && value.kind === "aura-asset-ref" && value.type === "texture";
18
+ async function bindResource(resource, warn, loadBitmap) {
19
+ const material = resource.material;
20
+ const spec = resource.materialSpec?.kind === "custom" ? resource.materialSpec.custom : undefined;
21
+ if (!spec || !(material instanceof PortableShaderMaterial))
22
+ return;
23
+ const ownedTextures = [];
24
+ const ownedBitmaps = [];
25
+ const disposeOwned = () => {
26
+ for (const texture of ownedTextures)
27
+ texture.dispose();
28
+ for (const bitmap of ownedBitmaps)
29
+ bitmap.close();
30
+ ownedTextures.length = 0;
31
+ ownedBitmaps.length = 0;
32
+ };
33
+ for (const [publicName, uniform] of Object.entries(spec.uniforms ?? {})) {
34
+ const value = isRecord(uniform) ? uniform.value : undefined;
35
+ if (!isAssetTextureRef(value))
36
+ continue;
37
+ if (!value.url) {
38
+ warn(`[CUSTOM_TEXTURE_ASSET_URL_MISSING] "${resource.name}" uniform "${publicName}": asset "${value.id}" has no url; sampling the white fallback`);
39
+ continue;
40
+ }
41
+ try {
42
+ const bitmap = await loadBitmap(value.url);
43
+ if (material.disposed) {
44
+ bitmap.close();
45
+ disposeOwned();
46
+ return;
47
+ }
48
+ ownedBitmaps.push(bitmap);
49
+ const texture = new Texture({ width: bitmap.width, height: bitmap.height, source: bitmap, colorSpace: "linear", label: `${resource.name}-${publicName}` });
50
+ ownedTextures.push(texture);
51
+ material.setParameter(customUniformNameFor(publicName), new TextureBinding({ name: publicName, texture, required: false }));
52
+ }
53
+ catch (error) {
54
+ const message = `[CUSTOM_TEXTURE_ASSET_LOAD_FAILED] "${resource.name}" uniform "${publicName}" (${value.url}): ${error instanceof Error ? error.message : String(error)}; sampling the white fallback`;
55
+ resource.textureWarnings.push(message);
56
+ warn(message);
57
+ }
58
+ }
59
+ if (ownedTextures.length > 0) {
60
+ const previous = resource.textureDisposer;
61
+ resource.textureDisposer = () => { previous?.(); disposeOwned(); };
62
+ }
63
+ // Named once per resource: any texture2d uniform still without a texture samples the white fallback.
64
+ for (const publicName of customTextureUniformNames(material)) {
65
+ const binding = material.getParameter(customUniformNameFor(publicName));
66
+ if (binding instanceof TextureBinding && !binding.texture) {
67
+ const message = `[CUSTOM_TEXTURE_UNBOUND] "${resource.name}" uniform "${publicName}" has no texture; the shader samples the white fallback`;
68
+ resource.textureWarnings.push(message);
69
+ warn(message);
70
+ }
71
+ }
72
+ }
73
+ /** Loads and binds asset-ref textures for every primitive custom material (once per resource). */
74
+ export async function upgradeCustomMaterialTextures(entries, warn, loadBitmap = loadProductionPrimitiveBitmap) {
75
+ for (const entry of entries) {
76
+ for (const resource of entry.resources) {
77
+ if (passed.has(resource))
78
+ continue;
79
+ passed.add(resource);
80
+ await bindResource(resource, warn, loadBitmap);
81
+ }
82
+ }
83
+ }
84
+ //# sourceMappingURL=customTextures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customTextures.js","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/customTextures.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/primitives.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../../../../packages/engine/src/agent-api/compiler/primitives.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import { createModelMatrix, primitiveSize, shouldNormalizeModelNode } from "../s
8
8
  import { selectAuraRootLodLevel } from "../RootGeometry.js";
9
9
  import { evaluateDistancePrioritizedMipResidency } from "../../../assets/browser-index.js";
10
10
  import { PortableShaderMaterial, createDualProbeEnvironmentLightingResources, createProductionEnvironmentLightingResources, createProductionPbrHdrPipelineFromRadiance } from "../../../rendering/index.js";
11
- import { applyCustomUniformWrites, createCustomShaderMaterial, customUniformWritesFor } from "./customMaterial.js";
11
+ import { applyCustomUniformWrites, createCustomShaderMaterial, customUniformWritesFor, syncCustomTextureRefs } from "./customMaterial.js";
12
12
  import { normalizeTextureBudgetBytes } from "../app/rendererOptions.js";
13
13
  import { AuraRuntimeError } from "./errors.js";
14
14
  import { blankProductionPrimitiveTextureState, createSdfTextPrimitiveResource } from "./textures.js";
@@ -124,6 +124,12 @@ export function createProductionInstanceColors(colors, count) {
124
124
  return values;
125
125
  }
126
126
  export function resolveProductionPrimitiveRuntimeState(entry, runtimeNodes) {
127
+ // R-26: live `texture.*` handles bound to custom-material texture2d uniforms
128
+ // keep their sampler state in sync here, with or without a runtime id.
129
+ for (const resource of entry.resources) {
130
+ if (resource.material instanceof PortableShaderMaterial)
131
+ syncCustomTextureRefs(resource.material);
132
+ }
127
133
  const runtimeId = entry.node.runtime?.id;
128
134
  if (!runtimeId)
129
135
  return { node: entry.node, visible: true };