@forgeax/engine-assets-runtime 0.1.7 → 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.
package/dist/index.d.ts CHANGED
@@ -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
@@ -869,6 +869,41 @@ function blitMipmapsSync(device, texture, descriptor) {
869
869
  }
870
870
  return recordMipmapBlit(device, texture, levels, pipeline, cache);
871
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
+ }
872
907
 
873
908
  // src/loaders/pack-artifact.ts
874
909
  function firstArtifact(input) {
@@ -3477,12 +3512,15 @@ function catalogEntriesForFence(registry) {
3477
3512
  if (record2.sourcePath === void 0) continue;
3478
3513
  const candidate = { ...record2, guid, sourcePath: record2.sourcePath };
3479
3514
  const current = byGuid.get(guid.toLowerCase());
3480
- if (current === void 0 || current.publication === void 0 && candidate.publication !== void 0) {
3515
+ if (current === void 0 || candidate.publication !== void 0) {
3481
3516
  byGuid.set(guid.toLowerCase(), candidate);
3482
3517
  }
3483
3518
  }
3484
3519
  return [...byGuid.values()];
3485
3520
  }
3521
+ function scenePublicationFenceFromRegistry(registry, outputGuid) {
3522
+ return scenePublicationFenceFromCatalog(catalogEntriesForFence(registry), outputGuid);
3523
+ }
3486
3524
  function rollbackSpawn(world, roots, allocHandles, internedHandles, sharedRefBaseline) {
3487
3525
  for (const root of new Set(roots)) {
3488
3526
  void worldDespawnScene(world, root);
@@ -8354,6 +8392,6 @@ function resolveTilesetRuntime(world, guid, lookup) {
8354
8392
  });
8355
8393
  }
8356
8394
 
8357
- 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, 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, 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 };
8358
8396
  //# sourceMappingURL=index.mjs.map
8359
8397
  //# sourceMappingURL=index.mjs.map