@forgeax/engine-render 0.1.3 → 0.1.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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/authoring.mjs +2 -2
- package/dist/{chunk-YAKEQPWO.mjs → chunk-DJIMFYX6.mjs} +2 -2
- package/dist/{chunk-YAKEQPWO.mjs.map → chunk-DJIMFYX6.mjs.map} +1 -1
- package/dist/{chunk-33UF5SAO.mjs → chunk-F2SIOCRM.mjs} +36 -10
- package/dist/chunk-F2SIOCRM.mjs.map +1 -0
- package/dist/{chunk-QRXPSX4X.mjs → chunk-KHI6K4C6.mjs} +3 -3
- package/dist/{chunk-QRXPSX4X.mjs.map → chunk-KHI6K4C6.mjs.map} +1 -1
- package/dist/{chunk-LXNGO6AO.mjs → chunk-PORZOL2V.mjs} +3 -3
- package/dist/{chunk-LXNGO6AO.mjs.map → chunk-PORZOL2V.mjs.map} +1 -1
- package/dist/{chunk-A5QCJSNL.mjs → chunk-UOJGMDGP.mjs} +3 -3
- package/dist/{chunk-A5QCJSNL.mjs.map → chunk-UOJGMDGP.mjs.map} +1 -1
- package/dist/components/environment.d.ts +4 -5
- package/dist/components/environment.d.ts.map +1 -1
- package/dist/construct-renderer.mjs +4 -4
- package/dist/index.mjs +3 -3
- package/dist/internal.mjs +6 -6
- package/dist/renderer/material/assembly.d.ts +1 -1
- package/dist/renderer/material/assembly.d.ts.map +1 -1
- package/dist/renderer/renderer-factory.d.ts +6 -0
- package/dist/renderer/renderer-factory.d.ts.map +1 -1
- package/package.json +22 -22
- package/src/__tests__/renderer-factory-material-contract.unit.test.ts +50 -3
- package/src/components/environment.ts +4 -5
- package/src/renderer/material/assembly.ts +1 -1
- package/src/renderer/renderer-factory.ts +47 -4
- package/dist/chunk-33UF5SAO.mjs.map +0 -1
|
@@ -85,8 +85,8 @@ export declare function skyboxModeFromF32(value: number): SkyboxMode;
|
|
|
85
85
|
* handle as the Skylight entity -- two independent components sharing the
|
|
86
86
|
* same GPU resource (the internally-projected cubemap).
|
|
87
87
|
*
|
|
88
|
-
* `equirect` is
|
|
89
|
-
*
|
|
88
|
+
* `equirect` is resolved from a Vite pack-index GUID through the App-owned
|
|
89
|
+
* AssetRegistry (`AssetRegistry.load(guid, 'equirect')`). The cubemap
|
|
90
90
|
* projection is internal and driven by the render-system record arm; there
|
|
91
91
|
* is no user upload call.
|
|
92
92
|
*
|
|
@@ -98,12 +98,11 @@ export declare function skyboxModeFromF32(value: number): SkyboxMode;
|
|
|
98
98
|
* source equirectangular asset.
|
|
99
99
|
*
|
|
100
100
|
* @example Minimum spawn (defaults mode=0):
|
|
101
|
-
* //
|
|
102
|
-
* // the Skylight).
|
|
101
|
+
* // Resolve the equirect payload through the App AssetRegistry.
|
|
103
102
|
* world.spawn({ component: SkyboxBackground, data: { equirect: equirectHandle } });
|
|
104
103
|
*
|
|
105
104
|
* @example Single handle shared between Skylight (IBL) and SkyboxBackground:
|
|
106
|
-
* const hdrRes = await
|
|
105
|
+
* const hdrRes = await assets.load(guid, 'equirect');
|
|
107
106
|
* if (!hdrRes.ok) throw hdrRes.error;
|
|
108
107
|
* world.spawn({ component: Skylight, data: { equirect: hdrRes.value } });
|
|
109
108
|
* world.spawn({ component: SkyboxBackground, data: { equirect: hdrRes.value } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/components/environment.ts"],"names":[],"mappings":"AAsCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,QAAQ;;;;;EAUnB,CAAC;AAEH,eAAO,MAAM,GAAG;;;;;EAKd,CAAC;AA+BH;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC;AAEnC,yEAAyE;AACzE,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAW3D;AAED
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/components/environment.ts"],"names":[],"mappings":"AAsCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,QAAQ;;;;;EAUnB,CAAC;AAEH,eAAO,MAAM,GAAG;;;;;EAKd,CAAC;AA+BH;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC;AAEnC,yEAAyE;AACzE,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAW3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,gBAAgB;;;;EAO3B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { createRenderer as constructRenderer } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
4
|
-
import './chunk-
|
|
1
|
+
export { createRenderer as constructRenderer } from './chunk-F2SIOCRM.mjs';
|
|
2
|
+
import './chunk-KHI6K4C6.mjs';
|
|
3
|
+
import './chunk-UOJGMDGP.mjs';
|
|
4
|
+
import './chunk-DJIMFYX6.mjs';
|
|
5
5
|
//# sourceMappingURL=construct-renderer.mjs.map
|
|
6
6
|
//# sourceMappingURL=construct-renderer.mjs.map
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { MORPH_COMPUTE_WGSL, MORPH_MAX_TARGETS, createMorphFeature, createMorphReentryState, deriveMorphBounds, materialContribution, morphCullDecision, ownedRendererPlugin, renderComponentsPlugin, renderFeaturePlugin, renderPipelineContribution, rendererPlugin, samplerContribution, stepMorphReentry } from './chunk-
|
|
2
|
-
export { ACTIVE_CAMERA_KEY, MEMBERSHIP_TIMING_REASON_CODES, MEMBERSHIP_TIMING_REASON_MAPPING, MEMBERSHIP_TIMING_REASON_SCHEMA, MembershipTimingError, MeshUpdateError, PipelineError, PostProcessError, RENDER_FEATURE_VERTEX_LAYOUTS, RENDER_PHASE_CATALOG, RecoverError, RenderFeatureComputeGraphProjection, RenderFeatureGraphBufferRegistry, RenderFeatureRasterGraphProjection, SCENE_TEMPORAL_CLEAR_VALUE, SCENE_TEMPORAL_PACKED_ABI, SCENE_TEMPORAL_TARGET_FORMAT, SCENE_TEMPORAL_TARGET_SAMPLE_COUNT, TEMPORAL_MISSING_REASONS, TEMPORAL_PRODUCER_LANES, TEMPORAL_REACTIVE_REASONS, TONEMAP_POST_PROCESS_ID, URP_PIPELINE_ID, addTypedBloomPasses, addTypedCompositePostEffects, addTypedFrameObservationPass, addTypedFullscreenPass, addTypedScenePass, addTypedSkyboxPass, addTypedSsaoPasses, addTypedTonemapPass, createEnvironmentPipelineTopology, createMembershipTiming, createRenderFeatureContributionStaging, createRenderFeatureGpuWorkResolver, createRenderFeatureTarget, createRenderPipelineTarget, getActiveCamera, importRenderPipelineSurface, inspectEnvironmentGeneration, isRenderFeatureTargetHandle, observeCurrentFrame, projectFogEnvironment, projectRenderFeatureContributions, renderFeatureAttachmentResource, resolvePostColorDomainContract, resolveToneOutputContract, resolveVisibility, selectEnvironmentSource, setActiveCamera } from './chunk-
|
|
3
|
-
export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, ANTIALIAS_TAA, Atmosphere, AtmosphereCapsInsufficientError, AtmosphereCardinalityInvalidError, AtmosphereParameterInvalidError, AtmosphereProducerFailedError, AtmosphereSunMissingError, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, DirectionalLight, EnvironmentSourceConflictError, Fog, FogOwnerConflictError, FogParametersInvalidError, Instances, Layer, Materials, MeshFilter, MeshRenderer, ObservationUnavailableError, PointLight, PointLightShadow, PostProcessParams, RenderFeatureCapabilityMissingError, RenderFeatureDrawRecordingFailedError, RenderFeaturePassOrderConflictError, RenderFeaturePreparationFailedError, RenderFeaturePreparedStateMismatchError, RenderFeatureRegistrationConflictError, RenderFeatureStageFailedError, ResourceInvalidValueError, SKYBOX_MODE_CUBEMAP, SceneInstance, SkyboxBackground, Skylight, SortKey, SpawnLightInvalidBoundsError, SpotLight, SpriteInstancesCountMismatchError, SpriteInstancesMutuallyExclusiveWithInstancesError, SpriteInstancesRequiresSpriteShaderError, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, TaaCapsInsufficientError, TemporalUnsupportedError, Visibility, VisibilityStateValue, antialiasFromF32, cameraProjectionFromF32, materialTextureValue, orthographic, perspective, skyboxModeFromF32, tonemapFromF32, tonemapToU32, visibilityStateFromU32 } from './chunk-
|
|
1
|
+
export { MORPH_COMPUTE_WGSL, MORPH_MAX_TARGETS, createMorphFeature, createMorphReentryState, deriveMorphBounds, materialContribution, morphCullDecision, ownedRendererPlugin, renderComponentsPlugin, renderFeaturePlugin, renderPipelineContribution, rendererPlugin, samplerContribution, stepMorphReentry } from './chunk-PORZOL2V.mjs';
|
|
2
|
+
export { ACTIVE_CAMERA_KEY, MEMBERSHIP_TIMING_REASON_CODES, MEMBERSHIP_TIMING_REASON_MAPPING, MEMBERSHIP_TIMING_REASON_SCHEMA, MembershipTimingError, MeshUpdateError, PipelineError, PostProcessError, RENDER_FEATURE_VERTEX_LAYOUTS, RENDER_PHASE_CATALOG, RecoverError, RenderFeatureComputeGraphProjection, RenderFeatureGraphBufferRegistry, RenderFeatureRasterGraphProjection, SCENE_TEMPORAL_CLEAR_VALUE, SCENE_TEMPORAL_PACKED_ABI, SCENE_TEMPORAL_TARGET_FORMAT, SCENE_TEMPORAL_TARGET_SAMPLE_COUNT, TEMPORAL_MISSING_REASONS, TEMPORAL_PRODUCER_LANES, TEMPORAL_REACTIVE_REASONS, TONEMAP_POST_PROCESS_ID, URP_PIPELINE_ID, addTypedBloomPasses, addTypedCompositePostEffects, addTypedFrameObservationPass, addTypedFullscreenPass, addTypedScenePass, addTypedSkyboxPass, addTypedSsaoPasses, addTypedTonemapPass, createEnvironmentPipelineTopology, createMembershipTiming, createRenderFeatureContributionStaging, createRenderFeatureGpuWorkResolver, createRenderFeatureTarget, createRenderPipelineTarget, getActiveCamera, importRenderPipelineSurface, inspectEnvironmentGeneration, isRenderFeatureTargetHandle, observeCurrentFrame, projectFogEnvironment, projectRenderFeatureContributions, renderFeatureAttachmentResource, resolvePostColorDomainContract, resolveToneOutputContract, resolveVisibility, selectEnvironmentSource, setActiveCamera } from './chunk-UOJGMDGP.mjs';
|
|
3
|
+
export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, ANTIALIAS_TAA, Atmosphere, AtmosphereCapsInsufficientError, AtmosphereCardinalityInvalidError, AtmosphereParameterInvalidError, AtmosphereProducerFailedError, AtmosphereSunMissingError, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, DirectionalLight, EnvironmentSourceConflictError, Fog, FogOwnerConflictError, FogParametersInvalidError, Instances, Layer, Materials, MeshFilter, MeshRenderer, ObservationUnavailableError, PointLight, PointLightShadow, PostProcessParams, RenderFeatureCapabilityMissingError, RenderFeatureDrawRecordingFailedError, RenderFeaturePassOrderConflictError, RenderFeaturePreparationFailedError, RenderFeaturePreparedStateMismatchError, RenderFeatureRegistrationConflictError, RenderFeatureStageFailedError, ResourceInvalidValueError, SKYBOX_MODE_CUBEMAP, SceneInstance, SkyboxBackground, Skylight, SortKey, SpawnLightInvalidBoundsError, SpotLight, SpriteInstancesCountMismatchError, SpriteInstancesMutuallyExclusiveWithInstancesError, SpriteInstancesRequiresSpriteShaderError, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, TaaCapsInsufficientError, TemporalUnsupportedError, Visibility, VisibilityStateValue, antialiasFromF32, cameraProjectionFromF32, materialTextureValue, orthographic, perspective, skyboxModeFromF32, tonemapFromF32, tonemapToU32, visibilityStateFromU32 } from './chunk-DJIMFYX6.mjs';
|
|
4
4
|
//# sourceMappingURL=index.mjs.map
|
|
5
5
|
//# sourceMappingURL=index.mjs.map
|
package/dist/internal.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import './chunk-JMSB7AR4.mjs';
|
|
2
|
-
export { EngineEnvironmentError, GpuResourceStore, HealthListenerRegistry, LostListenerRegistry, RhiErrorListenerRegistry, SHADOW_PROBE_WGSL, assembleMaterialProjection, buildPipelineForMaterialShader, createEngineMetrics, createMaterialAssetService, createMeshSsboGrowController, createRenderer, createSkinPaletteAllocator, deriveRecoverable, deriveStorageBufferCeiling, loadRhiPack, resolveMaterialShaderBindingContract, resolveMaterialShaderVariantSet, resolveMaterialShaderVertexInputContract, selectHdrpPbrPrewarmVariants, selectPipelineLayoutForVariant } from './chunk-
|
|
3
|
-
export { _peekPerCellStreamingLayerKeys, computeChunkStreamBounds, effectivePivotYForTilemapFlip, encodeTilemapLayerValue, resetTilemapChunkExtractCache, resetTilemapDerivedEntityTracker, resolveTilesetRuntime, tilemapChunkExtractSystem } from './chunk-
|
|
4
|
-
export { MORPH_COMPUTE_WGSL, MORPH_MAX_TARGETS, collectSubtree, createMorphFeature, createMorphReentryState, deriveMorphBounds, materialContribution, morphCullDecision, ownedRendererPlugin, postSpawnResolveJoints, renderComponentsPlugin, renderFeaturePlugin, renderPipelineContribution, rendererPlugin, samplerContribution, stepMorphReentry } from './chunk-
|
|
5
|
-
import { MESH_PER_ENTITY_STRIDE } from './chunk-
|
|
6
|
-
export { ACTIVE_CAMERA_KEY, ATMOSPHERE_BACKGROUND_PARAMS_SLOT, ATMOSPHERE_PARAMS_BYTES, ATMOSPHERE_PARAMS_SLOT_BYTES, ATMOSPHERE_PARAMS_SLOT_COUNT, ATMOSPHERE_PRODUCER_KINDS, ATMOSPHERE_PRODUCER_PASS_COUNT, ATMOSPHERE_SUN_DISC_PARAMS_SLOT, BRDF_LUT_SIZE, BYTES_PER_LIGHT_SLOT, CAPTURE_VIEW_PROJS, CLUSTER_GRID_STRIDE_U32, CUBEMAP_FACE_VERTICES, CascadeVolumeSetBuilder, DEFAULT_CLUSTER_GRID, DEFERRED_COLOR_FORMATS, DEPTH_MIN_PARAMS_BYTE_SIZE, EMPTY_TEMPORAL_COVERAGE, FALLBACK_BYTES_PER_ROW, FOLDED_DRAWS_METRIC_KEY, FOLD_UNIFORM_INSTANCE_CAP, GPU_SCENE_LAYOUTS, GPU_SCENE_PRIMITIVE_FLAGS, GPU_SCENE_SCHEMAS, GPU_SCENE_WGSL, GpuBuffer, GpuScene, GpuTexture, HDRP_PIPELINE_ID, HDRP_UNIFORM_LIGHT_CAPACITY, RhiError as HdrpBufferAllocError, HdrpInstallError, INJECTION_KIND_LENGTHS, INSTANCE_UBO_FULL_ARRAY_BYTES, IRRADIANCE_SIZE, IblCapabilityLossError, KNOWN_PASS_KINDS, LIGHTSLOT_LAYOUT, LIGHT_ARRAY_HEADER_BYTES, LIGHT_ARRAY_MAX_SLOTS, LIGHT_INDEX_LIST_CAPACITY, LightSlotKind, MATERIAL_PER_ENTITY_STRIDE, MAX_LIGHTS, MAX_UNIFORM_INSTANCES, MEMBERSHIP_TIMING_REASON_CODES, MEMBERSHIP_TIMING_REASON_MAPPING, MEMBERSHIP_TIMING_REASON_SCHEMA, MESH_PER_ENTITY_STRIDE, MESH_SSBO_BYTES, MESH_UBO_FULL_ARRAY_BYTES, MembershipTimingError, MeshUpdateError, POINT_LIGHT_SHADOW_LAYER_SENTINEL, POINT_LIGHT_STD430_BYTES, POINT_SHADOW_VIEW_SLOT_COUNT, PREFILTER_MIP_LEVELS, PREFILTER_SIZE, PersistentRenderScene, PipelineError, PipelineSpecError, PostProcessError, RENDER_FEATURE_VERTEX_LAYOUTS, RENDER_PHASE_CATALOG, RecoverError, RenderFeatureComputeGraphProjection, RenderFeatureGraphBufferRegistry, RenderFeatureRasterGraphProjection, RenderSceneProjection, SCENE_TEMPORAL_CLEAR_VALUE, SCENE_TEMPORAL_PACKED_ABI, SCENE_TEMPORAL_TARGET_FORMAT, SCENE_TEMPORAL_TARGET_SAMPLE_COUNT, SHADOW_ATLAS_DEFAULT_FACE_SIZE, SHADOW_ATLAS_DEFAULT_LAYERS, SKIN_MATERIAL_SHADER_ID, SPEC_CONST_TABLE, SPOT_LIGHT_SHADOW_TILE_SENTINEL, SPOT_LIGHT_STD430_BYTES, SPRITE_PASS_PER_INSTANCE_REGION_VARIANT_SET, SSAO_DEFAULT_BIAS, SSAO_DEFAULT_INTENSITY, SSAO_DEFAULT_RADIUS, SSAO_KERNEL_SAMPLE_COUNT, SSAO_UNIFORM_BYTES, SSAO_UNIFORM_INTENSITY_OFFSET, STORAGE_BUFFER_MIN_REQUIRED, ShadowAtlas, TEMPORAL_JITTER_SAMPLE_COUNT, TEMPORAL_MISSING_REASONS, TEMPORAL_PRODUCER_LANES, TEMPORAL_REACTIVE_REASONS, TONEMAP_POST_PROCESS_ID, TaaHistoryStore, TemporalFrameTransaction, URP_PIPELINE_ID, VIEW_UNIFORM_BUFFER_SIZE, VIEW_UNIFORM_BYTES, VIEW_UNIFORM_SLOT_STRIDE, ZERO_CAMERA_CLEAR_FALLBACK, acquireSwapChainTarget, addBloomPasses, addEnvironmentCompositionPass, addEnvironmentProducerPasses, addFullscreenPass, addPointShadowPass, addScenePass, addShadowPass, addSkyboxPass, addSpotShadowPass, addSsaoPasses, addTonemapPass, addTypedBloomPasses, addTypedCompositePostEffects, addTypedFrameObservationPass, addTypedFullscreenPass, addTypedScenePass, addTypedSkyboxPass, addTypedSsaoPasses, addTypedTonemapPass, appendInjection, applyParamSnapshotToUbo, assembleMaterialWithSkylightEntries, assertStorageBufferCap, beginEnvironmentGeneration, bin, buildBeginRenderPassDescriptor, buildBindGroupLayoutDescriptor, buildCascadeLocalCacheTokens, buildFoldDispatchPlan, buildFullscreenPostProcessPass, buildLinearLdrMaterialSpecTable, buildMatchedRenderableIndices, buildPbrMaterialUserRegionEntries, buildPbrPipelineLayouts, buildPbrSkinLayouts, buildPbrViewBglEntries, buildPerSubmeshMaterialBg, buildPipelineDescriptor, buildPointShadowMatrices, buildRenderVisibilityViewDescriptors, buildSpecConstTable, buildUnlitMaterialBgl, buildUnlitMaterialBindGroupEntries, cacheKeyOf, calculateSphereClusterBounds, floatBits as canonicalEnvironmentFloatBits, clampPcfKernelSize, cleanPerEntityCache, clearIblCacheForDevice, clusterSpaceObjectAabb, colorFormatsForPassKind, computeDirectionalCsm, computeInvRangeSquared, computeProjectionMatrix, computeSplitLdrSprite, computeViewMatrix, configureSurface, createClusterBinScratch, createDebugDrawOnReady, createDerivedMaterialSlotPlan, createEnvironmentGenerationState, createEnvironmentPipelineTopology, createEnvironmentProducerGraph, createFullscreenBindGroup, createHdrpBindGroupLayoutDescriptor, createHdrpClusterMembershipBindGroup, createHdrpClusterMembershipBindGroupLayoutDescriptor, createHdrpUnifiedBindGroup, createIblPipelines, createMembershipTiming, createRenderFeatureContributionStaging, createRenderFeatureGpuWorkResolver, createRenderFeatureGraphicsPrepare, createRenderFeatureHost, createRenderFeatureTarget, createRenderPipelineTarget, createRenderSystem, createSkylightFallback, defaultMaterialSnapshot, defaultTransformSnapshot, defaultViewForUserRegionField, degToCos, deriveBglShapeFromShader, deriveCullingRadius, deriveEnvironmentBundleDescriptors, deriveGpuSceneTableLayout, deriveMipUploadLayout, deriveRenderDataCubemap, deriveRenderDataMesh, deriveRenderDataTexture, deriveTextureExtent, derivedParamSchema, detectNineSliceScaleTooSmall, directionalCascadeAtlasSize, directionalCascadeRasterViewport, disposeInstanceBuffers, disposeTransientInstanceBuffers, driveLazyEquirectProjection, encodeDirectionalShadowPass, encodeFullscreenPass, encodeMainPass, encodePointShadowPass, encodeSkyboxPass, encodeSpotShadowPass, ensureMeshSsboCapacity, entityHasTransparentSubmesh, entryHasDepthRead, environmentBundleBytes, environmentClearColor, environmentConsumerSnapshot, environmentGenerationDirty, environmentGenerationEnabled, environmentSignature, evaluateDirectionalShadowCache, evaluateFoldBucketUniformCap, executeEnvironmentProducerTransaction, extractCameraSnapshots, extractEntryResourceHandle, extractFrame, extractFrames, extractRenderableEntity, filterDispatchBySelector, foldDispatchBuckets, generateSsaoKernel, generateSsaoNoise, getActiveCamera, getIblComposedShaders, getIblWgslSource, getOrBuildPipeline, getOrCreateFromChain, getOrCreateHdrpBuffers, getOrCreateIblCache, getOrCreatePerEntity, getOrCreateSsaoBuffers, getOrCreateSsaoFallbackTexture, getRenderFeatureGraphState, getSsaoParameters, gpuSceneFieldOffset, gpuSceneWgsl, graphExecutionPhase, hasIblCache, hdrpPipeline, iblCacheSize, importEnvironmentGraphTargets, importEnvironmentResources, importRenderPipelineSurface, incrementFoldedDrawsMetric, inspectEnvironmentGeneration, interleaveSpriteInstanceBuffer, isEntityFullyTransparent, isGpuMembershipProducerAvailable, isLitMaterialSnapshot, isMaterialBgAssemblyCacheHit, isMeshSsboDevMode, isRenderFeatureTargetHandle, isStandardPbrMaterialShader, makeZeroCameraFallbackSnapshot, matchPass, materialBindingByteLength, materialUboFloatView, mergeSkylightIntoMaterialBgl, ndcPositionToCluster, observeCurrentFrame, packClusterUniform, packLightArrayHeader, packLightSlot, packPointLight, packSpotLight, packTemporalInstanceTransforms, passKindPolicyTable, pointShadowViewOffset, prepareExtractContext, projectFogEnvironment, projectMaterialPipeline, projectRenderFeatureContributions, projectTemporalView, pssmSplit, publishEnvironmentGeneration, rasterItemKey, recordBloomBlurHPass, recordBloomBlurVPass, recordBloomBrightPass, recordBloomCompositePass, recordFrame, recordFxaaPass, recordMainPass, recordPointShadowPass, recordRenderFeatureGraphicsPass, recordResolvedRenderFeatureGraphicsPass, recordShadowPass, recordSkyboxPass, recordSpotShadowPass, recordSsaoBlurPass, recordSsaoCalcPass, refreshExtractedFrameCameras, refreshExtractedFrameLights, refreshExtractedFramePostProcessParams, refreshRenderableMaterialSnapshot, releaseDebugDraw, renderFeatureAttachmentResource, renderStateHash, reportRenderFeatureGraphError, residentTextureView, resolveDepthOnlyView, resolveMaterialSnapshot, resolveMeshMaterialBindings, resolvePostColorDomainContract, resolveShadowMapSize, resolveSpotShadowMapSize, resolveSsaoParameters, resolveSurfaceFormatPair, resolveToneOutputContract, resolveVisibility, routeMaterialPipeline, runIblPrecompute, runRenderFeatureFrame, selectActiveCameraIndex, selectCookedMaterialPipelineForRender, selectEnvironmentSource, selectFog, selectGeometryPipeline, selectLazyEquirectHandle, selectMaterialDrawForRender, selectMaterialPipelineForRender, selectPasses, selectSpritePassVariantSet, selectSwapChainFormat, setActiveCamera, setIblComposedShaders, setIblWgslSource, setMeshSsboDevModeProbeForTests, settlePreparedGraphicsCompletion, snapshotSubmittedTemporalView, sortDispatchByQueue, specsEqual, spriteInstancesCacheHit, summarizeTemporalCoverage, temporalInstanceUploadByteLength, temporalJitterSample, temporalViewId, updateMaterialRuntimeValues, uploadMeshSsboBatch, urpPipeline, userRegionTextureFieldOrder, validateClusterGrid, validateDirection, validateDirectionalLightData, validatePointLightData, validatePointLightShadowData, validateRenderFeatureGraphicsPass, validateSpec, validateSpotLightData, variantSetFromDefines, videoTextureView, viewZToZSlice, warnMultiLightDirectional, warnMultiLightPoint, warnMultiLightSpot, warnMultiSkybox, warnMultiSkylight, worldEntityKey, writeDerivedMaterialPayload, writeMaterialSnapshotPayload, writeViewUbo } from './chunk-
|
|
7
|
-
export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, ANTIALIAS_TAA, Atmosphere, AtmosphereCapsInsufficientError, AtmosphereCardinalityInvalidError, AtmosphereParameterInvalidError, AtmosphereProducerFailedError, AtmosphereSunMissingError, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, DirectionalLight, EnvironmentSourceConflictError, EquirectProjectionFailedError, Fog, FogOwnerConflictError, FogParametersInvalidError, GbufferAttachmentCountMismatchError, GbufferRtAllocFailedError, GlyphText, HdrpCapsInsufficientError, HdrpDeferredCapsInsufficientError, HdrpIndexListOverflowError, HdrpLightBudgetExceededError, Instances, Layer, MaterialSkinAttrMissingError, Materials, MeshFilter, MeshRenderer, MeshSsboCapacityExceededError, MeshSsboCeilingReachedError, ObservationUnavailableError, PointLight, PointLightShadow, PointShadowAtlasBoundsViolationError, PointShadowAtlasUninitializedError, PostProcessParams, RenderFeatureCapabilityMissingError, RenderFeatureDrawRecordingFailedError, RenderFeaturePassOrderConflictError, RenderFeaturePreparationFailedError, RenderFeaturePreparedStateMismatchError, RenderFeatureRegistrationConflictError, RenderFeatureStageFailedError, ResourceInvalidValueError, SKYBOX_MODE_CUBEMAP, SPRITE_PLAYBACK_MODE_CLAMP, SPRITE_PLAYBACK_MODE_LOOP, SPRITE_PREMULTIPLIED_ALPHA_BLEND, SceneInstance, ShadowInvalidConfigError, SkinMaterialMismatchError, SkinPaletteOverflowError, SkyboxBackground, Skylight, SortKey, SpawnLightInvalidBoundsError, SpotLight, SpriteAnimation, SpriteInstances, SpriteInstancesCountMismatchError, SpriteInstancesMutuallyExclusiveWithInstancesError, SpriteInstancesRequiresSpriteShaderError, SpriteRegionOverride, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, TRANSPARENT_SORT_CONFIG_KEY, TRANSPARENT_SORT_MODE_DISTANCE, TRANSPARENT_SORT_MODE_LAYER_Y, TRANSPARENT_SORT_MODE_LAYER_YZ, TRANSPARENT_SORT_MODE_LAYER_Z, TaaCapsInsufficientError, TemporalUnsupportedError, TileLayer, Tilemap, VertexStorageBufferUnavailableError, VideoUploadUnsupportedError, Visibility, VisibilityStateValue, antialiasFromF32, bloomEnabledFromF32, cameraProjectionFromF32, decodeSortScope, encodeSortScope, getTransparentSortConfig, glyphTextLayoutSystem, markTileLayerDirty, materialDrawDiagnostic, materialTextureValue, orthographic, perspective, resetGlyphBakeCache, setTransparentSortConfig, skyboxModeFromF32, spritePlaybackModeFromU32, tonemapFromF32, tonemapToU32, visibilityStateFromU32 } from './chunk-
|
|
2
|
+
export { EngineEnvironmentError, GpuResourceStore, HealthListenerRegistry, LostListenerRegistry, RhiErrorListenerRegistry, SHADOW_PROBE_WGSL, assembleMaterialProjection, buildPipelineForMaterialShader, createEngineMetrics, createMaterialAssetService, createMeshSsboGrowController, createRenderer, createSkinPaletteAllocator, deriveRecoverable, deriveStorageBufferCeiling, loadRhiPack, resolveMaterialShaderBindingContract, resolveMaterialShaderVariantSet, resolveMaterialShaderVertexInputContract, selectHdrpPbrPrewarmVariants, selectNoColorPbrVariant, selectPipelineLayoutForVariant } from './chunk-F2SIOCRM.mjs';
|
|
3
|
+
export { _peekPerCellStreamingLayerKeys, computeChunkStreamBounds, effectivePivotYForTilemapFlip, encodeTilemapLayerValue, resetTilemapChunkExtractCache, resetTilemapDerivedEntityTracker, resolveTilesetRuntime, tilemapChunkExtractSystem } from './chunk-KHI6K4C6.mjs';
|
|
4
|
+
export { MORPH_COMPUTE_WGSL, MORPH_MAX_TARGETS, collectSubtree, createMorphFeature, createMorphReentryState, deriveMorphBounds, materialContribution, morphCullDecision, ownedRendererPlugin, postSpawnResolveJoints, renderComponentsPlugin, renderFeaturePlugin, renderPipelineContribution, rendererPlugin, samplerContribution, stepMorphReentry } from './chunk-PORZOL2V.mjs';
|
|
5
|
+
import { MESH_PER_ENTITY_STRIDE } from './chunk-UOJGMDGP.mjs';
|
|
6
|
+
export { ACTIVE_CAMERA_KEY, ATMOSPHERE_BACKGROUND_PARAMS_SLOT, ATMOSPHERE_PARAMS_BYTES, ATMOSPHERE_PARAMS_SLOT_BYTES, ATMOSPHERE_PARAMS_SLOT_COUNT, ATMOSPHERE_PRODUCER_KINDS, ATMOSPHERE_PRODUCER_PASS_COUNT, ATMOSPHERE_SUN_DISC_PARAMS_SLOT, BRDF_LUT_SIZE, BYTES_PER_LIGHT_SLOT, CAPTURE_VIEW_PROJS, CLUSTER_GRID_STRIDE_U32, CUBEMAP_FACE_VERTICES, CascadeVolumeSetBuilder, DEFAULT_CLUSTER_GRID, DEFERRED_COLOR_FORMATS, DEPTH_MIN_PARAMS_BYTE_SIZE, EMPTY_TEMPORAL_COVERAGE, FALLBACK_BYTES_PER_ROW, FOLDED_DRAWS_METRIC_KEY, FOLD_UNIFORM_INSTANCE_CAP, GPU_SCENE_LAYOUTS, GPU_SCENE_PRIMITIVE_FLAGS, GPU_SCENE_SCHEMAS, GPU_SCENE_WGSL, GpuBuffer, GpuScene, GpuTexture, HDRP_PIPELINE_ID, HDRP_UNIFORM_LIGHT_CAPACITY, RhiError as HdrpBufferAllocError, HdrpInstallError, INJECTION_KIND_LENGTHS, INSTANCE_UBO_FULL_ARRAY_BYTES, IRRADIANCE_SIZE, IblCapabilityLossError, KNOWN_PASS_KINDS, LIGHTSLOT_LAYOUT, LIGHT_ARRAY_HEADER_BYTES, LIGHT_ARRAY_MAX_SLOTS, LIGHT_INDEX_LIST_CAPACITY, LightSlotKind, MATERIAL_PER_ENTITY_STRIDE, MAX_LIGHTS, MAX_UNIFORM_INSTANCES, MEMBERSHIP_TIMING_REASON_CODES, MEMBERSHIP_TIMING_REASON_MAPPING, MEMBERSHIP_TIMING_REASON_SCHEMA, MESH_PER_ENTITY_STRIDE, MESH_SSBO_BYTES, MESH_UBO_FULL_ARRAY_BYTES, MembershipTimingError, MeshUpdateError, POINT_LIGHT_SHADOW_LAYER_SENTINEL, POINT_LIGHT_STD430_BYTES, POINT_SHADOW_VIEW_SLOT_COUNT, PREFILTER_MIP_LEVELS, PREFILTER_SIZE, PersistentRenderScene, PipelineError, PipelineSpecError, PostProcessError, RENDER_FEATURE_VERTEX_LAYOUTS, RENDER_PHASE_CATALOG, RecoverError, RenderFeatureComputeGraphProjection, RenderFeatureGraphBufferRegistry, RenderFeatureRasterGraphProjection, RenderSceneProjection, SCENE_TEMPORAL_CLEAR_VALUE, SCENE_TEMPORAL_PACKED_ABI, SCENE_TEMPORAL_TARGET_FORMAT, SCENE_TEMPORAL_TARGET_SAMPLE_COUNT, SHADOW_ATLAS_DEFAULT_FACE_SIZE, SHADOW_ATLAS_DEFAULT_LAYERS, SKIN_MATERIAL_SHADER_ID, SPEC_CONST_TABLE, SPOT_LIGHT_SHADOW_TILE_SENTINEL, SPOT_LIGHT_STD430_BYTES, SPRITE_PASS_PER_INSTANCE_REGION_VARIANT_SET, SSAO_DEFAULT_BIAS, SSAO_DEFAULT_INTENSITY, SSAO_DEFAULT_RADIUS, SSAO_KERNEL_SAMPLE_COUNT, SSAO_UNIFORM_BYTES, SSAO_UNIFORM_INTENSITY_OFFSET, STORAGE_BUFFER_MIN_REQUIRED, ShadowAtlas, TEMPORAL_JITTER_SAMPLE_COUNT, TEMPORAL_MISSING_REASONS, TEMPORAL_PRODUCER_LANES, TEMPORAL_REACTIVE_REASONS, TONEMAP_POST_PROCESS_ID, TaaHistoryStore, TemporalFrameTransaction, URP_PIPELINE_ID, VIEW_UNIFORM_BUFFER_SIZE, VIEW_UNIFORM_BYTES, VIEW_UNIFORM_SLOT_STRIDE, ZERO_CAMERA_CLEAR_FALLBACK, acquireSwapChainTarget, addBloomPasses, addEnvironmentCompositionPass, addEnvironmentProducerPasses, addFullscreenPass, addPointShadowPass, addScenePass, addShadowPass, addSkyboxPass, addSpotShadowPass, addSsaoPasses, addTonemapPass, addTypedBloomPasses, addTypedCompositePostEffects, addTypedFrameObservationPass, addTypedFullscreenPass, addTypedScenePass, addTypedSkyboxPass, addTypedSsaoPasses, addTypedTonemapPass, appendInjection, applyParamSnapshotToUbo, assembleMaterialWithSkylightEntries, assertStorageBufferCap, beginEnvironmentGeneration, bin, buildBeginRenderPassDescriptor, buildBindGroupLayoutDescriptor, buildCascadeLocalCacheTokens, buildFoldDispatchPlan, buildFullscreenPostProcessPass, buildLinearLdrMaterialSpecTable, buildMatchedRenderableIndices, buildPbrMaterialUserRegionEntries, buildPbrPipelineLayouts, buildPbrSkinLayouts, buildPbrViewBglEntries, buildPerSubmeshMaterialBg, buildPipelineDescriptor, buildPointShadowMatrices, buildRenderVisibilityViewDescriptors, buildSpecConstTable, buildUnlitMaterialBgl, buildUnlitMaterialBindGroupEntries, cacheKeyOf, calculateSphereClusterBounds, floatBits as canonicalEnvironmentFloatBits, clampPcfKernelSize, cleanPerEntityCache, clearIblCacheForDevice, clusterSpaceObjectAabb, colorFormatsForPassKind, computeDirectionalCsm, computeInvRangeSquared, computeProjectionMatrix, computeSplitLdrSprite, computeViewMatrix, configureSurface, createClusterBinScratch, createDebugDrawOnReady, createDerivedMaterialSlotPlan, createEnvironmentGenerationState, createEnvironmentPipelineTopology, createEnvironmentProducerGraph, createFullscreenBindGroup, createHdrpBindGroupLayoutDescriptor, createHdrpClusterMembershipBindGroup, createHdrpClusterMembershipBindGroupLayoutDescriptor, createHdrpUnifiedBindGroup, createIblPipelines, createMembershipTiming, createRenderFeatureContributionStaging, createRenderFeatureGpuWorkResolver, createRenderFeatureGraphicsPrepare, createRenderFeatureHost, createRenderFeatureTarget, createRenderPipelineTarget, createRenderSystem, createSkylightFallback, defaultMaterialSnapshot, defaultTransformSnapshot, defaultViewForUserRegionField, degToCos, deriveBglShapeFromShader, deriveCullingRadius, deriveEnvironmentBundleDescriptors, deriveGpuSceneTableLayout, deriveMipUploadLayout, deriveRenderDataCubemap, deriveRenderDataMesh, deriveRenderDataTexture, deriveTextureExtent, derivedParamSchema, detectNineSliceScaleTooSmall, directionalCascadeAtlasSize, directionalCascadeRasterViewport, disposeInstanceBuffers, disposeTransientInstanceBuffers, driveLazyEquirectProjection, encodeDirectionalShadowPass, encodeFullscreenPass, encodeMainPass, encodePointShadowPass, encodeSkyboxPass, encodeSpotShadowPass, ensureMeshSsboCapacity, entityHasTransparentSubmesh, entryHasDepthRead, environmentBundleBytes, environmentClearColor, environmentConsumerSnapshot, environmentGenerationDirty, environmentGenerationEnabled, environmentSignature, evaluateDirectionalShadowCache, evaluateFoldBucketUniformCap, executeEnvironmentProducerTransaction, extractCameraSnapshots, extractEntryResourceHandle, extractFrame, extractFrames, extractRenderableEntity, filterDispatchBySelector, foldDispatchBuckets, generateSsaoKernel, generateSsaoNoise, getActiveCamera, getIblComposedShaders, getIblWgslSource, getOrBuildPipeline, getOrCreateFromChain, getOrCreateHdrpBuffers, getOrCreateIblCache, getOrCreatePerEntity, getOrCreateSsaoBuffers, getOrCreateSsaoFallbackTexture, getRenderFeatureGraphState, getSsaoParameters, gpuSceneFieldOffset, gpuSceneWgsl, graphExecutionPhase, hasIblCache, hdrpPipeline, iblCacheSize, importEnvironmentGraphTargets, importEnvironmentResources, importRenderPipelineSurface, incrementFoldedDrawsMetric, inspectEnvironmentGeneration, interleaveSpriteInstanceBuffer, isEntityFullyTransparent, isGpuMembershipProducerAvailable, isLitMaterialSnapshot, isMaterialBgAssemblyCacheHit, isMeshSsboDevMode, isRenderFeatureTargetHandle, isStandardPbrMaterialShader, makeZeroCameraFallbackSnapshot, matchPass, materialBindingByteLength, materialUboFloatView, mergeSkylightIntoMaterialBgl, ndcPositionToCluster, observeCurrentFrame, packClusterUniform, packLightArrayHeader, packLightSlot, packPointLight, packSpotLight, packTemporalInstanceTransforms, passKindPolicyTable, pointShadowViewOffset, prepareExtractContext, projectFogEnvironment, projectMaterialPipeline, projectRenderFeatureContributions, projectTemporalView, pssmSplit, publishEnvironmentGeneration, rasterItemKey, recordBloomBlurHPass, recordBloomBlurVPass, recordBloomBrightPass, recordBloomCompositePass, recordFrame, recordFxaaPass, recordMainPass, recordPointShadowPass, recordRenderFeatureGraphicsPass, recordResolvedRenderFeatureGraphicsPass, recordShadowPass, recordSkyboxPass, recordSpotShadowPass, recordSsaoBlurPass, recordSsaoCalcPass, refreshExtractedFrameCameras, refreshExtractedFrameLights, refreshExtractedFramePostProcessParams, refreshRenderableMaterialSnapshot, releaseDebugDraw, renderFeatureAttachmentResource, renderStateHash, reportRenderFeatureGraphError, residentTextureView, resolveDepthOnlyView, resolveMaterialSnapshot, resolveMeshMaterialBindings, resolvePostColorDomainContract, resolveShadowMapSize, resolveSpotShadowMapSize, resolveSsaoParameters, resolveSurfaceFormatPair, resolveToneOutputContract, resolveVisibility, routeMaterialPipeline, runIblPrecompute, runRenderFeatureFrame, selectActiveCameraIndex, selectCookedMaterialPipelineForRender, selectEnvironmentSource, selectFog, selectGeometryPipeline, selectLazyEquirectHandle, selectMaterialDrawForRender, selectMaterialPipelineForRender, selectPasses, selectSpritePassVariantSet, selectSwapChainFormat, setActiveCamera, setIblComposedShaders, setIblWgslSource, setMeshSsboDevModeProbeForTests, settlePreparedGraphicsCompletion, snapshotSubmittedTemporalView, sortDispatchByQueue, specsEqual, spriteInstancesCacheHit, summarizeTemporalCoverage, temporalInstanceUploadByteLength, temporalJitterSample, temporalViewId, updateMaterialRuntimeValues, uploadMeshSsboBatch, urpPipeline, userRegionTextureFieldOrder, validateClusterGrid, validateDirection, validateDirectionalLightData, validatePointLightData, validatePointLightShadowData, validateRenderFeatureGraphicsPass, validateSpec, validateSpotLightData, variantSetFromDefines, videoTextureView, viewZToZSlice, warnMultiLightDirectional, warnMultiLightPoint, warnMultiLightSpot, warnMultiSkybox, warnMultiSkylight, worldEntityKey, writeDerivedMaterialPayload, writeMaterialSnapshotPayload, writeViewUbo } from './chunk-UOJGMDGP.mjs';
|
|
7
|
+
export { ANTIALIAS_FXAA, ANTIALIAS_MSAA, ANTIALIAS_NONE, ANTIALIAS_TAA, Atmosphere, AtmosphereCapsInsufficientError, AtmosphereCardinalityInvalidError, AtmosphereParameterInvalidError, AtmosphereProducerFailedError, AtmosphereSunMissingError, BLOOM_DISABLED, BLOOM_ENABLED, CAMERA_PROJECTION_ORTHOGRAPHIC, CAMERA_PROJECTION_PERSPECTIVE, Camera, DirectionalLight, EnvironmentSourceConflictError, EquirectProjectionFailedError, Fog, FogOwnerConflictError, FogParametersInvalidError, GbufferAttachmentCountMismatchError, GbufferRtAllocFailedError, GlyphText, HdrpCapsInsufficientError, HdrpDeferredCapsInsufficientError, HdrpIndexListOverflowError, HdrpLightBudgetExceededError, Instances, Layer, MaterialSkinAttrMissingError, Materials, MeshFilter, MeshRenderer, MeshSsboCapacityExceededError, MeshSsboCeilingReachedError, ObservationUnavailableError, PointLight, PointLightShadow, PointShadowAtlasBoundsViolationError, PointShadowAtlasUninitializedError, PostProcessParams, RenderFeatureCapabilityMissingError, RenderFeatureDrawRecordingFailedError, RenderFeaturePassOrderConflictError, RenderFeaturePreparationFailedError, RenderFeaturePreparedStateMismatchError, RenderFeatureRegistrationConflictError, RenderFeatureStageFailedError, ResourceInvalidValueError, SKYBOX_MODE_CUBEMAP, SPRITE_PLAYBACK_MODE_CLAMP, SPRITE_PLAYBACK_MODE_LOOP, SPRITE_PREMULTIPLIED_ALPHA_BLEND, SceneInstance, ShadowInvalidConfigError, SkinMaterialMismatchError, SkinPaletteOverflowError, SkyboxBackground, Skylight, SortKey, SpawnLightInvalidBoundsError, SpotLight, SpriteAnimation, SpriteInstances, SpriteInstancesCountMismatchError, SpriteInstancesMutuallyExclusiveWithInstancesError, SpriteInstancesRequiresSpriteShaderError, SpriteRegionOverride, TONEMAP_ACES_FILMIC, TONEMAP_AGX, TONEMAP_CINEON, TONEMAP_LINEAR, TONEMAP_NEUTRAL, TONEMAP_NONE, TONEMAP_REINHARD, TONEMAP_REINHARD_EXTENDED, TRANSPARENT_SORT_CONFIG_KEY, TRANSPARENT_SORT_MODE_DISTANCE, TRANSPARENT_SORT_MODE_LAYER_Y, TRANSPARENT_SORT_MODE_LAYER_YZ, TRANSPARENT_SORT_MODE_LAYER_Z, TaaCapsInsufficientError, TemporalUnsupportedError, TileLayer, Tilemap, VertexStorageBufferUnavailableError, VideoUploadUnsupportedError, Visibility, VisibilityStateValue, antialiasFromF32, bloomEnabledFromF32, cameraProjectionFromF32, decodeSortScope, encodeSortScope, getTransparentSortConfig, glyphTextLayoutSystem, markTileLayerDirty, materialDrawDiagnostic, materialTextureValue, orthographic, perspective, resetGlyphBakeCache, setTransparentSortConfig, skyboxModeFromF32, spritePlaybackModeFromU32, tonemapFromF32, tonemapToU32, visibilityStateFromU32 } from './chunk-DJIMFYX6.mjs';
|
|
8
8
|
|
|
9
9
|
// src/extract/schema-readers.ts
|
|
10
10
|
function readRenderSchemas(mesh, light, camera) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CookedMaterialRecord } from '@forgeax/engine-pack';
|
|
1
|
+
import type { CookedMaterialRecord } from '@forgeax/engine-pack/material-cook';
|
|
2
2
|
import type { MaterialValue } from '@forgeax/engine-types';
|
|
3
3
|
export interface MaterialRenderPassProjection {
|
|
4
4
|
readonly name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../../src/renderer/material/assembly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../../src/renderer/material/assembly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACzD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,4BAA4B,EAAE,CAAC;IACzD,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;IACvE,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAkBD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,GAAG,wBAAwB,CAajG"}
|
|
@@ -178,6 +178,12 @@ export type LayoutKind = 'pbr' | 'pbr-skin' | 'hdrp-pbr' | 'sprite-urp' | 'unlit
|
|
|
178
178
|
* filtered: colored and no-color meshes use distinct composed WGSL modules.
|
|
179
179
|
*/
|
|
180
180
|
export declare function selectHdrpPbrPrewarmVariants(manifestEntry: MaterialShaderManifestEntry | undefined, storageBufferCapable: boolean): readonly MaterialShaderManifestVariant[];
|
|
181
|
+
/**
|
|
182
|
+
* Select the PBR variant that matches a fallback mesh with no COLOR_0 input.
|
|
183
|
+
* Unknown/custom material IDs may still use the legacy PBR fallback, so that
|
|
184
|
+
* path must obey the same geometry-owned vertex-color axis as registered PBR.
|
|
185
|
+
*/
|
|
186
|
+
export declare function selectNoColorPbrVariant(manifestEntry: MaterialShaderManifestEntry | undefined, storageBufferCapable: boolean, variantSet: string | undefined): MaterialShaderManifestVariant | undefined;
|
|
181
187
|
export type MaterialShaderBindingContract = 'group-0' | 'group-0-resource' | 'view-only' | 'view-with-resource' | 'render-material';
|
|
182
188
|
export type MaterialShaderVertexInputContract = 'none' | 'render-material';
|
|
183
189
|
export declare function resolveMaterialShaderBindingContract(source: string): MaterialShaderBindingContract;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer-factory.d.ts","sourceRoot":"","sources":["../../src/renderer/renderer-factory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"renderer-factory.d.ts","sourceRoot":"","sources":["../../src/renderer/renderer-factory.ts"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAEV,MAAM,EAEN,cAAc,EAEd,MAAM,EAEN,gBAAgB,EAChB,SAAS,EACT,WAAW,EAEX,YAAY,EAEb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAW,QAAQ,EAAoB,MAAM,qBAAqB,CAAC;AAY1E,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,EAGnC,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAEV,eAAe,EAOhB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAyB,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAU9F,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,EAI5B,MAAM,kBAAkB,CAAC;AAoF1B,OAAO,KAAK,EAIV,QAAQ,EAIR,eAAe,EAEhB,MAAM,aAAa,CAAC;AAOrB,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,gCAAgC,CAAC;AAgHxC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChD,uEAAuE;IACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAC1D;AAID;;;;;;;;;;GAUG;AACH,UAAU,cAAc;IACtB,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG;QAC1B,QAAQ,CAAC,oBAAoB,EAAE,CAC7B,MAAM,EAAE,iBAAiB,GAAG,eAAe,KACxC,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;KACzC,CAAC;IACF,wHAAwH;IACxH,QAAQ,CAAC,kBAAkB,CAAC,EACxB,CAAC,CACC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,KAC/C,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,GAC7C,SAAS,CAAC;IACd;;;;;;;;;OASG;IACH,QAAQ,CAAC,6BAA6B,CAAC,EACnC,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK;QAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;KAAE,CAAC,GACtE,SAAS,CAAC;IACd;;;;;;;;;OASG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IAC3F,QAAQ,CAAC,eAAe,CAAC,EAAE,yBAAyB,CAAC;CACtD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,cAAc,CA2BxE;AAiHD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,WAAW,CAAC;AAEtF;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,aAAa,EAAE,2BAA2B,GAAG,SAAS,EACtD,oBAAoB,EAAE,OAAO,GAC5B,SAAS,6BAA6B,EAAE,CAQ1C;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,2BAA2B,GAAG,SAAS,EACtD,oBAAoB,EAAE,OAAO,EAC7B,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,6BAA6B,GAAG,SAAS,CAU3C;AAED,MAAM,MAAM,6BAA6B,GACrC,SAAS,GACT,kBAAkB,GAClB,WAAW,GACX,oBAAoB,GACpB,iBAAiB,CAAC;AACtB,MAAM,MAAM,iCAAiC,GAAG,MAAM,GAAG,iBAAiB,CAAC;AAE3E,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,MAAM,GACb,6BAA6B,CAgB/B;AAED,wBAAgB,wCAAwC,CACtD,MAAM,EAAE,MAAM,GACb,iCAAiC,CAuBnC;AAaD,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE;IACL,QAAQ,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,qBAAqB,EAAE,cAAc,GAAG,IAAI,CAAC;IACtD,QAAQ,CAAC,qBAAqB,EAAE,cAAc,GAAG,IAAI,CAAC;CACvD,GAAG,IAAI,EACR,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,UAAU,CAAC,EAAE,UAAU,GACtB,cAAc,GAAG,IAAI,CA8CvB;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,mBAAmB,EAAE,MAAM,GAAG,SAAS,EACvC,QAAQ,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACrD,CAAC,EACF,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,EAC7C,aAAa,EAAE,OAAO,GACrB,MAAM,GAAG,SAAS,CA0BpB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,eAAe,EAczB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,QAAQ,CAAC,CA4HnB;AAszGD,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,+8OA4L7B,CAAC;AAwOF;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,QAAQ,CAAC;IACf,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC,CAAC,GACD,MAAM,CAsBR;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,qBAAqB,CAAC;IAC5B,QAAQ,EAAE,qBAAqB,CAAC;CACjC;AAED,oEAAoE;AACpE,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAA;CAAE,GACrB;IACE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,2BAA2B,GAAG,6BAA6B,CAAC;IAC3E,0FAA0F;IAC1F,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC,CAAC;AAEN,+EAA+E;AAC/E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,2BAA2B,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,QAAQ,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE;QAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;KACrC,KAAK,MAAM,CAAC;CACd;AAED,yFAAyF;AACzF,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,CAAC,CAAC,EAAE,2BAA2B,GAAG,6BAA6B,KAAK,IAAI,CAAC;CAChF;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC;IAClD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC;IAClC,iEAAiE;IACjE,QAAQ,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,kBAAkB,CAAC;CACpE;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,0BAA0B,GAC/B,sBAAsB,CAuFxB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forgeax/engine-render",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Canonical ECS render schemas and renderer boundary.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
@@ -32,27 +32,27 @@
|
|
|
32
32
|
"LICENSE"
|
|
33
33
|
],
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@forgeax/engine-assets-runtime": "0.1.
|
|
36
|
-
"@forgeax/engine-audio-webaudio": "0.1.
|
|
37
|
-
"@forgeax/engine-codec": "0.1.
|
|
38
|
-
"@forgeax/engine-debug-draw": "0.1.
|
|
39
|
-
"@forgeax/engine-ecs": "0.1.
|
|
40
|
-
"@forgeax/engine-geometry": "0.1.
|
|
41
|
-
"@forgeax/engine-graphics-extras": "0.1.
|
|
42
|
-
"@forgeax/engine-input": "0.1.
|
|
43
|
-
"@forgeax/engine-math": "0.1.
|
|
44
|
-
"@forgeax/engine-pack": "0.1.
|
|
45
|
-
"@forgeax/engine-plugin": "0.1.
|
|
46
|
-
"@forgeax/engine-profiler": "0.1.
|
|
47
|
-
"@forgeax/engine-render-graph": "0.1.
|
|
48
|
-
"@forgeax/engine-rhi": "0.1.
|
|
49
|
-
"@forgeax/engine-rhi-null": "0.1.
|
|
50
|
-
"@forgeax/engine-rhi-webgpu": "0.1.
|
|
51
|
-
"@forgeax/engine-rhi-wgpu": "0.1.
|
|
52
|
-
"@forgeax/engine-scene": "0.1.
|
|
53
|
-
"@forgeax/engine-shader": "0.1.
|
|
54
|
-
"@forgeax/engine-skinning": "0.1.
|
|
55
|
-
"@forgeax/engine-types": "0.1.
|
|
35
|
+
"@forgeax/engine-assets-runtime": "0.1.4",
|
|
36
|
+
"@forgeax/engine-audio-webaudio": "0.1.4",
|
|
37
|
+
"@forgeax/engine-codec": "0.1.4",
|
|
38
|
+
"@forgeax/engine-debug-draw": "0.1.4",
|
|
39
|
+
"@forgeax/engine-ecs": "0.1.4",
|
|
40
|
+
"@forgeax/engine-geometry": "0.1.4",
|
|
41
|
+
"@forgeax/engine-graphics-extras": "0.1.4",
|
|
42
|
+
"@forgeax/engine-input": "0.1.4",
|
|
43
|
+
"@forgeax/engine-math": "0.1.4",
|
|
44
|
+
"@forgeax/engine-pack": "0.1.4",
|
|
45
|
+
"@forgeax/engine-plugin": "0.1.4",
|
|
46
|
+
"@forgeax/engine-profiler": "0.1.4",
|
|
47
|
+
"@forgeax/engine-render-graph": "0.1.4",
|
|
48
|
+
"@forgeax/engine-rhi": "0.1.4",
|
|
49
|
+
"@forgeax/engine-rhi-null": "0.1.4",
|
|
50
|
+
"@forgeax/engine-rhi-webgpu": "0.1.4",
|
|
51
|
+
"@forgeax/engine-rhi-wgpu": "0.1.4",
|
|
52
|
+
"@forgeax/engine-scene": "0.1.4",
|
|
53
|
+
"@forgeax/engine-shader": "0.1.4",
|
|
54
|
+
"@forgeax/engine-skinning": "0.1.4",
|
|
55
|
+
"@forgeax/engine-types": "0.1.4"
|
|
56
56
|
},
|
|
57
57
|
"forgeax": {
|
|
58
58
|
"metrics": {
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
resolveMaterialShaderBindingContract,
|
|
5
5
|
resolveMaterialShaderVertexInputContract,
|
|
6
6
|
selectHdrpPbrPrewarmVariants,
|
|
7
|
+
selectNoColorPbrVariant,
|
|
7
8
|
} from '../renderer/renderer-factory';
|
|
8
9
|
|
|
9
10
|
describe('material shader binding contract', () => {
|
|
@@ -85,8 +86,54 @@ describe('material shader vertex input contract', () => {
|
|
|
85
86
|
});
|
|
86
87
|
|
|
87
88
|
describe('PBR variant boot prewarm contract', () => {
|
|
89
|
+
const manifest = {
|
|
90
|
+
identifier: 'forgeax::default-standard-pbr',
|
|
91
|
+
sourcePath: 'standard-pbr.wgsl',
|
|
92
|
+
composedWgsl: 'colored-urp',
|
|
93
|
+
paramSchema: '[]',
|
|
94
|
+
variants: [
|
|
95
|
+
{
|
|
96
|
+
definesKey: '',
|
|
97
|
+
defines: {
|
|
98
|
+
CLUSTER_FORWARD_AVAILABLE: true,
|
|
99
|
+
STORAGE_BUFFER_AVAILABLE: true,
|
|
100
|
+
VERTEX_COLOR_AVAILABLE: true,
|
|
101
|
+
},
|
|
102
|
+
composedWgsl: 'colored-hdrp',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
definesKey:
|
|
106
|
+
'CLUSTER_FORWARD_AVAILABLE=true+STORAGE_BUFFER_AVAILABLE=true+VERTEX_COLOR_AVAILABLE=false',
|
|
107
|
+
defines: {
|
|
108
|
+
CLUSTER_FORWARD_AVAILABLE: true,
|
|
109
|
+
STORAGE_BUFFER_AVAILABLE: true,
|
|
110
|
+
VERTEX_COLOR_AVAILABLE: false,
|
|
111
|
+
},
|
|
112
|
+
composedWgsl: 'plain-hdrp',
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
definesKey:
|
|
116
|
+
'CLUSTER_FORWARD_AVAILABLE=false+STORAGE_BUFFER_AVAILABLE=true+VERTEX_COLOR_AVAILABLE=false',
|
|
117
|
+
defines: {
|
|
118
|
+
CLUSTER_FORWARD_AVAILABLE: false,
|
|
119
|
+
STORAGE_BUFFER_AVAILABLE: true,
|
|
120
|
+
VERTEX_COLOR_AVAILABLE: false,
|
|
121
|
+
},
|
|
122
|
+
composedWgsl: 'plain-urp',
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
} satisfies MaterialShaderManifestEntry;
|
|
126
|
+
|
|
127
|
+
it('selects the no-color PBR variant for the requested pipeline family', () => {
|
|
128
|
+
expect(selectNoColorPbrVariant(manifest, true, undefined)?.composedWgsl).toBe('plain-urp');
|
|
129
|
+
expect(selectNoColorPbrVariant(manifest, true, '')?.composedWgsl).toBe('plain-hdrp');
|
|
130
|
+
expect(
|
|
131
|
+
selectNoColorPbrVariant(manifest, true, 'CLUSTER_FORWARD_AVAILABLE=true')?.composedWgsl,
|
|
132
|
+
).toBe('plain-hdrp');
|
|
133
|
+
});
|
|
134
|
+
|
|
88
135
|
it('prewarms every device HDRP variant, including the no-color variant', () => {
|
|
89
|
-
const
|
|
136
|
+
const prewarmManifest = {
|
|
90
137
|
identifier: 'forgeax::default-standard-pbr',
|
|
91
138
|
sourcePath: 'standard-pbr.wgsl',
|
|
92
139
|
composedWgsl: 'default',
|
|
@@ -116,10 +163,10 @@ describe('PBR variant boot prewarm contract', () => {
|
|
|
116
163
|
} satisfies MaterialShaderManifestEntry;
|
|
117
164
|
|
|
118
165
|
expect(
|
|
119
|
-
selectHdrpPbrPrewarmVariants(
|
|
166
|
+
selectHdrpPbrPrewarmVariants(prewarmManifest, true).map((variant) => variant.composedWgsl),
|
|
120
167
|
).toEqual(['colored', 'plain']);
|
|
121
168
|
expect(
|
|
122
|
-
selectHdrpPbrPrewarmVariants(
|
|
169
|
+
selectHdrpPbrPrewarmVariants(prewarmManifest, false).map((variant) => variant.composedWgsl),
|
|
123
170
|
).toEqual([]);
|
|
124
171
|
});
|
|
125
172
|
});
|
|
@@ -173,8 +173,8 @@ export function skyboxModeFromF32(value: number): SkyboxMode {
|
|
|
173
173
|
* handle as the Skylight entity -- two independent components sharing the
|
|
174
174
|
* same GPU resource (the internally-projected cubemap).
|
|
175
175
|
*
|
|
176
|
-
* `equirect` is
|
|
177
|
-
*
|
|
176
|
+
* `equirect` is resolved from a Vite pack-index GUID through the App-owned
|
|
177
|
+
* AssetRegistry (`AssetRegistry.load(guid, 'equirect')`). The cubemap
|
|
178
178
|
* projection is internal and driven by the render-system record arm; there
|
|
179
179
|
* is no user upload call.
|
|
180
180
|
*
|
|
@@ -186,12 +186,11 @@ export function skyboxModeFromF32(value: number): SkyboxMode {
|
|
|
186
186
|
* source equirectangular asset.
|
|
187
187
|
*
|
|
188
188
|
* @example Minimum spawn (defaults mode=0):
|
|
189
|
-
* //
|
|
190
|
-
* // the Skylight).
|
|
189
|
+
* // Resolve the equirect payload through the App AssetRegistry.
|
|
191
190
|
* world.spawn({ component: SkyboxBackground, data: { equirect: equirectHandle } });
|
|
192
191
|
*
|
|
193
192
|
* @example Single handle shared between Skylight (IBL) and SkyboxBackground:
|
|
194
|
-
* const hdrRes = await
|
|
193
|
+
* const hdrRes = await assets.load(guid, 'equirect');
|
|
195
194
|
* if (!hdrRes.ok) throw hdrRes.error;
|
|
196
195
|
* world.spawn({ component: Skylight, data: { equirect: hdrRes.value } });
|
|
197
196
|
* world.spawn({ component: SkyboxBackground, data: { equirect: hdrRes.value } });
|
|
@@ -647,6 +647,27 @@ export function selectHdrpPbrPrewarmVariants(
|
|
|
647
647
|
);
|
|
648
648
|
}
|
|
649
649
|
|
|
650
|
+
/**
|
|
651
|
+
* Select the PBR variant that matches a fallback mesh with no COLOR_0 input.
|
|
652
|
+
* Unknown/custom material IDs may still use the legacy PBR fallback, so that
|
|
653
|
+
* path must obey the same geometry-owned vertex-color axis as registered PBR.
|
|
654
|
+
*/
|
|
655
|
+
export function selectNoColorPbrVariant(
|
|
656
|
+
manifestEntry: MaterialShaderManifestEntry | undefined,
|
|
657
|
+
storageBufferCapable: boolean,
|
|
658
|
+
variantSet: string | undefined,
|
|
659
|
+
): MaterialShaderManifestVariant | undefined {
|
|
660
|
+
const hdrpRequested =
|
|
661
|
+
variantSet === '' || variantSet?.includes('CLUSTER_FORWARD_AVAILABLE=true') === true;
|
|
662
|
+
return manifestEntry?.variants.find(
|
|
663
|
+
(variant) =>
|
|
664
|
+
variant.defines.STORAGE_BUFFER_AVAILABLE === storageBufferCapable &&
|
|
665
|
+
variant.defines.VERTEX_COLOR_AVAILABLE === false &&
|
|
666
|
+
(!('CLUSTER_FORWARD_AVAILABLE' in variant.defines) ||
|
|
667
|
+
variant.defines.CLUSTER_FORWARD_AVAILABLE === hdrpRequested),
|
|
668
|
+
);
|
|
669
|
+
}
|
|
670
|
+
|
|
650
671
|
export type MaterialShaderBindingContract =
|
|
651
672
|
| 'group-0'
|
|
652
673
|
| 'group-0-resource'
|
|
@@ -1926,11 +1947,33 @@ async function makeWebGPURenderer(internals: WebGPURendererInternals): Promise<R
|
|
|
1926
1947
|
},
|
|
1927
1948
|
);
|
|
1928
1949
|
/** Legacy feature-only pipeline source; authored MaterialReady never uses it. */
|
|
1929
|
-
const findStandardPbrEntry = (
|
|
1950
|
+
const findStandardPbrEntry = (
|
|
1951
|
+
variantSet?: string,
|
|
1952
|
+
): import('@forgeax/engine-types').ManifestEntry | undefined => {
|
|
1953
|
+
let standardEntry: import('@forgeax/engine-types').ManifestEntry | undefined;
|
|
1930
1954
|
for (const entry of getShader().entries()) {
|
|
1931
|
-
if (entry.wgsl.includes('f_schlick'))
|
|
1955
|
+
if (entry.wgsl.includes('f_schlick')) {
|
|
1956
|
+
standardEntry = entry;
|
|
1957
|
+
break;
|
|
1958
|
+
}
|
|
1932
1959
|
}
|
|
1933
|
-
return undefined;
|
|
1960
|
+
if (standardEntry === undefined) return undefined;
|
|
1961
|
+
const pbrManifestEntry = [...getShader().materialShaderManifestEntries()].find(
|
|
1962
|
+
(entry) => entry.identifier === 'forgeax::default-standard-pbr',
|
|
1963
|
+
);
|
|
1964
|
+
const noColorVariant = selectNoColorPbrVariant(
|
|
1965
|
+
pbrManifestEntry,
|
|
1966
|
+
internals.device.caps.storageBuffer,
|
|
1967
|
+
variantSet,
|
|
1968
|
+
);
|
|
1969
|
+
if (noColorVariant !== undefined && noColorVariant.composedWgsl !== standardEntry.wgsl) {
|
|
1970
|
+
return { ...standardEntry, wgsl: noColorVariant.composedWgsl };
|
|
1971
|
+
}
|
|
1972
|
+
const runtimePbr = getShader().findMaterialArtifact('forgeax::default-standard-pbr');
|
|
1973
|
+
if (runtimePbr.ok && runtimePbr.value.source !== standardEntry.wgsl) {
|
|
1974
|
+
return { ...standardEntry, wgsl: runtimePbr.value.source };
|
|
1975
|
+
}
|
|
1976
|
+
return standardEntry;
|
|
1934
1977
|
};
|
|
1935
1978
|
// Shared builder context for the per-MaterialShader pipeline cache.
|
|
1936
1979
|
// Built once for registered material shader IDs. Null when the manifest is
|
|
@@ -2459,7 +2502,7 @@ async function makeWebGPURenderer(internals: WebGPURendererInternals): Promise<R
|
|
|
2459
2502
|
vertexLayoutProjection,
|
|
2460
2503
|
);
|
|
2461
2504
|
}
|
|
2462
|
-
const pbrEntry = findStandardPbrEntry();
|
|
2505
|
+
const pbrEntry = findStandardPbrEntry(effectiveVariantSet);
|
|
2463
2506
|
if (pbrEntry === undefined) return null;
|
|
2464
2507
|
return buildAndCachePipeline(
|
|
2465
2508
|
cacheKey,
|