@forgeax/engine-assets-runtime 0.1.6 → 0.1.19

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 (35) hide show
  1. package/README.md +11 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/asset-registry.d.ts +2 -0
  4. package/dist/asset-registry.d.ts.map +1 -1
  5. package/dist/handles.d.ts +2 -0
  6. package/dist/handles.d.ts.map +1 -1
  7. package/dist/index.d.ts +4 -5
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.mjs +62 -9
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/mipmap-generator.d.ts +3 -1
  12. package/dist/mipmap-generator.d.ts.map +1 -1
  13. package/dist/registry/instantiate.d.ts +2 -0
  14. package/dist/registry/instantiate.d.ts.map +1 -1
  15. package/dist/registry/validate-material.d.ts +1 -0
  16. package/dist/registry/validate-material.d.ts.map +1 -1
  17. package/package.json +14 -14
  18. package/src/__tests__/catalog-replica.unit.test.ts +36 -0
  19. package/src/__tests__/inline-pack-loaders.unit.test.ts +37 -0
  20. package/src/__tests__/instantiate-publication-fence.unit.test.ts +59 -1
  21. package/src/__tests__/material-ready.integration.test.ts +87 -6
  22. package/src/__tests__/material-stale-generation.unit.test.ts +1 -6
  23. package/src/__tests__/resolve-asset-handle.unit.test.ts +1 -1
  24. package/src/__tests__/scriptable-pack-public-surface.test-d.ts +11 -0
  25. package/src/__tests__/validate-material.unit.test.ts +46 -1
  26. package/src/asset-registry.ts +5 -0
  27. package/src/handles.ts +7 -1
  28. package/src/index.ts +17 -3
  29. package/src/material/inspection.ts +1 -1
  30. package/src/material/loader.ts +9 -9
  31. package/src/material/runtime-shader.ts +1 -1
  32. package/src/mipmap-generator.ts +43 -1
  33. package/src/registry/instantiate.ts +14 -4
  34. package/src/registry/load-by-guid.ts +1 -1
  35. package/src/registry/validate-material.ts +96 -3
@@ -165,6 +165,8 @@ export declare class AssetRegistry {
165
165
  * cost is acceptable for save-path frequencies (OOS-2).
166
166
  */
167
167
  _guidForAsset(asset: Asset): string | undefined;
168
+ /** Public identity projection consumed by scene collection boundaries. */
169
+ guidOf(asset: Asset): string | undefined;
168
170
  /** Return the production MaterialReady/Error result for one material GUID. */
169
171
  getMaterialReadiness(guid: string): MaterialReady | MaterialLoadError | undefined;
170
172
  /** Record the canonical result produced by the production material loader. */
@@ -1 +1 @@
1
- {"version":3,"file":"asset-registry.d.ts","sourceRoot":"","sources":["../src/asset-registry.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAW,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAEL,KAAK,KAAK,EACV,KAAK,aAAa,EAClB,UAAU,EACV,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EAEb,KAAK,YAAY,EAEjB,KAAK,aAAa,EAClB,KAAK,MAAM,EAEX,KAAK,UAAU,EACf,KAAK,eAAe,EAEpB,KAAK,eAAe,EACpB,KAAK,MAAM,EAIX,KAAK,OAAO,EACZ,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EAGf,KAAK,KAAK,EAEV,KAAK,aAAa,EAClB,KAAK,SAAS,IAAI,cAAc,EAEjC,MAAM,uBAAuB,CAAC;AAS/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAgBxD,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAUvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAkB,KAAK,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAGL,KAAK,aAAa,EAGnB,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EACV,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,oCAAoC,CAAC;AAY5C,OAAO,EACL,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,aAAa,EACb,eAAe,GAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,UAAU,EACV,WAAW,EACX,cAAc,EACd,UAAU,GACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AASzF,YAAY,EAAE,KAAK,EAAE,cAAc,IAAI,SAAS,EAAE,CAAC;AA4CnD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAMH,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,uBAAuB,EAAE,kBAAkB,CAAC,CAAC;KAChF,CAAC,CAAC;CACJ;AAED,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC;AAC/C,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,CAAC;AAY3F,qBAAa,aAAa;IAmMtB,QAAQ,CAAC,cAAc,EAAE,cAAc;IAlMzC,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,kBAAkB,CAAmE;IAC7F,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAC/D,OAAO,CAAC,oBAAoB,CAA2B;IACvD,OAAO,CAAC,cAAc,CAA6B;IAWnD,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAa;IAErE,6EAA6E;IAC7E,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAS1D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiD;IAO1E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IAUxE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAM/D,YAAY,EAAE,MAAM,GAAG,SAAS,CAAa;IAC7C,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,SAAS,CAAa;IACnE,gFAAgF;IAChF,cAAc,EAAE,mBAAmB,GAAG,SAAS,CAAa;IAO5D,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAChF;IAMZ,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAa;IAChE,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAa;IAC5E,QAAQ,CAAC,aAAa,oBAA2B;IACjD,QAAQ,CAAC,SAAS,iBAAwB;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,iDAAwD;IAClF,OAAO,CAAC,oBAAoB,CAAoE;IAShG,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IACtD,gBAAgB,EAAE,MAAM,CAAK;IAC7B;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAK;IAMzB,wBAAwB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAqB;IAgB5D,OAAO,EAAE,aAAa,GAAG,IAAI,CAAQ;IAQrC,aAAa,EAAE,aAAa,CAA2C;IAqBvE,gBAAgB;IAChB,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAiB;IAEtD;;;;;;;;;;OAUG;IAUH,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IASjC,QAAQ,CAAC,eAAe,EAAE,eAAe,GAAG,SAAS,CAAC;IAUtD,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IAElD,kEAAkE;gBAMvD,cAAc,EAAE,cAAc,EACvC,eAAe,CAAC,EAAE,eAAe,GAAG,SAAS,EAI7C,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAG5C,aAAa,CAAC,EAAE,aAAa,GAAG,SAAS,EACzC,cAAc,CAAC,EAAE,mBAAmB,GAAG,SAAS,EAChD,gBAAgB,GAAE,WAAW,CAAC,MAAM,EAAE,SAAS,CAAa;IAW9D;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAwCxB;;;;;;;OAOG;IACH,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAIxC;;;;;;OAMG;IACH,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAI3C;;;;OAIG;IACH,sBAAsB,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI;IAI3D;;;;OAIG;IACH,WAAW,IAAI,aAAa,GAAG,IAAI;IAInC;;;;;;;;;OASG;IACH,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS;IAc/C,8EAA8E;IAC9E,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,iBAAiB,GAAG,SAAS;IAIjF,8EAA8E;IAC9E,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,iBAAiB,GAAG,IAAI;IAOzF;;;;;;;;;;;;;;;;;;OAkBG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKrC;;;;OAIG;IACH,uBAAuB,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAQ3D;;;;;;;;;;;;;;;;;OAiBG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IA6B9B;;;;;;;;OAQG;IACH,8BAA8B,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC;IA0C3F;;;;;;;;;;;;;OAaG;IACH,aAAa,IAAI;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE;IAqBzC;;;;;;;;;;;;OAYG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IASxC,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAgB7C,yFAAyF;IACzF,kBAAkB,IAAI,IAAI;IAS1B,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,YAAY,EAAE,EAAE,UAAU,CAAC,CAAC;IAexE,qEAAqE;IACrE,eAAe,IAAI,sBAAsB,GAAG,SAAS;IAIrD,2FAA2F;IAC3F,gBAAgB,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAOnD,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,IAAI;IAOvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,WAAW,CAAC,CAAC,SAAS,UAAU,EAC9B,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAClC,KAAK,EAAE,KAAK,EACZ,MAAM,CAAC,EAAE,YAAY,GACpB,MAAM,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IAO1D,+BAA+B,CAAC,CAAC,SAAS,UAAU,EAClD,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAClC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,YAAY,GAAG,SAAS,EAChC,mBAAmB,EAAE,qBAAqB,GACzC,MAAM,CAAC,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,0BAA0B,CAAC;IAUvF;;;;;;;OAOG;IACH,eAAe,CAAC,CAAC,SAAS,UAAU,EAClC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAClC,KAAK,EAAE,KAAK,GACX,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;IAO5D,mCAAmC,CAAC,CAAC,SAAS,UAAU,EACtD,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAClC,KAAK,EAAE,KAAK,EACZ,mBAAmB,EAAE,qBAAqB,GACzC,MAAM,CAAC,YAAY,EAAE,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,0BAA0B,CAAC;IAIzF,OAAO,CAAC,mBAAmB;IA6C3B,OAAO,CAAC,mCAAmC;IAqN3C,OAAO,CAAC,2BAA2B;IAuBnC;;;;;;;;;;;;;;;;;;OAkBG;IACH,kBAAkB,CAChB,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,KAAK,EACZ,YAAY,CAAC,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAChC,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3C,yBAAyB,UAAQ,GAChC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC;IAoMjC;;;;;;;;;;;OAWG;IACH;;;;;;;;;;OAUG;IACH,OAAO,CAAC,CAAC,GAAG,KAAK,EACf,IAAI,EAAE,SAAS,GAAG,MAAM,EACxB,KAAK,EAAE,CAAC,EACR,IAAI,CAAC,EAAE,SAAS,QAAQ,EAAE,GACzB,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC;IA6ExB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CACd,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC1B,IAAI;IAyCP;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAIrB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAYrB;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS;IAS/D;;;;;;;;;;OAUG;IACH,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM;IAU7C;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC;IAkC3E;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAsBvB;;;;;OAKG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS;IAYrC;;;;OAIG;IACH,MAAM,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,CAAC,GAAG,SAAS;IAU1D;;;;;;;;;;;;;;;OAeG;IACH,+BAA+B,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS;IAIlF;;;;;;;OAOG;IACG,UAAU,CAAC,CAAC,GAAG,KAAK,EACxB,IAAI,EAAE,SAAS,EACf,aAAa,CAAC,EAAE;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;IAIzD;;;;OAIG;IACH,iBAAiB,CACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,CAAC,EAAE,MAAM,EAAE,GAEb,KAAK,GACL,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,SAAS,GACT;QAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAA;KAAE;IAI5D;;;;OAIG;IACH,mBAAmB,CAAC,UAAU,EAAE;QAC9B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KACjB,GAAG,MAAM,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,EAAE,UAAU,CAAC;IAGjE,mEAAmE;IACnE,OAAO,IAAI,eAAe;IAC1B,uEAAuE;IACvE,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;IAczE,+EAA+E;IAC/E,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;IAI9E;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,IAAI,SAAS;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;QACtC,UAAU,CAAC,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;QACxC,QAAQ,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;QACpC,SAAS,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;QACtC,WAAW,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QAC1C,eAAe,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAClD,yBAAyB,CAAC,EAAE,YAAY,CAAC,2BAA2B,CAAC,CAAC;QACtE,SAAS,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;QACtC,SAAS,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;QACtC,WAAW,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACzB,OAAO,CAAC,EAAE,OAAO,uBAAuB,EAAE,cAAc,CAAC;QACzD,SAAS,CAAC,EAAE,OAAO,uBAAuB,EAAE,aAAa,CAAC;QAC1D,SAAS,CAAC,EAAE,OAAO,uBAAuB,EAAE,gBAAgB,CAAC;QAC7D,UAAU,CAAC,EAAE,OAAO,uBAAuB,EAAE,iBAAiB,CAAC;QAC/D;;;;;;WAMG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,EAAE;CA4FJ"}
1
+ {"version":3,"file":"asset-registry.d.ts","sourceRoot":"","sources":["../src/asset-registry.ts"],"names":[],"mappings":"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"}
package/dist/handles.d.ts CHANGED
@@ -121,6 +121,8 @@ export declare const HANDLE_NINESLICE_QUAD: Handle<'MeshAsset', 'shared'>;
121
121
  * (docs/feedbacks/2026-06-03 §6.2 Tier 0).
122
122
  */
123
123
  export declare const BUILTIN_MESH_GUIDS: ReadonlyArray<readonly [Handle<'MeshAsset', 'shared'>, string]>;
124
+ /** Resolve the stable producer GUID for one process-static builtin mesh handle. */
125
+ export declare function builtinMeshGuid(handle: Handle<string, 'shared'>): string | undefined;
124
126
  /**
125
127
  * Field names known to carry handle<> schema-vocab references (plan-strategy
126
128
  * D-4). parseScenePayload uses this allowlist to replace integer values
@@ -1 +1 @@
1
- {"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../src/handles.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEnF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEvF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEnF;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAErF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEvF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAE7F;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAU9F,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAcjD,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,CAA0B,CAAC"}
1
+ {"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../src/handles.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEnF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEvF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEnF;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAErF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAEvF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAA4B,CAAC;AAE7F;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAU9F,CAAC;AAEF,mFAAmF;AACnF,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,GAAG,SAAS,CAGpF;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAcjD,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,CAA0B,CAAC"}
package/dist/index.d.ts CHANGED
@@ -8,8 +8,8 @@ export { decodeImageBytes } from './decode-image-bytes';
8
8
  export { adaptDynamicTextureDevice, type DynamicTextureDevice, DynamicTextureStore, } from './dynamic-texture-store';
9
9
  export type { AssetRuntimeError, AssetRuntimeErrorCode, MaterialResolvedEmptyPassesDetail, SceneCollectAssetGuidUnresolvedDetail, SceneCollectEntityRefOutOfClosureDetail, } from './errors/asset';
10
10
  export { MaterialResolvedEmptyPassesError, MeshBinAssetError, MeshSsboCapacityExceededError, MeshSsboCeilingReachedError, SceneCollectAssetGuidUnresolvedError, SceneCollectEntityRefOutOfClosureError, } from './errors/asset';
11
- export { HANDLE_CUBE, HANDLE_CYLINDER, HANDLE_NINESLICE_QUAD, HANDLE_QUAD, HANDLE_SPHERE, HANDLE_TRIANGLE, } from './handles';
12
- export { createAssetRegistry } from './internal/load-asset.js';
11
+ export { builtinMeshGuid, HANDLE_CUBE, HANDLE_CYLINDER, HANDLE_NINESLICE_QUAD, HANDLE_QUAD, HANDLE_SPHERE, HANDLE_TRIANGLE, } from './handles';
12
+ export { type AssetRegistry as RuntimeAssetRegistry, type AssetRegistryResolver, createAssetRegistry, getAssetRegistryResolver, } from './internal/load-asset.js';
13
13
  export { LoaderRegistry } from './loader-registry';
14
14
  export { animationClipLoader, animationGraphLoader, audioLoader, INLINE_PACK_LOADERS, materialLoader, meshLoader, particleEffectLoader, renderPipelineLoader, sceneLoader, skeletonLoader, skinLoader, tilesetLoader, } from './loaders/inline-pack';
15
15
  export { type UnpackedMeshBin, unpackMeshBinV4, } from './loaders/mesh-bin';
@@ -18,13 +18,12 @@ export { MaterialGenerationCache } from './material/generation-cache';
18
18
  export { inspectMaterialRuntime, type MaterialRuntimeInfo } from './material/inspection';
19
19
  export { createMaterialLoader, type MaterialLoadError, type MaterialLoadErrorCode, type MaterialLoadErrorDetail, type MaterialLoaderOptions, type MaterialLoadRequest, type MaterialPublication, type MaterialReady, } from './material/loader';
20
20
  export { installMaterialReadyShaders, materialParametersToParamSchema, runtimeMaterialShaderId, } from './material/runtime-shader';
21
- export { blitMipmapsSync, getOrCreateMipmapPipeline, type MipmapBlitDevice, type MipmapShaderModuleFactory, mipmapCacheSize, numMipLevels, } from './mipmap-generator';
21
+ export { blitMipmapsSync, encodeMipmapLevel, getOrCreateMipmapPipeline, type MipmapBlitDevice, type MipmapShaderModuleFactory, mipmapCacheSize, numMipLevels, } from './mipmap-generator';
22
22
  export { type TilesetValidateOptions, validateTilesetPayload } from './payload-validate';
23
23
  export { assetLoaderPlugin, assetsPlugin, packLoaderPlugin } from './plugin';
24
24
  export { createRuntimeAssetEvidenceAdapter, type RuntimeEvidenceSource, } from './registry/asset-evidence';
25
25
  export { CatalogReplica, type CatalogReplicaSnapshot } from './registry/catalog-state';
26
- export type { PostSpawnHook, SkinJointResolver } from './registry/instantiate';
27
- export { buildSceneChildContext } from './registry/instantiate';
26
+ export { buildSceneChildContext, type PostSpawnHook, type SkinJointResolver, scenePublicationFenceFromRegistry, } from './registry/instantiate';
28
27
  export { loadMaterialReadyByGuid } from './registry/load-by-guid';
29
28
  export { compareScenePublicationFences, createScenePublicationFence, observeScenePublication, parseScenePublicationFence, SCENE_PUBLICATION_FENCE_SCHEMA, SCENE_PUBLICATION_RECOVERY_ACTIONS, type ScenePublicationFence, type ScenePublicationFenceError, type ScenePublicationFencePhase, type ScenePublicationObservation, scenePublicationFenceFromCatalog, } from './registry/scene-publication-fence';
30
29
  export { resolveAssetHandle, walkMaterialPassesOverSharedRefs } from './resolve-asset-handle';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -332,6 +332,10 @@ var BUILTIN_MESH_GUIDS = [
332
332
  // (plan-strategy §5.6 builtin-guid-ssot gate)
333
333
  [HANDLE_CYLINDER, "ab20af21-0764-55be-a7f2-b80ab3d46a0a"]
334
334
  ];
335
+ function builtinMeshGuid(handle) {
336
+ const slot = handleSlot(handle);
337
+ return BUILTIN_MESH_GUIDS.find(([candidate]) => handleSlot(candidate) === slot)?.[1];
338
+ }
335
339
  var HANDLE_FIELD_NAMES = /* @__PURE__ */ new Set([
336
340
  "assetHandle",
337
341
  "material",
@@ -865,6 +869,41 @@ function blitMipmapsSync(device, texture, descriptor) {
865
869
  }
866
870
  return recordMipmapBlit(device, texture, levels, pipeline, cache);
867
871
  }
872
+ function encodeMipmapLevel(device, pass, sourceView, format) {
873
+ const cache = deviceCache.get(device);
874
+ if (cache === void 0) {
875
+ return err(
876
+ new RhiError({
877
+ code: "rhi-not-available",
878
+ expected: "mipmap pipeline cache prewarmed for the graph device before encoding",
879
+ hint: "call prewarmMipmapPipeline(device, formats) at renderer.ready"
880
+ })
881
+ );
882
+ }
883
+ const pipeline = cache.pipelines.get(format);
884
+ if (pipeline === void 0) {
885
+ return err(
886
+ new RhiError({
887
+ code: "rhi-not-available",
888
+ expected: `mipmap pipeline for format ${format} prewarmed`,
889
+ hint: `format ${format} was not prewarmed; add it to the renderer prewarm list`
890
+ })
891
+ );
892
+ }
893
+ const bindGroup = device.createBindGroup({
894
+ label: "mipmap-graph-bind-group",
895
+ layout: cache.layout,
896
+ entries: [
897
+ { binding: 0, resource: { kind: "sampler", value: cache.sampler } },
898
+ { binding: 1, resource: { kind: "textureView", value: sourceView } }
899
+ ]
900
+ });
901
+ if (!bindGroup.ok) return bindGroup;
902
+ pass.setPipeline(pipeline);
903
+ pass.setBindGroup(0, bindGroup.value);
904
+ pass.draw(3, 1, 0, 0);
905
+ return ok$1(void 0);
906
+ }
868
907
 
869
908
  // src/loaders/pack-artifact.ts
870
909
  function firstArtifact(input) {
@@ -2006,7 +2045,7 @@ function isStandardPbrMaterialShader(shaderId) {
2006
2045
  function materialParametersToParamSchema(parameters, shaderId) {
2007
2046
  const engineInjectedTextureFields = shaderId !== void 0 && isStandardPbrMaterialShader(shaderId) ? ENGINE_INJECTED_TEXTURE_FIELDS : void 0;
2008
2047
  return parameters.flatMap((parameter) => {
2009
- if (parameter.static || parameter.type === "bool") return [];
2048
+ if (parameter.type === "bool") return [];
2010
2049
  if (parameter.type === "texture") {
2011
2050
  if (engineInjectedTextureFields?.has(parameter.name) === true) return [];
2012
2051
  return [{ name: parameter.name, type: "texture2d" }];
@@ -3473,12 +3512,15 @@ function catalogEntriesForFence(registry) {
3473
3512
  if (record2.sourcePath === void 0) continue;
3474
3513
  const candidate = { ...record2, guid, sourcePath: record2.sourcePath };
3475
3514
  const current = byGuid.get(guid.toLowerCase());
3476
- if (current === void 0 || current.publication === void 0 && candidate.publication !== void 0) {
3515
+ if (current === void 0 || candidate.publication !== void 0) {
3477
3516
  byGuid.set(guid.toLowerCase(), candidate);
3478
3517
  }
3479
3518
  }
3480
3519
  return [...byGuid.values()];
3481
3520
  }
3521
+ function scenePublicationFenceFromRegistry(registry, outputGuid) {
3522
+ return scenePublicationFenceFromCatalog(catalogEntriesForFence(registry), outputGuid);
3523
+ }
3482
3524
  function rollbackSpawn(world, roots, allocHandles, internedHandles, sharedRefBaseline) {
3483
3525
  for (const root of new Set(roots)) {
3484
3526
  void worldDespawnScene(world, root);
@@ -4079,7 +4121,7 @@ function missingCook(request) {
4079
4121
  true
4080
4122
  );
4081
4123
  }
4082
- function recordError(request, field, expected = "a complete material-cook/2 publication record") {
4124
+ function recordError(request, field, expected = "a complete material-cook/3 publication record") {
4083
4125
  return materialError(
4084
4126
  request,
4085
4127
  "material-cook-record-invalid",
@@ -4115,10 +4157,10 @@ function completeTupleField(record2) {
4115
4157
  const receipt = record2.receipt;
4116
4158
  if (!Array.isArray(receipt.sourceClosure) || receipt.sourceClosure.some((path) => typeof path !== "string" || path.length === 0) || receipt.sourceClosure.length !== record2.sourceClosure.length || receipt.sourceClosure.some((path, index) => path !== record2.sourceClosure?.[index]))
4117
4159
  return "receipt.sourceClosure";
4118
- if (typeof receipt.profile !== "string" || receipt.profile.length === 0 || typeof receipt.compilerVersion !== "string" || receipt.compilerVersion.length === 0 || typeof receipt.inputDigest !== "string" || receipt.inputDigest.length === 0 || receipt.outputDigest !== record2.artifactDigest || receipt.publicationGeneration !== record2.publicationGeneration)
4160
+ if (typeof receipt.profile !== "string" || receipt.profile.length === 0 || typeof receipt.compilerVersion !== "string" || receipt.compilerVersion.length === 0 || typeof receipt.identity.cookIdentity !== "string" || receipt.identity.cookIdentity.length === 0 || receipt.identity.artifactDigest !== record2.artifactDigest || receipt.identity.cookGeneration !== record2.publicationGeneration)
4119
4161
  return "receipt";
4120
- if (typeof receipt.layoutIdentity !== "string" || receipt.layoutIdentity.length === 0 || receipt.derivedInterface?.layoutIdentity !== receipt.layoutIdentity)
4121
- return "receipt.layoutIdentity";
4162
+ if (typeof receipt.identity.layoutIdentity !== "string" || receipt.identity.layoutIdentity.length === 0 || receipt.derivedInterface?.layoutIdentity !== receipt.identity.layoutIdentity)
4163
+ return "receipt.identity.layoutIdentity";
4122
4164
  if (typeof record2.artifact.mediaType !== "string" || record2.artifact.mediaType.length === 0 || typeof record2.artifact.path !== "string" || record2.artifact.path.length === 0)
4123
4165
  return "artifact";
4124
4166
  return void 0;
@@ -4274,7 +4316,7 @@ async function loadByGuid(registry, guid, parentContext) {
4274
4316
  return loadByGuidInternal(registry, guid, parentContext, /* @__PURE__ */ new Set());
4275
4317
  }
4276
4318
  function cookedRecordFromPayload(payload) {
4277
- if (payload.schemaVersion === "material-cook/2") return payload;
4319
+ if (payload.schemaVersion === "material-cook/3") return payload;
4278
4320
  if (payload.cooked !== null && typeof payload.cooked === "object") return payload.cooked;
4279
4321
  if (payload.record !== null && typeof payload.record === "object") return payload.record;
4280
4322
  return void 0;
@@ -5716,6 +5758,10 @@ var AssetRegistry = class {
5716
5758
  }
5717
5759
  return this._originIndex.get(asset);
5718
5760
  }
5761
+ /** Public identity projection consumed by scene collection boundaries. */
5762
+ guidOf(asset) {
5763
+ return this._guidForAsset(asset);
5764
+ }
5719
5765
  /** Return the production MaterialReady/Error result for one material GUID. */
5720
5766
  getMaterialReadiness(guid) {
5721
5767
  return this.materialReadiness.get(guid.toLowerCase());
@@ -7952,6 +7998,13 @@ var PackReader = class {
7952
7998
 
7953
7999
  // src/internal/load-asset.ts
7954
8000
  var REGISTRY_RESOLVER = /* @__PURE__ */ Symbol.for("forgeax.assets-runtime.registry-resolver");
8001
+ function getAssetRegistryResolver(registry) {
8002
+ const resolver = registry[REGISTRY_RESOLVER];
8003
+ if (resolver === void 0) {
8004
+ throw new TypeError("AssetRegistry resolver is not owned by this asset runtime");
8005
+ }
8006
+ return resolver;
8007
+ }
7955
8008
  function missing(guid) {
7956
8009
  return {
7957
8010
  code: "asset-not-found",
@@ -8250,7 +8303,7 @@ function inspectMaterialRuntime(ready) {
8250
8303
  publicationGeneration: ready.publicationGeneration,
8251
8304
  specializationKey: ready.specializationKey,
8252
8305
  artifactDigest: ready.artifactDigest,
8253
- layoutIdentity: ready.record.receipt.layoutIdentity,
8306
+ layoutIdentity: ready.record.receipt.identity.layoutIdentity,
8254
8307
  dependencies: [
8255
8308
  ...ready.record.refs.parent,
8256
8309
  ...ready.record.refs.textures,
@@ -8339,6 +8392,6 @@ function resolveTilesetRuntime(world, guid, lookup) {
8339
8392
  });
8340
8393
  }
8341
8394
 
8342
- export { AssetRegistry, BUILTIN_CUBE, BUILTIN_CYLINDER, BUILTIN_NINESLICE_QUAD, BUILTIN_QUAD, BUILTIN_SPHERE, BUILTIN_TRIANGLE, BuiltinAssetRegistry, CatalogReplica, DynamicTextureStore, HANDLE_CUBE, HANDLE_CYLINDER, HANDLE_NINESLICE_QUAD, HANDLE_QUAD, HANDLE_SPHERE, HANDLE_TRIANGLE, INLINE_PACK_LOADERS, LoaderRegistry, MaterialGenerationCache, MaterialResolvedEmptyPassesError, MeshBinAssetError, MeshSsboCapacityExceededError, MeshSsboCeilingReachedError, PACK_ARTIFACT_LOADERS, SCENE_PUBLICATION_FENCE_SCHEMA, SCENE_PUBLICATION_RECOVERY_ACTIONS, SceneCollectAssetGuidUnresolvedError, SceneCollectEntityRefOutOfClosureError, adaptDynamicTextureDevice, animationClipLoader, animationGraphLoader, assetLoaderPlugin, assetsPlugin, audioLoader, blitMipmapsSync, buildSceneChildContext, compareScenePublicationFences, createAssetRegistry, createCatalogSource, createDefaultLoaderRegistry, createMaterialLoader, createRuntimeAssetEvidenceAdapter, createScenePublicationFence, decodeImageBytes, defineAssetKind, equirectLoader, fontLoader, getOrCreateMipmapPipeline, inspectMaterialRuntime, installMaterialReadyShaders, loadMaterialReadyByGuid, materialLoader, materialParametersToParamSchema, meshLoader, mipmapCacheSize, numMipLevels, observeScenePublication, packLoaderPlugin, parseScenePayload, parseScenePublicationFence, particleEffectLoader, renderPipelineLoader as renderPipelineArtifactLoader, renderPipelineLoader, resolveAssetHandle, resolveTilesetRuntime, runtimeMaterialShaderId, sceneLoader, scenePublicationFenceFromCatalog, skeletonLoader, skinLoader, textureLoader, tilesetLoader as tilesetArtifactLoader, tilesetLoader, unpackMeshBinV4, validateTilesetPayload, walkMaterialPassesOverSharedRefs, wireDefaultLoaders };
8395
+ export { AssetRegistry, BUILTIN_CUBE, BUILTIN_CYLINDER, BUILTIN_NINESLICE_QUAD, BUILTIN_QUAD, BUILTIN_SPHERE, BUILTIN_TRIANGLE, BuiltinAssetRegistry, CatalogReplica, DynamicTextureStore, HANDLE_CUBE, HANDLE_CYLINDER, HANDLE_NINESLICE_QUAD, HANDLE_QUAD, HANDLE_SPHERE, HANDLE_TRIANGLE, INLINE_PACK_LOADERS, LoaderRegistry, MaterialGenerationCache, MaterialResolvedEmptyPassesError, MeshBinAssetError, MeshSsboCapacityExceededError, MeshSsboCeilingReachedError, PACK_ARTIFACT_LOADERS, SCENE_PUBLICATION_FENCE_SCHEMA, SCENE_PUBLICATION_RECOVERY_ACTIONS, SceneCollectAssetGuidUnresolvedError, SceneCollectEntityRefOutOfClosureError, adaptDynamicTextureDevice, animationClipLoader, animationGraphLoader, assetLoaderPlugin, assetsPlugin, audioLoader, blitMipmapsSync, buildSceneChildContext, builtinMeshGuid, compareScenePublicationFences, createAssetRegistry, createCatalogSource, createDefaultLoaderRegistry, createMaterialLoader, createRuntimeAssetEvidenceAdapter, createScenePublicationFence, decodeImageBytes, defineAssetKind, encodeMipmapLevel, equirectLoader, fontLoader, getAssetRegistryResolver, getOrCreateMipmapPipeline, inspectMaterialRuntime, installMaterialReadyShaders, loadMaterialReadyByGuid, materialLoader, materialParametersToParamSchema, meshLoader, mipmapCacheSize, numMipLevels, observeScenePublication, packLoaderPlugin, parseScenePayload, parseScenePublicationFence, particleEffectLoader, renderPipelineLoader as renderPipelineArtifactLoader, renderPipelineLoader, resolveAssetHandle, resolveTilesetRuntime, runtimeMaterialShaderId, sceneLoader, scenePublicationFenceFromCatalog, scenePublicationFenceFromRegistry, skeletonLoader, skinLoader, textureLoader, tilesetLoader as tilesetArtifactLoader, tilesetLoader, unpackMeshBinV4, validateTilesetPayload, walkMaterialPassesOverSharedRefs, wireDefaultLoaders };
8343
8396
  //# sourceMappingURL=index.mjs.map
8344
8397
  //# sourceMappingURL=index.mjs.map