@aura3d/rendering 2.0.4 → 3.0.1

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 (374) hide show
  1. package/dist/AtmosphereWetness.d.ts +61 -0
  2. package/dist/AtmosphereWetness.d.ts.map +1 -0
  3. package/dist/AtmosphereWetness.js +99 -0
  4. package/dist/AtmosphereWetness.js.map +1 -0
  5. package/dist/CascadedShadowMaps.d.ts.map +1 -1
  6. package/dist/CascadedShadowMaps.js +3 -1
  7. package/dist/CascadedShadowMaps.js.map +1 -1
  8. package/dist/ClusteredForwardLighting.d.ts +25 -1
  9. package/dist/ClusteredForwardLighting.d.ts.map +1 -1
  10. package/dist/ClusteredForwardLighting.js +80 -3
  11. package/dist/ClusteredForwardLighting.js.map +1 -1
  12. package/dist/DayNightSky.d.ts +63 -0
  13. package/dist/DayNightSky.d.ts.map +1 -0
  14. package/dist/DayNightSky.js +156 -0
  15. package/dist/DayNightSky.js.map +1 -0
  16. package/dist/EnvironmentPresetPack.d.ts +30 -0
  17. package/dist/EnvironmentPresetPack.d.ts.map +1 -0
  18. package/dist/EnvironmentPresetPack.js +49 -0
  19. package/dist/EnvironmentPresetPack.js.map +1 -0
  20. package/dist/ExtensionScalarAtlas.d.ts +18 -0
  21. package/dist/ExtensionScalarAtlas.d.ts.map +1 -0
  22. package/dist/ExtensionScalarAtlas.js +107 -0
  23. package/dist/ExtensionScalarAtlas.js.map +1 -0
  24. package/dist/ForwardPass.d.ts +65 -0
  25. package/dist/ForwardPass.d.ts.map +1 -1
  26. package/dist/ForwardPass.js +196 -2
  27. package/dist/ForwardPass.js.map +1 -1
  28. package/dist/InstancedPBRMaterial.d.ts +1 -0
  29. package/dist/InstancedPBRMaterial.d.ts.map +1 -1
  30. package/dist/InstancedPBRMaterial.js +3 -0
  31. package/dist/InstancedPBRMaterial.js.map +1 -1
  32. package/dist/InstancingDiagnostics.d.ts +69 -0
  33. package/dist/InstancingDiagnostics.d.ts.map +1 -0
  34. package/dist/InstancingDiagnostics.js +98 -0
  35. package/dist/InstancingDiagnostics.js.map +1 -0
  36. package/dist/LeanWebGL2Device.d.ts +265 -0
  37. package/dist/LeanWebGL2Device.d.ts.map +1 -0
  38. package/dist/LeanWebGL2Device.js +4001 -0
  39. package/dist/LeanWebGL2Device.js.map +1 -0
  40. package/dist/LightingRig.d.ts +19 -1
  41. package/dist/LightingRig.d.ts.map +1 -1
  42. package/dist/LightingRig.js +61 -1
  43. package/dist/LightingRig.js.map +1 -1
  44. package/dist/MaterialBinding.js +1 -1
  45. package/dist/MaterialBinding.js.map +1 -1
  46. package/dist/MeshConsolidation.d.ts +12 -0
  47. package/dist/MeshConsolidation.d.ts.map +1 -1
  48. package/dist/MeshConsolidation.js +28 -0
  49. package/dist/MeshConsolidation.js.map +1 -1
  50. package/dist/MorphTargetPlan.d.ts +29 -2
  51. package/dist/MorphTargetPlan.d.ts.map +1 -1
  52. package/dist/MorphTargetPlan.js +23 -4
  53. package/dist/MorphTargetPlan.js.map +1 -1
  54. package/dist/NormalMappedPBRMaterial.d.ts.map +1 -1
  55. package/dist/NormalMappedPBRMaterial.js +22 -2
  56. package/dist/NormalMappedPBRMaterial.js.map +1 -1
  57. package/dist/OceanSurface.d.ts +75 -0
  58. package/dist/OceanSurface.d.ts.map +1 -1
  59. package/dist/OceanSurface.js +211 -0
  60. package/dist/OceanSurface.js.map +1 -1
  61. package/dist/PBRMaterial.d.ts +1 -0
  62. package/dist/PBRMaterial.d.ts.map +1 -1
  63. package/dist/PBRMaterial.js +23 -2
  64. package/dist/PBRMaterial.js.map +1 -1
  65. package/dist/PbrReference.d.ts +48 -0
  66. package/dist/PbrReference.d.ts.map +1 -1
  67. package/dist/PbrReference.js +126 -0
  68. package/dist/PbrReference.js.map +1 -1
  69. package/dist/PlanarReflection.d.ts +221 -0
  70. package/dist/PlanarReflection.d.ts.map +1 -0
  71. package/dist/PlanarReflection.js +541 -0
  72. package/dist/PlanarReflection.js.map +1 -0
  73. package/dist/PostProcessPass.d.ts +32 -0
  74. package/dist/PostProcessPass.d.ts.map +1 -1
  75. package/dist/PostProcessPass.js +79 -36
  76. package/dist/PostProcessPass.js.map +1 -1
  77. package/dist/ProjectionMath.d.ts +3 -0
  78. package/dist/ProjectionMath.d.ts.map +1 -0
  79. package/dist/ProjectionMath.js +26 -0
  80. package/dist/ProjectionMath.js.map +1 -0
  81. package/dist/ReflectionSurfaces.d.ts +17 -0
  82. package/dist/ReflectionSurfaces.d.ts.map +1 -1
  83. package/dist/ReflectionSurfaces.js +103 -1
  84. package/dist/ReflectionSurfaces.js.map +1 -1
  85. package/dist/RenderDevice.d.ts +92 -0
  86. package/dist/RenderDevice.d.ts.map +1 -1
  87. package/dist/RenderDevice.js +85 -0
  88. package/dist/RenderDevice.js.map +1 -1
  89. package/dist/Renderer.d.ts +9 -0
  90. package/dist/Renderer.d.ts.map +1 -1
  91. package/dist/Renderer.js +97 -9
  92. package/dist/Renderer.js.map +1 -1
  93. package/dist/RendererPostprocessPlan.d.ts +64 -3
  94. package/dist/RendererPostprocessPlan.d.ts.map +1 -1
  95. package/dist/RendererPostprocessPlan.js +116 -12
  96. package/dist/RendererPostprocessPlan.js.map +1 -1
  97. package/dist/RendererVisualPipelineReport.d.ts.map +1 -1
  98. package/dist/RendererVisualPipelineReport.js +3 -1
  99. package/dist/RendererVisualPipelineReport.js.map +1 -1
  100. package/dist/Sampler.d.ts +29 -0
  101. package/dist/Sampler.d.ts.map +1 -1
  102. package/dist/Sampler.js +47 -0
  103. package/dist/Sampler.js.map +1 -1
  104. package/dist/ScreenSpaceReflectionPass.d.ts +43 -0
  105. package/dist/ScreenSpaceReflectionPass.d.ts.map +1 -0
  106. package/dist/ScreenSpaceReflectionPass.js +58 -0
  107. package/dist/ScreenSpaceReflectionPass.js.map +1 -0
  108. package/dist/SdfText.d.ts +250 -0
  109. package/dist/SdfText.d.ts.map +1 -0
  110. package/dist/SdfText.js +551 -0
  111. package/dist/SdfText.js.map +1 -0
  112. package/dist/ShaderChunks.d.ts.map +1 -1
  113. package/dist/ShaderChunks.js +30 -12
  114. package/dist/ShaderChunks.js.map +1 -1
  115. package/dist/ShaderLibrary.d.ts.map +1 -1
  116. package/dist/ShaderLibrary.js +601 -186
  117. package/dist/ShaderLibrary.js.map +1 -1
  118. package/dist/ShaderLibraryCore.d.ts +3 -0
  119. package/dist/ShaderLibraryCore.d.ts.map +1 -1
  120. package/dist/ShaderLibraryCore.js +73 -12
  121. package/dist/ShaderLibraryCore.js.map +1 -1
  122. package/dist/ShadowMap.d.ts +24 -0
  123. package/dist/ShadowMap.d.ts.map +1 -1
  124. package/dist/ShadowMap.js +43 -0
  125. package/dist/ShadowMap.js.map +1 -1
  126. package/dist/SkinnedLitMaterial.d.ts.map +1 -1
  127. package/dist/SkinnedLitMaterial.js +2 -0
  128. package/dist/SkinnedLitMaterial.js.map +1 -1
  129. package/dist/SkinningBounds.d.ts +10 -0
  130. package/dist/SkinningBounds.d.ts.map +1 -1
  131. package/dist/SkinningBounds.js +27 -0
  132. package/dist/SkinningBounds.js.map +1 -1
  133. package/dist/SpriteFlipbook.d.ts +60 -0
  134. package/dist/SpriteFlipbook.d.ts.map +1 -0
  135. package/dist/SpriteFlipbook.js +128 -0
  136. package/dist/SpriteFlipbook.js.map +1 -0
  137. package/dist/TemporalHistory.d.ts +37 -0
  138. package/dist/TemporalHistory.d.ts.map +1 -0
  139. package/dist/TemporalHistory.js +135 -0
  140. package/dist/TemporalHistory.js.map +1 -0
  141. package/dist/TemporalMath.d.ts +3 -0
  142. package/dist/TemporalMath.d.ts.map +1 -0
  143. package/dist/TemporalMath.js +9 -0
  144. package/dist/TemporalMath.js.map +1 -0
  145. package/dist/TerrainTiles.d.ts +120 -0
  146. package/dist/TerrainTiles.d.ts.map +1 -0
  147. package/dist/TerrainTiles.js +221 -0
  148. package/dist/TerrainTiles.js.map +1 -0
  149. package/dist/TexturedPBRMaterial.d.ts +4 -0
  150. package/dist/TexturedPBRMaterial.d.ts.map +1 -1
  151. package/dist/TexturedPBRMaterial.js +88 -5
  152. package/dist/TexturedPBRMaterial.js.map +1 -1
  153. package/dist/TexturedUnlitMaterial.d.ts.map +1 -1
  154. package/dist/TexturedUnlitMaterial.js +20 -2
  155. package/dist/TexturedUnlitMaterial.js.map +1 -1
  156. package/dist/UnlitMaterial.d.ts.map +1 -1
  157. package/dist/UnlitMaterial.js +20 -2
  158. package/dist/UnlitMaterial.js.map +1 -1
  159. package/dist/VertexFormat.d.ts +6 -0
  160. package/dist/VertexFormat.d.ts.map +1 -1
  161. package/dist/VertexFormat.js +12 -0
  162. package/dist/VertexFormat.js.map +1 -1
  163. package/dist/VolumetricFog.d.ts +55 -0
  164. package/dist/VolumetricFog.d.ts.map +1 -0
  165. package/dist/VolumetricFog.js +91 -0
  166. package/dist/VolumetricFog.js.map +1 -0
  167. package/dist/WaterSurface.d.ts +77 -0
  168. package/dist/WaterSurface.d.ts.map +1 -0
  169. package/dist/WaterSurface.js +133 -0
  170. package/dist/WaterSurface.js.map +1 -0
  171. package/dist/WebGL2Device.d.ts +73 -0
  172. package/dist/WebGL2Device.d.ts.map +1 -1
  173. package/dist/WebGL2Device.js +836 -79
  174. package/dist/WebGL2Device.js.map +1 -1
  175. package/dist/WebGPUDevice.d.ts +62 -1
  176. package/dist/WebGPUDevice.d.ts.map +1 -1
  177. package/dist/WebGPUDevice.js +844 -51
  178. package/dist/WebGPUDevice.js.map +1 -1
  179. package/dist/WebGPUExtensionAtlas.d.ts +6 -0
  180. package/dist/WebGPUExtensionAtlas.d.ts.map +1 -0
  181. package/dist/WebGPUExtensionAtlas.js +225 -0
  182. package/dist/WebGPUExtensionAtlas.js.map +1 -0
  183. package/dist/WebGPUSkinningLimits.d.ts +40 -0
  184. package/dist/WebGPUSkinningLimits.d.ts.map +1 -1
  185. package/dist/WebGPUSkinningLimits.js +32 -0
  186. package/dist/WebGPUSkinningLimits.js.map +1 -1
  187. package/dist/effects/CollisionModule.d.ts +9 -0
  188. package/dist/effects/CollisionModule.d.ts.map +1 -1
  189. package/dist/effects/CollisionModule.js +10 -0
  190. package/dist/effects/CollisionModule.js.map +1 -1
  191. package/dist/effects/ColorModule.d.ts +7 -0
  192. package/dist/effects/ColorModule.d.ts.map +1 -1
  193. package/dist/effects/ColorModule.js +23 -0
  194. package/dist/effects/ColorModule.js.map +1 -1
  195. package/dist/effects/ForceModule.d.ts +35 -0
  196. package/dist/effects/ForceModule.d.ts.map +1 -1
  197. package/dist/effects/ForceModule.js +49 -0
  198. package/dist/effects/ForceModule.js.map +1 -1
  199. package/dist/effects/GPUParticleBackend.d.ts +188 -0
  200. package/dist/effects/GPUParticleBackend.d.ts.map +1 -1
  201. package/dist/effects/GPUParticleBackend.js +710 -1
  202. package/dist/effects/GPUParticleBackend.js.map +1 -1
  203. package/dist/effects/HeightfieldModule.d.ts +58 -0
  204. package/dist/effects/HeightfieldModule.d.ts.map +1 -0
  205. package/dist/effects/HeightfieldModule.js +129 -0
  206. package/dist/effects/HeightfieldModule.js.map +1 -0
  207. package/dist/effects/LightingModule.d.ts +34 -0
  208. package/dist/effects/LightingModule.d.ts.map +1 -0
  209. package/dist/effects/LightingModule.js +54 -0
  210. package/dist/effects/LightingModule.js.map +1 -0
  211. package/dist/effects/ParticleDiagnostics.d.ts +8 -0
  212. package/dist/effects/ParticleDiagnostics.d.ts.map +1 -1
  213. package/dist/effects/ParticleDiagnostics.js +3 -0
  214. package/dist/effects/ParticleDiagnostics.js.map +1 -1
  215. package/dist/effects/ParticleModule.d.ts +8 -0
  216. package/dist/effects/ParticleModule.d.ts.map +1 -1
  217. package/dist/effects/ParticleModule.js.map +1 -1
  218. package/dist/effects/ParticleRenderer.d.ts +20 -0
  219. package/dist/effects/ParticleRenderer.d.ts.map +1 -1
  220. package/dist/effects/ParticleRenderer.js +57 -7
  221. package/dist/effects/ParticleRenderer.js.map +1 -1
  222. package/dist/effects/ParticleSystem.d.ts +45 -1
  223. package/dist/effects/ParticleSystem.d.ts.map +1 -1
  224. package/dist/effects/ParticleSystem.js +373 -4
  225. package/dist/effects/ParticleSystem.js.map +1 -1
  226. package/dist/effects/ResidentGPUParticleRenderer.d.ts +158 -0
  227. package/dist/effects/ResidentGPUParticleRenderer.d.ts.map +1 -0
  228. package/dist/effects/ResidentGPUParticleRenderer.js +576 -0
  229. package/dist/effects/ResidentGPUParticleRenderer.js.map +1 -0
  230. package/dist/effects/SizeModule.d.ts +4 -0
  231. package/dist/effects/SizeModule.d.ts.map +1 -1
  232. package/dist/effects/SizeModule.js +16 -0
  233. package/dist/effects/SizeModule.js.map +1 -1
  234. package/dist/effects/SubEmitterModule.d.ts +61 -0
  235. package/dist/effects/SubEmitterModule.d.ts.map +1 -0
  236. package/dist/effects/SubEmitterModule.js +119 -0
  237. package/dist/effects/SubEmitterModule.js.map +1 -0
  238. package/dist/effects/TrailModule.d.ts +38 -0
  239. package/dist/effects/TrailModule.d.ts.map +1 -1
  240. package/dist/effects/TrailModule.js +95 -2
  241. package/dist/effects/TrailModule.js.map +1 -1
  242. package/dist/effects/TurbulenceModule.d.ts +43 -0
  243. package/dist/effects/TurbulenceModule.d.ts.map +1 -0
  244. package/dist/effects/TurbulenceModule.js +130 -0
  245. package/dist/effects/TurbulenceModule.js.map +1 -0
  246. package/dist/effects/index.d.ts +4 -0
  247. package/dist/effects/index.d.ts.map +1 -1
  248. package/dist/effects/index.js +4 -0
  249. package/dist/effects/index.js.map +1 -1
  250. package/dist/extension-scalar-atlas.d.ts +3 -0
  251. package/dist/extension-scalar-atlas.d.ts.map +1 -0
  252. package/dist/extension-scalar-atlas.js +2 -0
  253. package/dist/extension-scalar-atlas.js.map +1 -0
  254. package/dist/index.d.ts +58 -19
  255. package/dist/index.d.ts.map +1 -1
  256. package/dist/index.js +32 -10
  257. package/dist/index.js.map +1 -1
  258. package/dist/lean/LeanProductionRenderer.d.ts.map +1 -1
  259. package/dist/lean/LeanProductionRenderer.js +2 -2
  260. package/dist/lean/LeanProductionRenderer.js.map +1 -1
  261. package/dist/lean-core-runtime.d.ts +13 -0
  262. package/dist/lean-core-runtime.d.ts.map +1 -0
  263. package/dist/lean-core-runtime.js +10 -0
  264. package/dist/lean-core-runtime.js.map +1 -0
  265. package/dist/materials/MaterialExtensions.js +3 -3
  266. package/dist/materials/MaterialExtensions.js.map +1 -1
  267. package/dist/postprocess/NativeBloomPyramid.d.ts +44 -0
  268. package/dist/postprocess/NativeBloomPyramid.d.ts.map +1 -0
  269. package/dist/postprocess/NativeBloomPyramid.js +84 -0
  270. package/dist/postprocess/NativeBloomPyramid.js.map +1 -0
  271. package/dist/postprocess/NativeLdrEffectLuts.d.ts +10 -1
  272. package/dist/postprocess/NativeLdrEffectLuts.d.ts.map +1 -1
  273. package/dist/postprocess/NativeLdrEffectLuts.js +19 -2
  274. package/dist/postprocess/NativeLdrEffectLuts.js.map +1 -1
  275. package/dist/postprocess/index.d.ts +2 -0
  276. package/dist/postprocess/index.d.ts.map +1 -1
  277. package/dist/postprocess/index.js +1 -0
  278. package/dist/postprocess/index.js.map +1 -1
  279. package/dist/production-runtime/PBRHDRPipeline.d.ts +22 -0
  280. package/dist/production-runtime/PBRHDRPipeline.d.ts.map +1 -1
  281. package/dist/production-runtime/PBRHDRPipeline.js +125 -0
  282. package/dist/production-runtime/PBRHDRPipeline.js.map +1 -1
  283. package/dist/production-runtime/ProductionRendererTypes.d.ts +1 -0
  284. package/dist/production-runtime/ProductionRendererTypes.d.ts.map +1 -1
  285. package/dist/production-runtime/ProductionRendererTypes.js.map +1 -1
  286. package/dist/production-runtime/ProductionRuntimeRenderer.d.ts +3 -0
  287. package/dist/production-runtime/ProductionRuntimeRenderer.d.ts.map +1 -1
  288. package/dist/production-runtime/ProductionRuntimeRenderer.js +8 -1
  289. package/dist/production-runtime/ProductionRuntimeRenderer.js.map +1 -1
  290. package/dist/production-runtime/ProductionWebGL2Renderer.d.ts +4 -0
  291. package/dist/production-runtime/ProductionWebGL2Renderer.d.ts.map +1 -1
  292. package/dist/production-runtime/ProductionWebGL2Renderer.js +15 -0
  293. package/dist/production-runtime/ProductionWebGL2Renderer.js.map +1 -1
  294. package/dist/production-runtime/ProductionWebGPURenderer.d.ts +58 -0
  295. package/dist/production-runtime/ProductionWebGPURenderer.d.ts.map +1 -1
  296. package/dist/production-runtime/ProductionWebGPURenderer.js +127 -0
  297. package/dist/production-runtime/ProductionWebGPURenderer.js.map +1 -1
  298. package/dist/production-runtime/framegraph/FrameGraph.d.ts +4 -2
  299. package/dist/production-runtime/framegraph/FrameGraph.d.ts.map +1 -1
  300. package/dist/production-runtime/framegraph/FrameGraph.js +62 -4
  301. package/dist/production-runtime/framegraph/FrameGraph.js.map +1 -1
  302. package/dist/production-runtime/framegraph/NativeFrameGraphBindings.d.ts +32 -0
  303. package/dist/production-runtime/framegraph/NativeFrameGraphBindings.d.ts.map +1 -0
  304. package/dist/production-runtime/framegraph/NativeFrameGraphBindings.js +111 -0
  305. package/dist/production-runtime/framegraph/NativeFrameGraphBindings.js.map +1 -0
  306. package/dist/production-runtime/framegraph/RenderPass.d.ts +23 -0
  307. package/dist/production-runtime/framegraph/RenderPass.d.ts.map +1 -1
  308. package/dist/production-runtime/framegraph/RenderPass.js +87 -1
  309. package/dist/production-runtime/framegraph/RenderPass.js.map +1 -1
  310. package/dist/production-runtime/index.d.ts +7 -4
  311. package/dist/production-runtime/index.d.ts.map +1 -1
  312. package/dist/production-runtime/index.js +4 -2
  313. package/dist/production-runtime/index.js.map +1 -1
  314. package/dist/production-runtime/passes/DepthPrepass.d.ts +18 -1
  315. package/dist/production-runtime/passes/DepthPrepass.d.ts.map +1 -1
  316. package/dist/production-runtime/passes/DepthPrepass.js +41 -2
  317. package/dist/production-runtime/passes/DepthPrepass.js.map +1 -1
  318. package/dist/production-runtime/passes/FramegraphTopology.d.ts +13 -0
  319. package/dist/production-runtime/passes/FramegraphTopology.d.ts.map +1 -0
  320. package/dist/production-runtime/passes/FramegraphTopology.js +59 -0
  321. package/dist/production-runtime/passes/FramegraphTopology.js.map +1 -0
  322. package/dist/production-runtime/passes/OpaquePass.d.ts +19 -1
  323. package/dist/production-runtime/passes/OpaquePass.d.ts.map +1 -1
  324. package/dist/production-runtime/passes/OpaquePass.js +43 -2
  325. package/dist/production-runtime/passes/OpaquePass.js.map +1 -1
  326. package/dist/production-runtime/passes/ShadowPass.d.ts +19 -1
  327. package/dist/production-runtime/passes/ShadowPass.d.ts.map +1 -1
  328. package/dist/production-runtime/passes/ShadowPass.js +45 -2
  329. package/dist/production-runtime/passes/ShadowPass.js.map +1 -1
  330. package/dist/production-runtime/passes/SkyboxPass.d.ts +17 -1
  331. package/dist/production-runtime/passes/SkyboxPass.d.ts.map +1 -1
  332. package/dist/production-runtime/passes/SkyboxPass.js +41 -2
  333. package/dist/production-runtime/passes/SkyboxPass.js.map +1 -1
  334. package/dist/production-runtime/passes/ToneMappingPass.d.ts +26 -1
  335. package/dist/production-runtime/passes/ToneMappingPass.d.ts.map +1 -1
  336. package/dist/production-runtime/passes/ToneMappingPass.js +62 -2
  337. package/dist/production-runtime/passes/ToneMappingPass.js.map +1 -1
  338. package/dist/production-runtime/passes/TransparentPass.d.ts +19 -1
  339. package/dist/production-runtime/passes/TransparentPass.d.ts.map +1 -1
  340. package/dist/production-runtime/passes/TransparentPass.js +47 -2
  341. package/dist/production-runtime/passes/TransparentPass.js.map +1 -1
  342. package/dist/reflection-surfaces.d.ts +5 -0
  343. package/dist/reflection-surfaces.d.ts.map +1 -0
  344. package/dist/reflection-surfaces.js +3 -0
  345. package/dist/reflection-surfaces.js.map +1 -0
  346. package/dist/shadows/CascadeHysteresis.d.ts +67 -0
  347. package/dist/shadows/CascadeHysteresis.d.ts.map +1 -0
  348. package/dist/shadows/CascadeHysteresis.js +104 -0
  349. package/dist/shadows/CascadeHysteresis.js.map +1 -0
  350. package/dist/shadows/ContactShadows.d.ts +52 -0
  351. package/dist/shadows/ContactShadows.d.ts.map +1 -1
  352. package/dist/shadows/ContactShadows.js +122 -0
  353. package/dist/shadows/ContactShadows.js.map +1 -1
  354. package/dist/shadows/SpotShadowMaps.d.ts +77 -0
  355. package/dist/shadows/SpotShadowMaps.d.ts.map +1 -0
  356. package/dist/shadows/SpotShadowMaps.js +106 -0
  357. package/dist/shadows/SpotShadowMaps.js.map +1 -0
  358. package/dist/webgpu/WebGPUPostProcess.d.ts +2 -0
  359. package/dist/webgpu/WebGPUPostProcess.d.ts.map +1 -1
  360. package/dist/webgpu/WebGPUPostProcess.js +1 -0
  361. package/dist/webgpu/WebGPUPostProcess.js.map +1 -1
  362. package/dist/webgpu/WebGPUPostShaders.d.ts +77 -0
  363. package/dist/webgpu/WebGPUPostShaders.d.ts.map +1 -0
  364. package/dist/webgpu/WebGPUPostShaders.js +261 -0
  365. package/dist/webgpu/WebGPUPostShaders.js.map +1 -0
  366. package/dist/webgpu/WebGPUTemporal.d.ts +17 -0
  367. package/dist/webgpu/WebGPUTemporal.d.ts.map +1 -0
  368. package/dist/webgpu/WebGPUTemporal.js +64 -0
  369. package/dist/webgpu/WebGPUTemporal.js.map +1 -0
  370. package/dist/webgpu.d.ts +6 -0
  371. package/dist/webgpu.d.ts.map +1 -1
  372. package/dist/webgpu.js +4 -0
  373. package/dist/webgpu.js.map +1 -1
  374. package/package.json +15 -3
@@ -1 +1 @@
1
- {"version":3,"file":"LeanProductionRenderer.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/lean/LeanProductionRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LeanProductionRenderer.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/lean/LeanProductionRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAmB,MAAM,mBAAmB,CAAC;AAEjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAgB1D;;;;;;;;GAQG;AACH,MAAM,OAAO,sBAAsB;IACxB,OAAO,GAAG,QAAiB,CAAC;IACpB,MAAM,CAAmB;IACzB,aAAa,GAAG,2BAA2B,EAAE,CAAC;IACvD,KAAK,CAAS;IACd,MAAM,CAAS;IACN,UAAU,CAA4C;IAEvE,YAAoB,OAAsC;QACxD,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;YACpC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;SACrD,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAsC;QACxD,OAAO,IAAI,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,sBAAsB,CAAC,KAA8B;QACnD,MAAM,KAAK,GAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnC,IAAI,WAAW,CAAC;gBACd,KAAK;gBACL,0BAA0B,EAAE,KAAK,CAAC,MAAM,EAAE,oBAAoB,IAAI,eAAe;gBACjF,aAAa,EAAE,IAAI,CAAC,aAAa;aAClC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9E,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACzB,CAAC;QACD,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE;YACzC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;SAC7B,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAa,EAAE,MAAc;QAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,WAAW;QACT,OAAO;YACL,EAAE,EAAE,EAAE,qBAAqB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,yCAAyC,EAAE;YACpG,EAAE,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,kDAAkD,EAAE;YAC3G,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,+CAA+C,EAAE;YACrG,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,0DAA0D,EAAE;SAChH,CAAC;IACJ,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;IACtC,CAAC;IAED,YAAY,CAAC,QAAoB;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,gBAAgB,CAAC,QAAoB;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACpC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;CACF;AAED,MAAM,eAAe,GAAG,IAAI,YAAY,CAAC;IACvC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACV,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACV,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACV,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;CACX,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Core-only browser rendering surface for `@aura3d/lean`.
3
+ *
4
+ * Product and broad renderer values remain on their existing entry points so
5
+ * primitive scenes cannot statically download code they cannot call.
6
+ */
7
+ export { Geometry } from "./Geometry.js";
8
+ export { PBRMaterial } from "./PBRMaterial.js";
9
+ export { LeanProductionRenderer } from "./lean/LeanProductionRenderer.js";
10
+ export type { LeanProductionRendererOptions } from "./lean/LeanProductionRenderer.js";
11
+ export type { CameraLike, RenderSource } from "./Renderer.js";
12
+ export type { RenderItem } from "./ForwardPass.js";
13
+ //# sourceMappingURL=lean-core-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lean-core-runtime.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/lean-core-runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,YAAY,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACtF,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC9D,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Core-only browser rendering surface for `@aura3d/lean`.
3
+ *
4
+ * Product and broad renderer values remain on their existing entry points so
5
+ * primitive scenes cannot statically download code they cannot call.
6
+ */
7
+ export { Geometry } from "./Geometry.js";
8
+ export { PBRMaterial } from "./PBRMaterial.js";
9
+ export { LeanProductionRenderer } from "./lean/LeanProductionRenderer.js";
10
+ //# sourceMappingURL=lean-core-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lean-core-runtime.js","sourceRoot":"","sources":["../../../../packages/rendering/src/lean-core-runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC"}
@@ -5,11 +5,11 @@ export const EXTERNAL_PARITY_MATERIAL_EXTENSION_SUPPORT = [
5
5
  { extension: "transmission", support: "bounded", diagnostic: "Transmission is approximated by the bounded transmission pass; refraction parity is not claimed." },
6
6
  { extension: "volume", support: "bounded", diagnostic: "Volume thickness/attenuation are tracked for diagnostics; full volumetric caustics are not claimed." },
7
7
  { extension: "ior", support: "bounded", diagnostic: "IOR is tracked and used by bounded Fresnel/transmission response." },
8
- { extension: "anisotropy", support: "bounded", diagnostic: "Anisotropy intent is tracked for brushed material review; tangent-space parity requires visual evidence." },
8
+ { extension: "anisotropy", support: "bounded", diagnostic: "Anisotropy uses the aspect-ratio anisotropic-GGX NDF in both primitive (procedural frame) and textured (authored-TBN) paths; same-scene rotation response is browser-proven (tests/browser/anisotropic-rotation-q1.spec.ts, tests/reports/anisotropic-rotation-q1/aniso-rotation.json). Full authored-tangent identity stays bounded." },
9
9
  { extension: "iridescence", support: "bounded", diagnostic: "Iridescence factors are tracked for diagnostics; spectral accuracy is not claimed." },
10
10
  { extension: "emissive-strength", support: "supported", diagnostic: "Emissive strength is supported through HDR/tone-mapped material proof." },
11
- { extension: "texture-transform", support: "supported", diagnostic: "Texture transforms are tracked and validated for material slots." },
12
- { extension: "multi-uv", support: "bounded", diagnostic: "Multiple UV intent is tracked; fallback diagnostics are required when a shader path cannot bind the requested UV set." }
11
+ { extension: "texture-transform", support: "supported", diagnostic: "Texture transforms are runtime per-slot uniforms; root texTransforms pass-through is browser-proven (tests/browser/root-textured-c1.spec.ts)." },
12
+ { extension: "multi-uv", support: "bounded", diagnostic: "Multiple UV sets are root-bound with per-resource fallback diagnostics when geometry carries no uv1 (cylinder/torus/capsule/custom stay scalar with warnings); bounded by design (tests/browser/root-textured-c1.spec.ts)." }
13
13
  ];
14
14
  export function getExternalParityMaterialExtensionState(extension) {
15
15
  return EXTERNAL_PARITY_MATERIAL_EXTENSION_SUPPORT.find((entry) => entry.extension === extension);
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialExtensions.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/materials/MaterialExtensions.ts"],"names":[],"mappings":"AAmBA,MAAM,CAAC,MAAM,0CAA0C,GAAoD;IACzG,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,0FAA0F,EAAE;IACtJ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,8GAA8G,EAAE;IACtK,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,8EAA8E,EAAE;IACzI,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,kGAAkG,EAAE;IACjK,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,qGAAqG,EAAE;IAC9J,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,mEAAmE,EAAE;IACzH,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,0GAA0G,EAAE;IACvK,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oFAAoF,EAAE;IAClJ,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,wEAAwE,EAAE;IAC9I,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,kEAAkE,EAAE;IACxI,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,uHAAuH,EAAE;CACnL,CAAC;AAEF,MAAM,UAAU,uCAAuC,CAAC,SAA0C;IAChG,OAAO,0CAA0C,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAE,CAAC;AACpG,CAAC;AAED,MAAM,UAAU,gDAAgD,CAC9D,SAAqD;IAErD,OAAO,SAAS,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"MaterialExtensions.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/materials/MaterialExtensions.ts"],"names":[],"mappings":"AAmBA,MAAM,CAAC,MAAM,0CAA0C,GAAoD;IACzG,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,0FAA0F,EAAE;IACtJ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,8GAA8G,EAAE;IACtK,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,8EAA8E,EAAE;IACzI,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,kGAAkG,EAAE;IACjK,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,qGAAqG,EAAE;IAC9J,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,mEAAmE,EAAE;IACzH,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,uUAAuU,EAAE;IACpY,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oFAAoF,EAAE;IAClJ,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,wEAAwE,EAAE;IAC9I,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,+IAA+I,EAAE;IACrN,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,4NAA4N,EAAE;CACxR,CAAC;AAEF,MAAM,UAAU,uCAAuC,CAAC,SAA0C;IAChG,OAAO,0CAA0C,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAE,CAAC;AACpG,CAAC;AAED,MAAM,UAAU,gDAAgD,CAC9D,SAAqD;IAErD,OAAO,SAAS,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;AAChE,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Native bloom pyramid planning (muse3jsparity-PRD A1).
3
+ *
4
+ * Pure, unit-tested math for the GPU bloom mip chain: mip sizes,
5
+ * energy-preserving per-mip weights, and target byte accounting. The WebGL2
6
+ * execution lives in `WebGL2Device.executeNativeBloomPyramidPasses`.
7
+ */
8
+ export type BloomQualityPreset = "performance" | "balanced" | "cinematic";
9
+ export interface BloomPyramidMip {
10
+ readonly width: number;
11
+ readonly height: number;
12
+ }
13
+ export interface BloomPyramidPlan {
14
+ readonly quality: BloomQualityPreset;
15
+ /** 1 for performance (legacy single-scale path), 3 for balanced, 5 for cinematic. */
16
+ readonly mipCount: number;
17
+ /** mip[0] is half resolution; each subsequent mip halves again (min 1x1). */
18
+ readonly mips: readonly BloomPyramidMip[];
19
+ /** Per-mip composite weights; always sum to exactly 1 (energy-preserving). */
20
+ readonly weights: readonly number[];
21
+ readonly halfFloat: boolean;
22
+ readonly targetBytes: number;
23
+ }
24
+ export declare function normalizeBloomQualityPreset(value: unknown): BloomQualityPreset;
25
+ export declare function resolveBloomPyramidPlan(sourceWidth: number, sourceHeight: number, quality: BloomQualityPreset, hdr: boolean): BloomPyramidPlan;
26
+ /**
27
+ * Resolve a widening Gaussian radius for each mip while preserving the
28
+ * authored radius as the quality control. The cinematic reference profile at
29
+ * authored radius 4 follows [6, 10, 14, 16, 16]; smaller authored radii scale
30
+ * the same profile instead of applying one narrow box kernel to every mip.
31
+ */
32
+ export declare function resolveBloomPyramidBlurRadii(plan: BloomPyramidPlan, authoredRadius: number): number[];
33
+ /** Energy-preserving mip gain: normalized per-mip weights always sum to 1. */
34
+ export declare function bloomPyramidCompositeGain(plan: BloomPyramidPlan): number;
35
+ /**
36
+ * Global multiscale response applied after the normalized mip composite.
37
+ * This is deliberately separate from the energy-preserving weights: authored
38
+ * strength remains one control, while balanced/cinematic recover the visual
39
+ * response of a multi-mip bloom stack instead of becoming weaker as mips are
40
+ * normalized. The cinematic response is calibrated against the frozen r185
41
+ * ACES/sRGB workload; keeping it explicit makes the measured response auditable.
42
+ */
43
+ export declare function resolveBloomPyramidResponseGain(plan: BloomPyramidPlan): number;
44
+ //# sourceMappingURL=NativeBloomPyramid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeBloomPyramid.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/NativeBloomPyramid.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,UAAU,GAAG,WAAW,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,qFAAqF;IACrF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,IAAI,EAAE,SAAS,eAAe,EAAE,CAAC;IAC1C,8EAA8E;IAC9E,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAOD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,CAI9E;AAED,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,kBAAkB,EAC3B,GAAG,EAAE,OAAO,GACX,gBAAgB,CA8BlB;AAGD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,EAAE,CAQrG;AAED,8EAA8E;AAC9E,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAExE;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAG9E"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Native bloom pyramid planning (muse3jsparity-PRD A1).
3
+ *
4
+ * Pure, unit-tested math for the GPU bloom mip chain: mip sizes,
5
+ * energy-preserving per-mip weights, and target byte accounting. The WebGL2
6
+ * execution lives in `WebGL2Device.executeNativeBloomPyramidPasses`.
7
+ */
8
+ const PYRAMID_WEIGHTS = {
9
+ balanced: [0.55, 0.3, 0.15],
10
+ cinematic: [0.4, 0.25, 0.16, 0.11, 0.08],
11
+ };
12
+ export function normalizeBloomQualityPreset(value) {
13
+ if (value === undefined)
14
+ return "performance";
15
+ if (value === "performance" || value === "balanced" || value === "cinematic")
16
+ return value;
17
+ throw new Error(`Bloom quality must be one of performance|balanced|cinematic, received ${String(value)}.`);
18
+ }
19
+ export function resolveBloomPyramidPlan(sourceWidth, sourceHeight, quality, hdr) {
20
+ if (!Number.isInteger(sourceWidth) || sourceWidth <= 0) {
21
+ throw new Error(`Bloom pyramid source width must be a positive integer, received ${String(sourceWidth)}.`);
22
+ }
23
+ if (!Number.isInteger(sourceHeight) || sourceHeight <= 0) {
24
+ throw new Error(`Bloom pyramid source height must be a positive integer, received ${String(sourceHeight)}.`);
25
+ }
26
+ const halfFloat = hdr || quality === "cinematic";
27
+ if (quality === "performance") {
28
+ return {
29
+ quality,
30
+ mipCount: 1,
31
+ mips: [{ width: sourceWidth, height: sourceHeight }],
32
+ weights: [1],
33
+ halfFloat,
34
+ targetBytes: sourceWidth * sourceHeight * 4 * (halfFloat ? 2 : 1),
35
+ };
36
+ }
37
+ const weights = PYRAMID_WEIGHTS[quality];
38
+ const mips = [];
39
+ let width = Math.max(1, Math.ceil(sourceWidth / 2));
40
+ let height = Math.max(1, Math.ceil(sourceHeight / 2));
41
+ for (let index = 0; index < weights.length; index += 1) {
42
+ mips.push({ width, height });
43
+ width = Math.max(1, Math.ceil(width / 2));
44
+ height = Math.max(1, Math.ceil(height / 2));
45
+ }
46
+ const bytesPerChannel = halfFloat ? 2 : 1;
47
+ const targetBytes = mips.reduce((total, mip) => total + mip.width * mip.height * 4 * bytesPerChannel, 0);
48
+ return { quality, mipCount: weights.length, mips, weights, halfFloat, targetBytes };
49
+ }
50
+ /**
51
+ * Resolve a widening Gaussian radius for each mip while preserving the
52
+ * authored radius as the quality control. The cinematic reference profile at
53
+ * authored radius 4 follows [6, 10, 14, 16, 16]; smaller authored radii scale
54
+ * the same profile instead of applying one narrow box kernel to every mip.
55
+ */
56
+ export function resolveBloomPyramidBlurRadii(plan, authoredRadius) {
57
+ if (!Number.isInteger(authoredRadius) || authoredRadius < 0 || authoredRadius > 16) {
58
+ throw new Error(`Bloom pyramid radius must be an integer in [0, 16], received ${String(authoredRadius)}.`);
59
+ }
60
+ if (plan.quality === "performance")
61
+ return [authoredRadius];
62
+ const reference = plan.quality === "balanced" ? [6, 10, 14] : [6, 10, 14, 18, 22];
63
+ if (authoredRadius === 0)
64
+ return reference.map(() => 0);
65
+ return reference.map((radius) => Math.max(1, Math.min(16, Math.round(radius * authoredRadius / 4))));
66
+ }
67
+ /** Energy-preserving mip gain: normalized per-mip weights always sum to 1. */
68
+ export function bloomPyramidCompositeGain(plan) {
69
+ return plan.weights.reduce((total, weight) => total + weight, 0);
70
+ }
71
+ /**
72
+ * Global multiscale response applied after the normalized mip composite.
73
+ * This is deliberately separate from the energy-preserving weights: authored
74
+ * strength remains one control, while balanced/cinematic recover the visual
75
+ * response of a multi-mip bloom stack instead of becoming weaker as mips are
76
+ * normalized. The cinematic response is calibrated against the frozen r185
77
+ * ACES/sRGB workload; keeping it explicit makes the measured response auditable.
78
+ */
79
+ export function resolveBloomPyramidResponseGain(plan) {
80
+ if (plan.quality === "performance")
81
+ return 1;
82
+ return plan.quality === "balanced" ? 7 : 17;
83
+ }
84
+ //# sourceMappingURL=NativeBloomPyramid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeBloomPyramid.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/NativeBloomPyramid.ts"],"names":[],"mappings":"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"}
@@ -45,8 +45,17 @@ export declare function readBloomBrightThresholdLut(lut: Uint8Array, red: number
45
45
  *
46
46
  * Texel `(source, blurred)` stores `clampByte(source + blurred * intensity)` in every color
47
47
  * channel. The CPU composite depends on nothing else, so the table is exact by construction.
48
+ *
49
+ * With `options.shoulder` in (0, 1], the hard clamp is replaced by a smooth
50
+ * highlight shoulder baked into the same table (still exact by construction):
51
+ * `out = 255 * (1 - exp(-linear * c)) / (1 - exp(-maxLinear * c))` with
52
+ * `c = (1 + shoulder * 3) / 255` and `maxLinear = 255 * (1 + intensity)`, so
53
+ * full-scale input still maps to 255 while mid-highlights roll off instead of
54
+ * clipping. `shoulder: 0` (default) keeps the legacy clamp byte-for-byte.
48
55
  */
49
- export declare function createBloomCompositeLut(intensity: number): Uint8Array;
56
+ export declare function createBloomCompositeLut(intensity: number, options?: {
57
+ readonly shoulder?: number;
58
+ }): Uint8Array;
50
59
  /**
51
60
  * Builds the outline blend table for a fixed color and combined alpha.
52
61
  *
@@ -1 +1 @@
1
- {"version":3,"file":"NativeLdrEffectLuts.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/NativeLdrEffectLuts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,mEAAmE;AACnE,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,oEAAoE;AACpE,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,yEAAyE;AACzE,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,4DAA4D;AAC5D,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAc,CAAC;AAE9C,4FAA4F;AAC5F,eAAO,MAAM,kBAAkB,QAAU,CAAC;AAK1C;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAmB3E;AAED,sEAAsE;AACtE,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAS9G;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAiBrE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAcjH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG;IAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAcA;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAErF;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7D,OAAO,CAWT"}
1
+ {"version":3,"file":"NativeLdrEffectLuts.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/NativeLdrEffectLuts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,mEAAmE;AACnE,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,oEAAoE;AACpE,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,yEAAyE;AACzE,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,4DAA4D;AAC5D,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAc,CAAC;AAE9C,4FAA4F;AAC5F,eAAO,MAAM,kBAAkB,QAAU,CAAC;AAK1C;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAmB3E;AAED,sEAAsE;AACtE,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAS9G;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GAC3C,UAAU,CA4BZ;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAcjH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG;IAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAcA;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAErF;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7D,OAAO,CAWT"}
@@ -76,16 +76,33 @@ export function readBloomBrightThresholdLut(lut, red, green, blue) {
76
76
  *
77
77
  * Texel `(source, blurred)` stores `clampByte(source + blurred * intensity)` in every color
78
78
  * channel. The CPU composite depends on nothing else, so the table is exact by construction.
79
+ *
80
+ * With `options.shoulder` in (0, 1], the hard clamp is replaced by a smooth
81
+ * highlight shoulder baked into the same table (still exact by construction):
82
+ * `out = 255 * (1 - exp(-linear * c)) / (1 - exp(-maxLinear * c))` with
83
+ * `c = (1 + shoulder * 3) / 255` and `maxLinear = 255 * (1 + intensity)`, so
84
+ * full-scale input still maps to 255 while mid-highlights roll off instead of
85
+ * clipping. `shoulder: 0` (default) keeps the legacy clamp byte-for-byte.
79
86
  */
80
- export function createBloomCompositeLut(intensity) {
87
+ export function createBloomCompositeLut(intensity, options = {}) {
81
88
  if (!Number.isFinite(intensity) || intensity < 0) {
82
89
  throw new Error("Bloom intensity must be finite and non-negative.");
83
90
  }
91
+ const shoulder = options.shoulder ?? 0;
92
+ if (!Number.isFinite(shoulder) || shoulder < 0 || shoulder > 1) {
93
+ throw new Error("Bloom composite shoulder must be finite and in [0, 1].");
94
+ }
84
95
  const lut = new Uint8Array(BLOOM_COMPOSITE_LUT_SIZE * BLOOM_COMPOSITE_LUT_SIZE * 4);
96
+ const knee = shoulder <= 0 ? 0 : (1 + shoulder * 3) / 255;
97
+ const maxLinear = 255 * (1 + intensity);
98
+ const kneeNormalization = knee <= 0 ? 1 : 1 - Math.exp(-maxLinear * knee);
85
99
  for (let blurred = 0; blurred < BLOOM_COMPOSITE_LUT_SIZE; blurred += 1) {
86
100
  const boost = blurred * intensity;
87
101
  for (let source = 0; source < BLOOM_COMPOSITE_LUT_SIZE; source += 1) {
88
- const value = clampByte(source + boost);
102
+ const linear = source + boost;
103
+ const value = knee <= 0
104
+ ? clampByte(linear)
105
+ : Math.round((255 * (1 - Math.exp(-linear * knee))) / kneeNormalization);
89
106
  const offset = (blurred * BLOOM_COMPOSITE_LUT_SIZE + source) * 4;
90
107
  lut[offset] = value;
91
108
  lut[offset + 1] = value;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeLdrEffectLuts.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/NativeLdrEffectLuts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NativeLdrEffectLuts.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/NativeLdrEffectLuts.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  export { PostProcessComposer, createPostProcessCapabilityReport } from "./EffectComposer.js";
2
+ export { bloomPyramidCompositeGain, normalizeBloomQualityPreset, resolveBloomPyramidPlan, } from "./NativeBloomPyramid.js";
3
+ export type { BloomPyramidMip, BloomPyramidPlan, BloomQualityPreset } from "./NativeBloomPyramid.js";
2
4
  export type { PostProcessCapabilityReport, PostProcessComposerDiagnostics, PostProcessComposerOptions, PostProcessComposerPass, PostProcessComposerRenderOptions, PostProcessUnsupportedEffect } from "./EffectComposer.js";
3
5
  export { CINEMATIC_POSTPROCESS_EFFECT_IDS, analyzeCinematicPostprocessClarity, createCinematicDiagnosticsReport } from "./CinematicDiagnostics.js";
4
6
  export type { CinematicCapabilityArea, CinematicCapabilityEntry, CinematicCapabilityStatus, CinematicDiagnosticId, CinematicDiagnosticsBackendInfo, CinematicDiagnosticsReport, CinematicPostprocessClarityFinding, CinematicPostprocessClarityFindingId, CinematicPostprocessClarityInput, CinematicPostprocessClarityReport, CinematicPostprocessClaritySeverity, CinematicPostprocessClarityStatus, CinematicPostprocessFrameMetrics, CinematicPostprocessPipelineDescriptor, CinematicPostProcessEffectId } from "./CinematicDiagnostics.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AAC1F,YAAY,EACV,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,uBAAuB,EACvB,gCAAgC,EAChC,4BAA4B,EAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gCAAgC,EAAE,kCAAkC,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAChJ,YAAY,EACV,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,kCAAkC,EAClC,oCAAoC,EACpC,gCAAgC,EAChC,iCAAiC,EACjC,mCAAmC,EACnC,iCAAiC,EACjC,gCAAgC,EAChC,sCAAsC,EACtC,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,iCAAiC,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACxF,YAAY,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,YAAY,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAClG,YAAY,EACV,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,uBAAuB,EACvB,gCAAgC,EAChC,4BAA4B,EAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gCAAgC,EAAE,kCAAkC,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAChJ,YAAY,EACV,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,kCAAkC,EAClC,oCAAoC,EACpC,gCAAgC,EAChC,iCAAiC,EACjC,mCAAmC,EACnC,iCAAiC,EACjC,gCAAgC,EAChC,sCAAsC,EACtC,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,iCAAiC,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACxF,YAAY,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,YAAY,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export { PostProcessComposer, createPostProcessCapabilityReport } from "./EffectComposer.js";
2
+ export { bloomPyramidCompositeGain, normalizeBloomQualityPreset, resolveBloomPyramidPlan, } from "./NativeBloomPyramid.js";
2
3
  export { CINEMATIC_POSTPROCESS_EFFECT_IDS, analyzeCinematicPostprocessClarity, createCinematicDiagnosticsReport } from "./CinematicDiagnostics.js";
3
4
  export { createExternalParityBloomEvidence, runExternalParityBloom } from "./BloomPass.js";
4
5
  export { runExternalParityColorGrade } from "./ColorGradingPass.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AAS1F,OAAO,EAAE,gCAAgC,EAAE,kCAAkC,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAmBhJ,OAAO,EAAE,iCAAiC,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAExF,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/postprocess/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAU9B,OAAO,EAAE,gCAAgC,EAAE,kCAAkC,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAmBhJ,OAAO,EAAE,iCAAiC,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAExF,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
@@ -77,5 +77,27 @@ export interface ProductionEnvironmentLightingResources {
77
77
  export declare function parseProductionRadianceHDR(buffer: ArrayBuffer | Uint8Array): ProductionRadianceHDR;
78
78
  export declare function createProductionPbrHdrPipelineFromRadiance(buffer: ArrayBuffer | Uint8Array, options: ProductionPbrHdrPipelineOptions): ProductionPbrHdrPipeline;
79
79
  export declare function createProductionEnvironmentLightingResources(pipeline: ProductionPbrHdrPipeline): ProductionEnvironmentLightingResources;
80
+ export interface DualProbeEnvironmentLightingOptions {
81
+ /** Diffuse/illumination source: owns the roughest cubemap mip the diffuse term samples. */
82
+ readonly illumination: ProductionPbrHdrPipeline;
83
+ /** Reflection source: owns the sharper mips the roughness-scaled specular term samples. */
84
+ readonly reflection: ProductionPbrHdrPipeline;
85
+ /** Diffuse probe gain; defaults to the illumination pipeline intensity. */
86
+ readonly illuminationIntensity?: number;
87
+ /** Specular probe gain; defaults to the reflection pipeline intensity. */
88
+ readonly reflectionIntensity?: number;
89
+ readonly id?: string;
90
+ }
91
+ /**
92
+ * B3 dual-probe composition (muse3jsparity-PRD). The shader exposes a single
93
+ * cube sampler whose diffuse term reads the roughest mip and whose specular
94
+ * term reads roughness-scaled sharper mips — so reflection≠illumination is
95
+ * composed at the resource level: the roughest level comes from the
96
+ * illumination probe, every sharper level from the reflection probe. Both
97
+ * pyramids must share face size and mip count; mismatches throw instead of
98
+ * silently resampling. The BRDF LUT is material-side and probe-independent
99
+ * (reflection pipeline's copy is bound and documented as such).
100
+ */
101
+ export declare function createDualProbeEnvironmentLightingResources(options: DualProbeEnvironmentLightingOptions): ProductionEnvironmentLightingResources;
80
102
  export declare function createProductionToneMappingPolicy(overrides?: Partial<ProductionToneMappingPolicy>): ProductionToneMappingPolicy;
81
103
  //# sourceMappingURL=PBRHDRPipeline.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PBRHDRPipeline.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/production-runtime/PBRHDRPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PBRHDRPipeline.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/production-runtime/PBRHDRPipeline.ts"],"names":[],"mappings":"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"}
@@ -200,6 +200,131 @@ export function createProductionEnvironmentLightingResources(pipeline) {
200
200
  }
201
201
  };
202
202
  }
203
+ /**
204
+ * B3 dual-probe composition (muse3jsparity-PRD). The shader exposes a single
205
+ * cube sampler whose diffuse term reads the roughest mip and whose specular
206
+ * term reads roughness-scaled sharper mips — so reflection≠illumination is
207
+ * composed at the resource level: the roughest level comes from the
208
+ * illumination probe, every sharper level from the reflection probe. Both
209
+ * pyramids must share face size and mip count; mismatches throw instead of
210
+ * silently resampling. The BRDF LUT is material-side and probe-independent
211
+ * (reflection pipeline's copy is bound and documented as such).
212
+ */
213
+ export function createDualProbeEnvironmentLightingResources(options) {
214
+ const illuminationPmrem = options.illumination.cubemapPMREM;
215
+ const reflectionPmrem = options.reflection.cubemapPMREM;
216
+ if (illuminationPmrem.faceSize !== reflectionPmrem.faceSize) {
217
+ throw new Error(`Dual-probe cubemap face sizes differ (illumination ${illuminationPmrem.faceSize}, reflection ${reflectionPmrem.faceSize}); build both pipelines with the same cubemapFaceSize.`);
218
+ }
219
+ if (illuminationPmrem.mipCount !== reflectionPmrem.mipCount) {
220
+ throw new Error(`Dual-probe cubemap mip counts differ (illumination ${illuminationPmrem.mipCount}, reflection ${reflectionPmrem.mipCount}); build both pipelines with the same cubemapMipCount.`);
221
+ }
222
+ if (illuminationPmrem.levels.length !== reflectionPmrem.levels.length) {
223
+ throw new Error(`Dual-probe cubemap level counts differ (illumination ${illuminationPmrem.levels.length}, reflection ${reflectionPmrem.levels.length}).`);
224
+ }
225
+ const roughestMip = reflectionPmrem.mipCount - 1;
226
+ const composedLevels = reflectionPmrem.levels.map((level) => level.mip === roughestMip
227
+ ? { ...illuminationPmrem.levels[level.mip], mip: level.mip, roughness: level.roughness, faceSize: level.faceSize }
228
+ : level);
229
+ const composedPmrem = {
230
+ faceSize: reflectionPmrem.faceSize,
231
+ mipCount: reflectionPmrem.mipCount,
232
+ levels: composedLevels,
233
+ diagnostics: {
234
+ ...reflectionPmrem.diagnostics,
235
+ maxLinearValue: Math.max(illuminationPmrem.diagnostics.maxLinearValue, reflectionPmrem.diagnostics.maxLinearValue)
236
+ }
237
+ };
238
+ const id = options.id ?? `dual-probe-${options.illumination.id}-illumination-${options.reflection.id}-reflection`;
239
+ const illuminationIntensity = options.illuminationIntensity ?? options.illumination.intensity;
240
+ const reflectionIntensity = options.reflectionIntensity ?? options.reflection.intensity;
241
+ const reflectionResources = options.reflection.resources;
242
+ const environmentTexture = new Texture({
243
+ width: reflectionResources.base.width,
244
+ height: reflectionResources.base.height,
245
+ format: "rgba16f",
246
+ colorSpace: "linear",
247
+ label: `production-runtime-${id}-pmrem`,
248
+ mipLevels: options.reflection.environmentMipLevels
249
+ });
250
+ const brdfLutTexture = new Texture({
251
+ width: reflectionResources.brdfLut.width,
252
+ height: reflectionResources.brdfLut.height,
253
+ colorSpace: "linear",
254
+ label: `production-runtime-${id}-brdf-lut`,
255
+ data: reflectionResources.brdfLut.data
256
+ });
257
+ const environmentCubeTexture = new Texture({
258
+ width: composedPmrem.faceSize,
259
+ height: composedPmrem.faceSize,
260
+ dimension: "cube",
261
+ format: "rgba16f",
262
+ colorSpace: "linear",
263
+ label: `production-runtime-${id}-cubemap-pmrem`,
264
+ cubeFaces: CUBE_TEXTURE_FACES.map((face) => ({
265
+ face,
266
+ mipLevels: composedPmrem.levels.map((level) => {
267
+ const faceLevel = level.faces.find((candidate) => candidate.face === face);
268
+ if (!faceLevel) {
269
+ throw new Error(`Missing dual-probe cubemap PMREM face ${face} at mip ${level.mip}`);
270
+ }
271
+ return {
272
+ width: faceLevel.width,
273
+ height: faceLevel.height,
274
+ data: faceLevel.data
275
+ };
276
+ })
277
+ }))
278
+ });
279
+ return {
280
+ environmentTexture,
281
+ environmentCubeTexture,
282
+ brdfLutTexture,
283
+ lighting: {
284
+ color: [1, 1, 1],
285
+ intensity: 0.08,
286
+ proceduralMap: {
287
+ skyColor: [0.2, 0.24, 0.32],
288
+ horizonColor: [0.22, 0.2, 0.18],
289
+ groundColor: [0.03, 0.035, 0.045],
290
+ specularColor: [1, 1, 1],
291
+ intensity: 0.06,
292
+ specularIntensity: 0.1
293
+ },
294
+ environmentMapTexture: new TextureBinding({
295
+ name: "u_environmentMapTexture",
296
+ texture: environmentTexture,
297
+ sampler: new Sampler({ minFilter: "linear-mipmap-linear", magFilter: "linear", addressU: "repeat", addressV: "clamp-to-edge" }),
298
+ expectedColorSpace: "linear"
299
+ }),
300
+ environmentCubeMapTexture: new TextureBinding({
301
+ name: "u_environmentCubeMapTexture",
302
+ texture: environmentCubeTexture,
303
+ sampler: new Sampler({ minFilter: "linear-mipmap-linear", magFilter: "linear", addressU: "clamp-to-edge", addressV: "clamp-to-edge" }),
304
+ expectedColorSpace: "linear"
305
+ }),
306
+ // The public environment intensity is the IBL contract split per probe:
307
+ // diffuse follows illumination, specular follows reflection (same 1.1
308
+ // three.js parity factor as the single-probe path).
309
+ environmentMapIntensity: illuminationIntensity,
310
+ environmentMapSpecularIntensity: reflectionIntensity * 1.1,
311
+ environmentMapRotation: options.reflection.rotation,
312
+ environmentMapMipCount: composedPmrem.mipCount,
313
+ environmentMapEncoding: "linear",
314
+ environmentBrdfLutTexture: new TextureBinding({
315
+ name: "u_environmentBrdfLutTexture",
316
+ texture: brdfLutTexture,
317
+ sampler: new Sampler({ minFilter: "linear", magFilter: "linear", addressU: "clamp-to-edge", addressV: "clamp-to-edge" }),
318
+ expectedColorSpace: "linear"
319
+ })
320
+ },
321
+ dispose: () => {
322
+ environmentTexture.dispose();
323
+ environmentCubeTexture.dispose();
324
+ brdfLutTexture.dispose();
325
+ }
326
+ };
327
+ }
203
328
  export function createProductionToneMappingPolicy(overrides = {}) {
204
329
  const policy = { ...DEFAULT_TONE_MAPPING, ...overrides };
205
330
  if (!Number.isFinite(policy.exposure) || policy.exposure < 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"PBRHDRPipeline.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/production-runtime/PBRHDRPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PBRHDRPipeline.js","sourceRoot":"","sources":["../../../../../packages/rendering/src/production-runtime/PBRHDRPipeline.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,7 @@ export interface ProductionProductionRenderer {
87
87
  renderImportedAsset(input: ProductionRendererInput): ProductionRenderProof;
88
88
  getFeatures(): readonly ProductionRendererFeature[];
89
89
  getDiagnostics(): RenderDeviceDiagnostics;
90
+ getShadowEvidence?(): Readonly<Record<string, unknown>> | null;
90
91
  /**
91
92
  * WS-2.6 — device-loss subscription, when this renderer is backed by a device that can lose context.
92
93
  *