@aura3d/engine 4.6.1 → 4.7.0

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 (514) hide show
  1. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.d.ts +12 -0
  2. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.d.ts.map +1 -1
  3. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.js +26 -1
  4. package/dist/assets/asset-corpus/ProductionGLTFRenderPipeline.js.map +1 -1
  5. package/dist/assets/vfx/LICENSE.md +1 -0
  6. package/dist/assets/vfx/aura-vfx-1k.png +0 -0
  7. package/dist/assets/vfx/aura-vfx-2k.png +0 -0
  8. package/dist/aura3d-cli/admission/cubeLut.d.ts +18 -0
  9. package/dist/aura3d-cli/admission/cubeLut.d.ts.map +1 -0
  10. package/dist/aura3d-cli/admission/cubeLut.js +53 -0
  11. package/dist/aura3d-cli/admission/cubeLut.js.map +1 -0
  12. package/dist/aura3d-cli/asset-core-types.d.ts +7 -4
  13. package/dist/aura3d-cli/asset-core-types.d.ts.map +1 -1
  14. package/dist/aura3d-cli/cli-help.d.ts.map +1 -1
  15. package/dist/aura3d-cli/cli-help.js +7 -4
  16. package/dist/aura3d-cli/cli-help.js.map +1 -1
  17. package/dist/aura3d-cli/cli-options.d.ts +1 -1
  18. package/dist/aura3d-cli/cli-options.d.ts.map +1 -1
  19. package/dist/aura3d-cli/cli-options.js +2 -2
  20. package/dist/aura3d-cli/cli-options.js.map +1 -1
  21. package/dist/aura3d-cli/cli.js +3 -2
  22. package/dist/aura3d-cli/cli.js.map +1 -1
  23. package/dist/aura3d-cli/commands/assets/certifyCategories.d.ts +26 -0
  24. package/dist/aura3d-cli/commands/assets/certifyCategories.d.ts.map +1 -0
  25. package/dist/aura3d-cli/commands/assets/certifyCategories.js +31 -0
  26. package/dist/aura3d-cli/commands/assets/certifyCategories.js.map +1 -0
  27. package/dist/aura3d-cli/commands/assets/optimize.d.ts +66 -0
  28. package/dist/aura3d-cli/commands/assets/optimize.d.ts.map +1 -1
  29. package/dist/aura3d-cli/commands/assets/optimize.js +270 -1
  30. package/dist/aura3d-cli/commands/assets/optimize.js.map +1 -1
  31. package/dist/aura3d-cli/commands/assets/optimizeVerb.d.ts.map +1 -1
  32. package/dist/aura3d-cli/commands/assets/optimizeVerb.js +26 -1
  33. package/dist/aura3d-cli/commands/assets/optimizeVerb.js.map +1 -1
  34. package/dist/aura3d-cli/commands/evidence/judge.d.ts +50 -1
  35. package/dist/aura3d-cli/commands/evidence/judge.d.ts.map +1 -1
  36. package/dist/aura3d-cli/commands/evidence/judge.js +154 -6
  37. package/dist/aura3d-cli/commands/evidence/judge.js.map +1 -1
  38. package/dist/aura3d-cli/commands/prd05/index.js +1 -1
  39. package/dist/aura3d-cli/commands/prd05/index.js.map +1 -1
  40. package/dist/aura3d-cli/index.d.ts.map +1 -1
  41. package/dist/aura3d-cli/index.js +25 -9
  42. package/dist/aura3d-cli/index.js.map +1 -1
  43. package/dist/aura3d-cli/look/judge.d.ts +53 -5
  44. package/dist/aura3d-cli/look/judge.d.ts.map +1 -1
  45. package/dist/aura3d-cli/look/judge.js +226 -50
  46. package/dist/aura3d-cli/look/judge.js.map +1 -1
  47. package/dist/create-aura3d/index.js +1 -1
  48. package/dist/engine/agent-api/RootRuntimeSupport.d.ts +7 -0
  49. package/dist/engine/agent-api/RootRuntimeSupport.d.ts.map +1 -1
  50. package/dist/engine/agent-api/RootRuntimeSupport.js +7 -0
  51. package/dist/engine/agent-api/RootRuntimeSupport.js.map +1 -1
  52. package/dist/engine/agent-api/app/actorAnimationHandle.d.ts +2 -0
  53. package/dist/engine/agent-api/app/actorAnimationHandle.d.ts.map +1 -1
  54. package/dist/engine/agent-api/app/actorAnimationHandle.js +149 -2
  55. package/dist/engine/agent-api/app/actorAnimationHandle.js.map +1 -1
  56. package/dist/engine/agent-api/app/createAuraApp.d.ts.map +1 -1
  57. package/dist/engine/agent-api/app/createAuraApp.js +13 -1
  58. package/dist/engine/agent-api/app/createAuraApp.js.map +1 -1
  59. package/dist/engine/agent-api/app/frameLoop.d.ts.map +1 -1
  60. package/dist/engine/agent-api/app/frameLoop.js +4 -2
  61. package/dist/engine/agent-api/app/frameLoop.js.map +1 -1
  62. package/dist/engine/agent-api/camera/layers/cinematicBars.d.ts +2 -0
  63. package/dist/engine/agent-api/camera/layers/cinematicBars.d.ts.map +1 -1
  64. package/dist/engine/agent-api/camera/layers/cinematicBars.js +4 -0
  65. package/dist/engine/agent-api/camera/layers/cinematicBars.js.map +1 -1
  66. package/dist/engine/agent-api/compiler/compileScene.d.ts +11 -1
  67. package/dist/engine/agent-api/compiler/compileScene.d.ts.map +1 -1
  68. package/dist/engine/agent-api/compiler/compileScene.js +27 -1
  69. package/dist/engine/agent-api/compiler/compileScene.js.map +1 -1
  70. package/dist/engine/agent-api/compiler/customMaterial.d.ts +16 -5
  71. package/dist/engine/agent-api/compiler/customMaterial.d.ts.map +1 -1
  72. package/dist/engine/agent-api/compiler/customMaterial.js +149 -20
  73. package/dist/engine/agent-api/compiler/customMaterial.js.map +1 -1
  74. package/dist/engine/agent-api/compiler/environment.d.ts +57 -1
  75. package/dist/engine/agent-api/compiler/environment.d.ts.map +1 -1
  76. package/dist/engine/agent-api/compiler/environment.js +170 -5
  77. package/dist/engine/agent-api/compiler/environment.js.map +1 -1
  78. package/dist/engine/agent-api/compiler/fog.js +1 -1
  79. package/dist/engine/agent-api/compiler/fog.js.map +1 -1
  80. package/dist/engine/agent-api/compiler/lights.d.ts +92 -0
  81. package/dist/engine/agent-api/compiler/lights.d.ts.map +1 -1
  82. package/dist/engine/agent-api/compiler/lights.js +358 -1
  83. package/dist/engine/agent-api/compiler/lights.js.map +1 -1
  84. package/dist/engine/agent-api/compiler/observations.d.ts +34 -0
  85. package/dist/engine/agent-api/compiler/observations.d.ts.map +1 -1
  86. package/dist/engine/agent-api/compiler/observations.js +77 -5
  87. package/dist/engine/agent-api/compiler/observations.js.map +1 -1
  88. package/dist/engine/agent-api/compiler/postprocess.d.ts +10 -0
  89. package/dist/engine/agent-api/compiler/postprocess.d.ts.map +1 -1
  90. package/dist/engine/agent-api/compiler/postprocess.js +28 -7
  91. package/dist/engine/agent-api/compiler/postprocess.js.map +1 -1
  92. package/dist/engine/agent-api/compiler/renderInput.d.ts +2 -0
  93. package/dist/engine/agent-api/compiler/renderInput.d.ts.map +1 -1
  94. package/dist/engine/agent-api/compiler/renderInput.js +15 -2
  95. package/dist/engine/agent-api/compiler/renderInput.js.map +1 -1
  96. package/dist/engine/agent-api/compiler/renderer.d.ts +6 -0
  97. package/dist/engine/agent-api/compiler/renderer.d.ts.map +1 -1
  98. package/dist/engine/agent-api/compiler/renderer.js +14 -3
  99. package/dist/engine/agent-api/compiler/renderer.js.map +1 -1
  100. package/dist/engine/agent-api/diagnostics.d.ts +16 -0
  101. package/dist/engine/agent-api/diagnostics.d.ts.map +1 -1
  102. package/dist/engine/agent-api/diagnostics.js +45 -2
  103. package/dist/engine/agent-api/diagnostics.js.map +1 -1
  104. package/dist/engine/agent-api/index.d.ts +2 -0
  105. package/dist/engine/agent-api/index.d.ts.map +1 -1
  106. package/dist/engine/agent-api/index.js +3 -0
  107. package/dist/engine/agent-api/index.js.map +1 -1
  108. package/dist/engine/agent-api/looks/lookPresets.d.ts +2 -0
  109. package/dist/engine/agent-api/looks/lookPresets.d.ts.map +1 -1
  110. package/dist/engine/agent-api/looks/lookPresets.js.map +1 -1
  111. package/dist/engine/agent-api/looks/looks.d.ts +12 -2
  112. package/dist/engine/agent-api/looks/looks.d.ts.map +1 -1
  113. package/dist/engine/agent-api/looks/looks.js +365 -65
  114. package/dist/engine/agent-api/looks/looks.js.map +1 -1
  115. package/dist/engine/agent-api/nodes/builder.d.ts +8 -0
  116. package/dist/engine/agent-api/nodes/builder.d.ts.map +1 -1
  117. package/dist/engine/agent-api/nodes/builder.js +15 -0
  118. package/dist/engine/agent-api/nodes/builder.js.map +1 -1
  119. package/dist/engine/agent-api/nodes/effects.composite.d.ts +13 -9
  120. package/dist/engine/agent-api/nodes/effects.composite.d.ts.map +1 -1
  121. package/dist/engine/agent-api/nodes/effects.d.ts +65 -14
  122. package/dist/engine/agent-api/nodes/effects.d.ts.map +1 -1
  123. package/dist/engine/agent-api/nodes/effects.js +49 -16
  124. package/dist/engine/agent-api/nodes/effects.js.map +1 -1
  125. package/dist/engine/agent-api/nodes/effects.post.d.ts +62 -5
  126. package/dist/engine/agent-api/nodes/effects.post.d.ts.map +1 -1
  127. package/dist/engine/agent-api/nodes/effects.post.js +30 -17
  128. package/dist/engine/agent-api/nodes/effects.post.js.map +1 -1
  129. package/dist/engine/agent-api/nodes/effects.toon.d.ts +65 -1
  130. package/dist/engine/agent-api/nodes/effects.toon.d.ts.map +1 -1
  131. package/dist/engine/agent-api/nodes/effects.toon.js +186 -23
  132. package/dist/engine/agent-api/nodes/effects.toon.js.map +1 -1
  133. package/dist/engine/agent-api/nodes/groups.d.ts.map +1 -1
  134. package/dist/engine/agent-api/nodes/groups.js +2 -2
  135. package/dist/engine/agent-api/nodes/groups.js.map +1 -1
  136. package/dist/engine/agent-api/nodes/instances.d.ts +130 -90
  137. package/dist/engine/agent-api/nodes/instances.d.ts.map +1 -1
  138. package/dist/engine/agent-api/nodes/instances.js +192 -48
  139. package/dist/engine/agent-api/nodes/instances.js.map +1 -1
  140. package/dist/engine/agent-api/nodes/material.d.ts +8 -1
  141. package/dist/engine/agent-api/nodes/material.d.ts.map +1 -1
  142. package/dist/engine/agent-api/nodes/material.js +82 -0
  143. package/dist/engine/agent-api/nodes/material.js.map +1 -1
  144. package/dist/engine/agent-api/nodes/outlineTargets.d.ts +16 -0
  145. package/dist/engine/agent-api/nodes/outlineTargets.d.ts.map +1 -0
  146. package/dist/engine/agent-api/nodes/outlineTargets.js +46 -0
  147. package/dist/engine/agent-api/nodes/outlineTargets.js.map +1 -0
  148. package/dist/engine/agent-api/nodes/scene.d.ts.map +1 -1
  149. package/dist/engine/agent-api/nodes/scene.js +2 -2
  150. package/dist/engine/agent-api/nodes/scene.js.map +1 -1
  151. package/dist/engine/agent-api/nodes/sky.d.ts +23 -6
  152. package/dist/engine/agent-api/nodes/sky.d.ts.map +1 -1
  153. package/dist/engine/agent-api/nodes/sky.js +2 -0
  154. package/dist/engine/agent-api/nodes/sky.js.map +1 -1
  155. package/dist/engine/agent-api/nodes/types/runtime.d.ts +28 -1
  156. package/dist/engine/agent-api/nodes/types/runtime.d.ts.map +1 -1
  157. package/dist/engine/agent-api/nodes/types.d.ts +71 -3
  158. package/dist/engine/agent-api/nodes/types.d.ts.map +1 -1
  159. package/dist/engine/agent-api/performanceEvidence.js +7 -2
  160. package/dist/engine/agent-api/performanceEvidence.js.map +1 -1
  161. package/dist/engine/agent-api/postBridge.d.ts +75 -3
  162. package/dist/engine/agent-api/postBridge.d.ts.map +1 -1
  163. package/dist/engine/agent-api/postBridge.js +436 -33
  164. package/dist/engine/agent-api/postBridge.js.map +1 -1
  165. package/dist/engine/agent-api/postPresets.d.ts +8 -4
  166. package/dist/engine/agent-api/postPresets.d.ts.map +1 -1
  167. package/dist/engine/agent-api/postPresets.js +12 -11
  168. package/dist/engine/agent-api/postPresets.js.map +1 -1
  169. package/dist/engine/agent-api/publishedUnion.d.ts +7 -4
  170. package/dist/engine/agent-api/publishedUnion.d.ts.map +1 -1
  171. package/dist/engine/agent-api/publishedUnion.js +1 -1
  172. package/dist/engine/agent-api/publishedUnion.js.map +1 -1
  173. package/dist/engine/agent-api/rendererDiagnostics.js +4 -6
  174. package/dist/engine/agent-api/rendererDiagnostics.js.map +1 -1
  175. package/dist/engine/agent-api/vfx/atmosphere-api.d.ts +2 -4
  176. package/dist/engine/agent-api/vfx/atmosphere-api.d.ts.map +1 -1
  177. package/dist/engine/agent-api/vfx/atmosphere-api.js +2 -1
  178. package/dist/engine/agent-api/vfx/atmosphere-api.js.map +1 -1
  179. package/dist/engine/agent-api/vfx/effects-api.d.ts +3 -0
  180. package/dist/engine/agent-api/vfx/effects-api.d.ts.map +1 -1
  181. package/dist/engine/agent-api/vfx/effects-api.js +337 -74
  182. package/dist/engine/agent-api/vfx/effects-api.js.map +1 -1
  183. package/dist/engine/agent-api/world/flags.d.ts +33 -3
  184. package/dist/engine/agent-api/world/flags.d.ts.map +1 -1
  185. package/dist/engine/agent-api/world/flags.js +44 -12
  186. package/dist/engine/agent-api/world/flags.js.map +1 -1
  187. package/dist/engine/agent-api/world/index.d.ts +10 -1
  188. package/dist/engine/agent-api/world/index.d.ts.map +1 -1
  189. package/dist/engine/agent-api/world/index.js +11 -2
  190. package/dist/engine/agent-api/world/index.js.map +1 -1
  191. package/dist/engine/agent-api/world/scatter.d.ts +50 -3
  192. package/dist/engine/agent-api/world/scatter.d.ts.map +1 -1
  193. package/dist/engine/agent-api/world/scatter.js +93 -7
  194. package/dist/engine/agent-api/world/scatter.js.map +1 -1
  195. package/dist/engine/agent-api/world/terrain.d.ts +8 -0
  196. package/dist/engine/agent-api/world/terrain.d.ts.map +1 -1
  197. package/dist/engine/agent-api/world/terrain.js +6 -1
  198. package/dist/engine/agent-api/world/terrain.js.map +1 -1
  199. package/dist/engine/contracts/animation.d.ts +30 -12
  200. package/dist/engine/contracts/animation.d.ts.map +1 -1
  201. package/dist/engine/contracts/animation.js +2 -0
  202. package/dist/engine/contracts/animation.js.map +1 -1
  203. package/dist/engine/contracts/art.d.ts +1 -1
  204. package/dist/engine/contracts/art.d.ts.map +1 -1
  205. package/dist/engine/contracts/atmosphere.d.ts +43 -9
  206. package/dist/engine/contracts/atmosphere.d.ts.map +1 -1
  207. package/dist/engine/contracts/atmosphere.js.map +1 -1
  208. package/dist/engine/contracts/camera.d.ts +8 -2
  209. package/dist/engine/contracts/camera.d.ts.map +1 -1
  210. package/dist/engine/contracts/camera.js +14 -3
  211. package/dist/engine/contracts/camera.js.map +1 -1
  212. package/dist/engine/contracts/effects.d.ts +83 -37
  213. package/dist/engine/contracts/effects.d.ts.map +1 -1
  214. package/dist/engine/contracts/effects.js +2 -1
  215. package/dist/engine/contracts/effects.js.map +1 -1
  216. package/dist/engine/contracts/flags.d.ts.map +1 -1
  217. package/dist/engine/contracts/flags.js +29 -4
  218. package/dist/engine/contracts/flags.js.map +1 -1
  219. package/dist/engine/contracts/lighting.d.ts +33 -1
  220. package/dist/engine/contracts/lighting.d.ts.map +1 -1
  221. package/dist/engine/contracts/lighting.js +13 -1
  222. package/dist/engine/contracts/lighting.js.map +1 -1
  223. package/dist/engine/contracts/looks.d.ts +57 -1
  224. package/dist/engine/contracts/looks.d.ts.map +1 -1
  225. package/dist/engine/contracts/looks.js.map +1 -1
  226. package/dist/engine/contracts/materials.d.ts +25 -0
  227. package/dist/engine/contracts/materials.d.ts.map +1 -1
  228. package/dist/engine/contracts/materials.js +4 -1
  229. package/dist/engine/contracts/materials.js.map +1 -1
  230. package/dist/engine/contracts/post.d.ts +14 -0
  231. package/dist/engine/contracts/post.d.ts.map +1 -1
  232. package/dist/engine/contracts/post.js +2 -0
  233. package/dist/engine/contracts/post.js.map +1 -1
  234. package/dist/engine/instances-model/CrowdKit.d.ts +231 -0
  235. package/dist/engine/instances-model/CrowdKit.d.ts.map +1 -0
  236. package/dist/engine/instances-model/CrowdKit.js +496 -0
  237. package/dist/engine/instances-model/CrowdKit.js.map +1 -0
  238. package/dist/engine/lanes/prd02.d.ts +36 -2
  239. package/dist/engine/lanes/prd02.d.ts.map +1 -1
  240. package/dist/engine/lanes/prd02.js +120 -7
  241. package/dist/engine/lanes/prd02.js.map +1 -1
  242. package/dist/engine/lanes/prd03.d.ts.map +1 -1
  243. package/dist/engine/lanes/prd03.js +9 -1
  244. package/dist/engine/lanes/prd03.js.map +1 -1
  245. package/dist/engine/lanes/prd07.d.ts.map +1 -1
  246. package/dist/engine/lanes/prd07.js +12 -7
  247. package/dist/engine/lanes/prd07.js.map +1 -1
  248. package/dist/engine/production-runtime/GlbResourceCache.d.ts +140 -0
  249. package/dist/engine/production-runtime/GlbResourceCache.d.ts.map +1 -0
  250. package/dist/engine/production-runtime/GlbResourceCache.js +237 -0
  251. package/dist/engine/production-runtime/GlbResourceCache.js.map +1 -0
  252. package/dist/engine/production-runtime/ModelMaterialOverrides.d.ts +53 -2
  253. package/dist/engine/production-runtime/ModelMaterialOverrides.d.ts.map +1 -1
  254. package/dist/engine/production-runtime/ModelMaterialOverrides.js +142 -1
  255. package/dist/engine/production-runtime/ModelMaterialOverrides.js.map +1 -1
  256. package/dist/engine/production-runtime/TypedGLBActor.d.ts +55 -0
  257. package/dist/engine/production-runtime/TypedGLBActor.d.ts.map +1 -1
  258. package/dist/engine/production-runtime/TypedGLBActor.js +205 -3
  259. package/dist/engine/production-runtime/TypedGLBActor.js.map +1 -1
  260. package/dist/engine/production-runtime/actor/ModelTextureShare.d.ts.map +1 -1
  261. package/dist/engine/production-runtime/actor/ModelTextureShare.js +5 -2
  262. package/dist/engine/production-runtime/actor/ModelTextureShare.js.map +1 -1
  263. package/dist/engine/production-runtime/actor/TypedGLBActorMaterials.d.ts.map +1 -1
  264. package/dist/engine/production-runtime/actor/TypedGLBActorMaterials.js +10 -1
  265. package/dist/engine/production-runtime/actor/TypedGLBActorMaterials.js.map +1 -1
  266. package/dist/engine/production-runtime/effects/EffectNodeLowering.d.ts +55 -0
  267. package/dist/engine/production-runtime/effects/EffectNodeLowering.d.ts.map +1 -1
  268. package/dist/engine/production-runtime/effects/EffectNodeLowering.js +71 -7
  269. package/dist/engine/production-runtime/effects/EffectNodeLowering.js.map +1 -1
  270. package/dist/engine/production-runtime/effects/FlipbookAtlas.d.ts +85 -0
  271. package/dist/engine/production-runtime/effects/FlipbookAtlas.d.ts.map +1 -1
  272. package/dist/engine/production-runtime/effects/FlipbookAtlas.js +164 -0
  273. package/dist/engine/production-runtime/effects/FlipbookAtlas.js.map +1 -1
  274. package/dist/engine/production-runtime/effects/LiveAtmosphere.d.ts +37 -6
  275. package/dist/engine/production-runtime/effects/LiveAtmosphere.d.ts.map +1 -1
  276. package/dist/engine/production-runtime/effects/LiveAtmosphere.js +93 -10
  277. package/dist/engine/production-runtime/effects/LiveAtmosphere.js.map +1 -1
  278. package/dist/engine/production-runtime/effects/ProductionEffectSystem.d.ts +71 -1
  279. package/dist/engine/production-runtime/effects/ProductionEffectSystem.d.ts.map +1 -1
  280. package/dist/engine/production-runtime/effects/ProductionEffectSystem.js +356 -6
  281. package/dist/engine/production-runtime/effects/ProductionEffectSystem.js.map +1 -1
  282. package/dist/engine/production-runtime/world/WaterRuntime.d.ts +9 -0
  283. package/dist/engine/production-runtime/world/WaterRuntime.d.ts.map +1 -1
  284. package/dist/engine/production-runtime/world/WaterRuntime.js +27 -11
  285. package/dist/engine/production-runtime/world/WaterRuntime.js.map +1 -1
  286. package/dist/engine/production-runtime/world/WorldFramePasses.d.ts +11 -1
  287. package/dist/engine/production-runtime/world/WorldFramePasses.d.ts.map +1 -1
  288. package/dist/engine/production-runtime/world/WorldFramePasses.js +37 -1
  289. package/dist/engine/production-runtime/world/WorldFramePasses.js.map +1 -1
  290. package/dist/engine/public/index.d.ts +22 -0
  291. package/dist/engine/public/index.d.ts.map +1 -1
  292. package/dist/engine/public/index.js +14 -0
  293. package/dist/engine/public/index.js.map +1 -1
  294. package/dist/game/art/define.d.ts +1 -1
  295. package/dist/game/art/define.d.ts.map +1 -1
  296. package/dist/game/art/define.js +1 -1
  297. package/dist/game/art/define.js.map +1 -1
  298. package/dist/game/fonts/register.d.ts +16 -1
  299. package/dist/game/fonts/register.d.ts.map +1 -1
  300. package/dist/game/fonts/register.js +18 -7
  301. package/dist/game/fonts/register.js.map +1 -1
  302. package/dist/game/hud/themes.d.ts +33 -8
  303. package/dist/game/hud/themes.d.ts.map +1 -1
  304. package/dist/game/hud/themes.js +125 -22
  305. package/dist/game/hud/themes.js.map +1 -1
  306. package/dist/game/index.d.ts +4 -2
  307. package/dist/game/index.d.ts.map +1 -1
  308. package/dist/game/index.js +2 -1
  309. package/dist/game/index.js.map +1 -1
  310. package/dist/game/juice/audioReactive.d.ts +42 -0
  311. package/dist/game/juice/audioReactive.d.ts.map +1 -0
  312. package/dist/game/juice/audioReactive.js +68 -0
  313. package/dist/game/juice/audioReactive.js.map +1 -0
  314. package/dist/game/styles/themes/arcade-neon.css +2 -1
  315. package/dist/game/styles/themes/fighting.css +2 -1
  316. package/dist/game/styles/themes/ink-scroll.css +15 -0
  317. package/dist/game/styles/themes/motorsport.css +2 -1
  318. package/dist/game/styles/themes/plain.css +2 -1
  319. package/dist/game/styles/themes/sci-fi-telemetry.css +2 -1
  320. package/dist/game/styles/themes/sky-expedition.css +15 -0
  321. package/dist/game/styles/themes/sports-broadcast.css +2 -1
  322. package/dist/game/styles/themes/storybook.css +15 -0
  323. package/dist/game/styles/themes/tabletop.css +2 -1
  324. package/dist/game/styles.css +3 -1
  325. package/dist/rendering/ClusteredForwardLighting.d.ts.map +1 -1
  326. package/dist/rendering/ClusteredForwardLighting.js +3 -1
  327. package/dist/rendering/ClusteredForwardLighting.js.map +1 -1
  328. package/dist/rendering/DepthPass.d.ts +25 -0
  329. package/dist/rendering/DepthPass.d.ts.map +1 -1
  330. package/dist/rendering/DepthPass.js +149 -1
  331. package/dist/rendering/DepthPass.js.map +1 -1
  332. package/dist/rendering/ForwardPass.d.ts +84 -0
  333. package/dist/rendering/ForwardPass.d.ts.map +1 -1
  334. package/dist/rendering/ForwardPass.js +236 -12
  335. package/dist/rendering/ForwardPass.js.map +1 -1
  336. package/dist/rendering/LightUniforms.d.ts +12 -0
  337. package/dist/rendering/LightUniforms.d.ts.map +1 -1
  338. package/dist/rendering/LightUniforms.js +9 -1
  339. package/dist/rendering/LightUniforms.js.map +1 -1
  340. package/dist/rendering/atmosphere/CloudLayer.d.ts +15 -0
  341. package/dist/rendering/atmosphere/CloudLayer.d.ts.map +1 -1
  342. package/dist/rendering/atmosphere/CloudLayer.js +27 -5
  343. package/dist/rendering/atmosphere/CloudLayer.js.map +1 -1
  344. package/dist/rendering/atmosphere/GradientSky.d.ts +3 -3
  345. package/dist/rendering/atmosphere/GradientSky.d.ts.map +1 -1
  346. package/dist/rendering/atmosphere/GradientSky.js +20 -9
  347. package/dist/rendering/atmosphere/GradientSky.js.map +1 -1
  348. package/dist/rendering/atmosphere/HeightFog.d.ts.map +1 -1
  349. package/dist/rendering/atmosphere/HeightFog.js +9 -0
  350. package/dist/rendering/atmosphere/HeightFog.js.map +1 -1
  351. package/dist/rendering/atmosphere/SkyBackgroundPass.d.ts +11 -0
  352. package/dist/rendering/atmosphere/SkyBackgroundPass.d.ts.map +1 -1
  353. package/dist/rendering/atmosphere/SkyBackgroundPass.js +40 -7
  354. package/dist/rendering/atmosphere/SkyBackgroundPass.js.map +1 -1
  355. package/dist/rendering/atmosphere/StarField.d.ts +21 -0
  356. package/dist/rendering/atmosphere/StarField.d.ts.map +1 -1
  357. package/dist/rendering/atmosphere/StarField.js +24 -1
  358. package/dist/rendering/atmosphere/StarField.js.map +1 -1
  359. package/dist/rendering/atmosphere/sky.glsl.d.ts.map +1 -1
  360. package/dist/rendering/atmosphere/sky.glsl.js +8 -0
  361. package/dist/rendering/atmosphere/sky.glsl.js.map +1 -1
  362. package/dist/rendering/contracts/flags.state.d.ts.map +1 -1
  363. package/dist/rendering/contracts/flags.state.js +19 -0
  364. package/dist/rendering/contracts/flags.state.js.map +1 -1
  365. package/dist/rendering/forward/Lighting.d.ts +7 -1
  366. package/dist/rendering/forward/Lighting.d.ts.map +1 -1
  367. package/dist/rendering/forward/Lighting.js +24 -1
  368. package/dist/rendering/forward/Lighting.js.map +1 -1
  369. package/dist/rendering/forward/Velocity.d.ts +8 -0
  370. package/dist/rendering/forward/Velocity.d.ts.map +1 -1
  371. package/dist/rendering/forward/Velocity.js +10 -0
  372. package/dist/rendering/forward/Velocity.js.map +1 -1
  373. package/dist/rendering/lanes/prd03.d.ts +1 -1
  374. package/dist/rendering/lanes/prd03.d.ts.map +1 -1
  375. package/dist/rendering/lanes/prd03.js +6 -1
  376. package/dist/rendering/lanes/prd03.js.map +1 -1
  377. package/dist/rendering/lanes/prd07.d.ts.map +1 -1
  378. package/dist/rendering/lanes/prd07.js +5 -2
  379. package/dist/rendering/lanes/prd07.js.map +1 -1
  380. package/dist/rendering/post/DisplayLutCache.d.ts +10 -2
  381. package/dist/rendering/post/DisplayLutCache.d.ts.map +1 -1
  382. package/dist/rendering/post/DisplayLutCache.js +15 -3
  383. package/dist/rendering/post/DisplayLutCache.js.map +1 -1
  384. package/dist/rendering/post/PostGraph.d.ts +23 -0
  385. package/dist/rendering/post/PostGraph.d.ts.map +1 -1
  386. package/dist/rendering/post/PostGraph.js.map +1 -1
  387. package/dist/rendering/post/PostQualityTiers.d.ts +36 -0
  388. package/dist/rendering/post/PostQualityTiers.d.ts.map +1 -1
  389. package/dist/rendering/post/PostQualityTiers.js +75 -0
  390. package/dist/rendering/post/PostQualityTiers.js.map +1 -1
  391. package/dist/rendering/post/chunks/velocity.glsl.d.ts +7 -0
  392. package/dist/rendering/post/chunks/velocity.glsl.d.ts.map +1 -1
  393. package/dist/rendering/post/chunks/velocity.glsl.js +12 -1
  394. package/dist/rendering/post/chunks/velocity.glsl.js.map +1 -1
  395. package/dist/rendering/post/shaders/displayGrade.glsl.d.ts +15 -1
  396. package/dist/rendering/post/shaders/displayGrade.glsl.d.ts.map +1 -1
  397. package/dist/rendering/post/shaders/displayGrade.glsl.js +26 -2
  398. package/dist/rendering/post/shaders/displayGrade.glsl.js.map +1 -1
  399. package/dist/rendering/post/shaders/dof.glsl.d.ts +11 -1
  400. package/dist/rendering/post/shaders/dof.glsl.d.ts.map +1 -1
  401. package/dist/rendering/post/shaders/dof.glsl.js +22 -0
  402. package/dist/rendering/post/shaders/dof.glsl.js.map +1 -1
  403. package/dist/rendering/post/shaders/finalize.glsl.d.ts +1 -1
  404. package/dist/rendering/post/shaders/finalize.glsl.d.ts.map +1 -1
  405. package/dist/rendering/post/shaders/finalize.glsl.js +3 -2
  406. package/dist/rendering/post/shaders/finalize.glsl.js.map +1 -1
  407. package/dist/rendering/post/shaders/godrays.glsl.d.ts +24 -1
  408. package/dist/rendering/post/shaders/godrays.glsl.d.ts.map +1 -1
  409. package/dist/rendering/post/shaders/godrays.glsl.js +45 -5
  410. package/dist/rendering/post/shaders/godrays.glsl.js.map +1 -1
  411. package/dist/rendering/post/shaders/hdrGrade.glsl.d.ts +66 -0
  412. package/dist/rendering/post/shaders/hdrGrade.glsl.d.ts.map +1 -0
  413. package/dist/rendering/post/shaders/hdrGrade.glsl.js +159 -0
  414. package/dist/rendering/post/shaders/hdrGrade.glsl.js.map +1 -0
  415. package/dist/rendering/post/shaders/ssr.glsl.d.ts +39 -0
  416. package/dist/rendering/post/shaders/ssr.glsl.d.ts.map +1 -0
  417. package/dist/rendering/post/shaders/ssr.glsl.js +163 -0
  418. package/dist/rendering/post/shaders/ssr.glsl.js.map +1 -0
  419. package/dist/rendering/post/v2Stages.d.ts +53 -0
  420. package/dist/rendering/post/v2Stages.d.ts.map +1 -1
  421. package/dist/rendering/post/v2Stages.js +314 -23
  422. package/dist/rendering/post/v2Stages.js.map +1 -1
  423. package/dist/rendering/postprocess/NativeBloomPyramid.d.ts +19 -0
  424. package/dist/rendering/postprocess/NativeBloomPyramid.d.ts.map +1 -1
  425. package/dist/rendering/postprocess/NativeBloomPyramid.js +37 -0
  426. package/dist/rendering/postprocess/NativeBloomPyramid.js.map +1 -1
  427. package/dist/rendering/program/ProgramGenerator.d.ts.map +1 -1
  428. package/dist/rendering/program/ProgramGenerator.js +12 -1
  429. package/dist/rendering/program/ProgramGenerator.js.map +1 -1
  430. package/dist/rendering/program/chunks/shadow_forward.glsl.d.ts +12 -0
  431. package/dist/rendering/program/chunks/shadow_forward.glsl.d.ts.map +1 -1
  432. package/dist/rendering/program/chunks/shadow_forward.glsl.js +57 -0
  433. package/dist/rendering/program/chunks/shadow_forward.glsl.js.map +1 -1
  434. package/dist/rendering/renderer/Background.d.ts.map +1 -1
  435. package/dist/rendering/renderer/Background.js +26 -2
  436. package/dist/rendering/renderer/Background.js.map +1 -1
  437. package/dist/rendering/renderer/FrameGraph.d.ts +8 -0
  438. package/dist/rendering/renderer/FrameGraph.d.ts.map +1 -1
  439. package/dist/rendering/renderer/FrameGraph.js +46 -7
  440. package/dist/rendering/renderer/FrameGraph.js.map +1 -1
  441. package/dist/rendering/renderer/OutlineTargets.d.ts +99 -0
  442. package/dist/rendering/renderer/OutlineTargets.d.ts.map +1 -0
  443. package/dist/rendering/renderer/OutlineTargets.js +286 -0
  444. package/dist/rendering/renderer/OutlineTargets.js.map +1 -0
  445. package/dist/rendering/renderer/PostprocessExecution.d.ts +5 -0
  446. package/dist/rendering/renderer/PostprocessExecution.d.ts.map +1 -1
  447. package/dist/rendering/renderer/PostprocessExecution.js +70 -4
  448. package/dist/rendering/renderer/PostprocessExecution.js.map +1 -1
  449. package/dist/rendering/renderer/postSkipped.d.ts +6 -0
  450. package/dist/rendering/renderer/postSkipped.d.ts.map +1 -1
  451. package/dist/rendering/renderer/postSkipped.js +8 -0
  452. package/dist/rendering/renderer/postSkipped.js.map +1 -1
  453. package/dist/rendering/shaders/chunks/author/ibl.glsl.d.ts +20 -0
  454. package/dist/rendering/shaders/chunks/author/ibl.glsl.d.ts.map +1 -0
  455. package/dist/rendering/shaders/chunks/author/ibl.glsl.js +84 -0
  456. package/dist/rendering/shaders/chunks/author/ibl.glsl.js.map +1 -0
  457. package/dist/rendering/shaders/chunks/author/index.d.ts +3 -1
  458. package/dist/rendering/shaders/chunks/author/index.d.ts.map +1 -1
  459. package/dist/rendering/shaders/chunks/author/index.js +38 -3
  460. package/dist/rendering/shaders/chunks/author/index.js.map +1 -1
  461. package/dist/rendering/shaders/chunks/author/lights.glsl.d.ts +16 -0
  462. package/dist/rendering/shaders/chunks/author/lights.glsl.d.ts.map +1 -0
  463. package/dist/rendering/shaders/chunks/author/lights.glsl.js +112 -0
  464. package/dist/rendering/shaders/chunks/author/lights.glsl.js.map +1 -0
  465. package/dist/rendering/shaders/chunks/author/shadow.glsl.d.ts +16 -2
  466. package/dist/rendering/shaders/chunks/author/shadow.glsl.d.ts.map +1 -1
  467. package/dist/rendering/shaders/chunks/author/shadow.glsl.js +46 -2
  468. package/dist/rendering/shaders/chunks/author/shadow.glsl.js.map +1 -1
  469. package/dist/rendering/shaders/chunks/instance_color_target.glsl.d.ts +34 -0
  470. package/dist/rendering/shaders/chunks/instance_color_target.glsl.d.ts.map +1 -0
  471. package/dist/rendering/shaders/chunks/instance_color_target.glsl.js +101 -0
  472. package/dist/rendering/shaders/chunks/instance_color_target.glsl.js.map +1 -0
  473. package/dist/rendering/shaders/chunks/rim.glsl.d.ts +37 -0
  474. package/dist/rendering/shaders/chunks/rim.glsl.d.ts.map +1 -0
  475. package/dist/rendering/shaders/chunks/rim.glsl.js +50 -0
  476. package/dist/rendering/shaders/chunks/rim.glsl.js.map +1 -0
  477. package/dist/rendering/shadows/Prd02ShadowBridge.d.ts +26 -3
  478. package/dist/rendering/shadows/Prd02ShadowBridge.d.ts.map +1 -1
  479. package/dist/rendering/shadows/Prd02ShadowBridge.js +134 -8
  480. package/dist/rendering/shadows/Prd02ShadowBridge.js.map +1 -1
  481. package/dist/rendering/shadows/Prd02ShadowsContributor.d.ts.map +1 -1
  482. package/dist/rendering/shadows/Prd02ShadowsContributor.js +4 -16
  483. package/dist/rendering/shadows/Prd02ShadowsContributor.js.map +1 -1
  484. package/dist/rendering/vfx/VfxAtlas.d.ts +10 -0
  485. package/dist/rendering/vfx/VfxAtlas.d.ts.map +1 -1
  486. package/dist/rendering/vfx/VfxAtlas.js +18 -3
  487. package/dist/rendering/vfx/VfxAtlas.js.map +1 -1
  488. package/dist/rendering/webgl2/LegacyPost.d.ts +9 -1
  489. package/dist/rendering/webgl2/LegacyPost.d.ts.map +1 -1
  490. package/dist/rendering/webgl2/LegacyPost.js +23 -7
  491. package/dist/rendering/webgl2/LegacyPost.js.map +1 -1
  492. package/dist/rendering/webgl2/MultiDraw.d.ts.map +1 -1
  493. package/dist/rendering/webgl2/MultiDraw.js +51 -1
  494. package/dist/rendering/webgl2/MultiDraw.js.map +1 -1
  495. package/dist/rendering/world/vegetation/WindField.d.ts.map +1 -1
  496. package/dist/rendering/world/vegetation/WindField.js +4 -1
  497. package/dist/rendering/world/vegetation/WindField.js.map +1 -1
  498. package/dist/rendering/world/water/ReflectionViewPass.d.ts.map +1 -1
  499. package/dist/rendering/world/water/ReflectionViewPass.js +12 -2
  500. package/dist/rendering/world/water/ReflectionViewPass.js.map +1 -1
  501. package/dist/rendering/world/water/SceneCopyFallback.d.ts.map +1 -1
  502. package/dist/rendering/world/water/SceneCopyFallback.js +9 -2
  503. package/dist/rendering/world/water/SceneCopyFallback.js.map +1 -1
  504. package/dist/rendering/world/water/WaterMaterial.d.ts.map +1 -1
  505. package/dist/rendering/world/water/WaterMaterial.js +8 -2
  506. package/dist/rendering/world/water/WaterMaterial.js.map +1 -1
  507. package/package.json +25 -25
  508. package/templates/cinematic-scene/package.json +2 -2
  509. package/templates/mini-game/package.json +2 -2
  510. package/templates/product-viewer/package.json +2 -2
  511. package/templates/production-asset-inspector/package.json +1 -1
  512. package/templates/production-material-studio/package.json +1 -1
  513. package/templates/production-product-configurator/package.json +1 -1
  514. package/templates/production-product-viewer/package.json +1 -1
@@ -1,4 +1,5 @@
1
1
  import { Material } from "./Material.js";
2
+ import { MaterialInstance } from "./MaterialInstance.js";
2
3
  import { RenderDeviceError } from "./RenderDevice.js";
3
4
  import { BaseRenderPass } from "./RenderPass.js";
4
5
  import { ShaderModule } from "./ShaderModule.js";
@@ -8,6 +9,18 @@ import {} from "./ForwardPass.js";
8
9
  import { prd02DepthProgram, prd02DepthVariantDefines, PRD02_DEPTH_MAX_INSTANCES } from "./shadows/Prd02DepthShaderLibrary.js";
9
10
  import { identityMat4, multiplyMat4 } from "../scene/index.js";
10
11
  import { InstanceBuffer } from "./resources/InstanceBuffer.js";
12
+ /**
13
+ * GU47 E-D: the depth program of a `material.custom({ castShadow: true })` caster (`customDepthShaderKey` on the engine's
14
+ * custom material: its baked vertex stage with a depth-only fragment, published in the global shader-source registry).
15
+ * Undefined for every other material, which keeps the position-only depth program.
16
+ */
17
+ export function customDepthShaderKeyOf(material) {
18
+ const base = material instanceof MaterialInstance ? material.baseMaterial : material;
19
+ if (!base || base.disposed)
20
+ return undefined;
21
+ const key = base.customDepthShaderKey;
22
+ return typeof key === "string" && key.length > 0 ? key : undefined;
23
+ }
11
24
  export class DepthMaterial extends Material {
12
25
  constructor() {
13
26
  super({
@@ -76,25 +89,35 @@ export class DepthPass extends BaseRenderPass {
76
89
  * This mirrors the per-device/per-library cache `ForwardPass` already uses.
77
90
  */
78
91
  static shaderModules = new WeakMap();
92
+ /** GU47 E-D: compiled `castShadow` custom depth programs, per library and depth key (keys are content hashes). */
93
+ static customShaderModules = new WeakMap();
79
94
  shaderLibrary;
80
95
  material = new DepthMaterial();
96
+ frameSize = [1, 1];
81
97
  constructor(options) {
82
98
  super("depth", [], ["depth"]);
83
99
  this.options = options;
84
100
  this.shaderLibrary = options.shaderLibrary ?? createLeanCoreShaderLibrary();
85
101
  }
86
102
  execute(context) {
103
+ this.frameSize = [Math.max(1, context.width), Math.max(1, context.height)];
87
104
  for (const caster of this.options.casters) {
88
105
  this.drawCaster(context.device, caster);
89
106
  }
90
107
  }
91
108
  drawCaster(device, source) {
92
- const caster = source.shadowGeometry !== undefined && source.drawRange === undefined ? { ...source, geometry: source.shadowGeometry } : source;
109
+ // A `castShadow` custom caster keeps its real geometry: the author's vertex stage reads its attributes.
110
+ const customKey = customDepthShaderKeyOf(source.material);
111
+ const caster = !customKey && source.shadowGeometry !== undefined && source.drawRange === undefined ? { ...source, geometry: source.shadowGeometry } : source;
93
112
  const vertexBuffer = caster.geometry.vertexBuffer.upload(device);
94
113
  const indexBuffer = caster.geometry.indexBuffer?.upload(device);
95
114
  const drawRange = resolveDepthDrawRange(caster.geometry, caster.drawRange);
96
115
  const modelMatrix = toMat4(caster.modelMatrix ?? identityMat4(), caster.label);
97
116
  const viewProjection = toMat4(this.options.viewProjectionMatrix ?? identityMat4(), caster.label);
117
+ if (customKey) {
118
+ this.drawCustomCaster(device, caster, customKey, vertexBuffer, indexBuffer, drawRange, modelMatrix, viewProjection);
119
+ return;
120
+ }
98
121
  const mvp = multiplyMat4(viewProjection, modelMatrix);
99
122
  const variant = this.options.variantResolver?.(caster) ?? null;
100
123
  if (!variant) {
@@ -209,6 +232,131 @@ export class DepthPass extends BaseRenderPass {
209
232
  }
210
233
  return module.compile(device);
211
234
  }
235
+ customShader(device, key) {
236
+ let modules = DepthPass.customShaderModules.get(this.shaderLibrary);
237
+ if (!modules) {
238
+ modules = new Map();
239
+ DepthPass.customShaderModules.set(this.shaderLibrary, modules);
240
+ }
241
+ let module = modules.get(key);
242
+ if (!module) {
243
+ module = ShaderModule.fromLibrary(this.shaderLibrary, key);
244
+ modules.set(key, module);
245
+ }
246
+ return module.compile(device);
247
+ }
248
+ /**
249
+ * GU47 E-D: a `material.custom({ castShadow: true })` caster draws with its own vertex stage, so author displacement
250
+ * (sway, wind, waves) moves the shadow. The matrix built-ins carry the light: `u_viewMatrix` is identity and
251
+ * `u_projectionMatrix` the light's view-projection, so `projectionMatrix * viewMatrix * modelMatrix * p`,
252
+ * `projectionMatrix * modelViewMatrix * p` and `modelViewProjectionMatrix * p` all land in light clip space. The
253
+ * material's own uniforms (including runtime `setUniform` writes) and `u_time` (the forward pass clock) are bound too.
254
+ * An instanced caster whose vertex stage reads `instanceMatrix` is one instanced draw; one that does not draws each
255
+ * instance with the instance folded into `modelMatrix`. Culling follows the material's side.
256
+ */
257
+ drawCustomCaster(device, caster, key, vertexBuffer, indexBuffer, drawRange, modelMatrix, viewProjection) {
258
+ const shader = this.customShader(device, key);
259
+ const reflected = shader.reflection.uniforms;
260
+ const base = caster.material instanceof MaterialInstance ? caster.material.baseMaterial : caster.material;
261
+ const shared = new Map();
262
+ for (const [name, value] of base?.getParameters() ?? []) {
263
+ if (reflected.has(name))
264
+ shared.set(name, value);
265
+ }
266
+ const set = (name, value) => {
267
+ if (reflected.has(name))
268
+ shared.set(name, value);
269
+ };
270
+ set("u_viewMatrix", identityMatrix());
271
+ set("u_projectionMatrix", new Float32Array(viewProjection));
272
+ set("u_cameraPosition", [0, 0, 0]);
273
+ set("u_time", this.options.timeSeconds ?? (typeof performance !== "undefined" ? performance.now() / 1000 : Date.now() / 1000));
274
+ set("u_resolution", [this.frameSize[0], this.frameSize[1]]);
275
+ set("u_a3dInstanceColors", 0);
276
+ const cullMode = base?.renderState.cullMode;
277
+ const renderState = { ...depthRenderState(this.options.scissor, cullMode === "none"), ...(cullMode === "front" ? { cullMode: "front" } : {}) };
278
+ const transforms = caster.instanceTransforms instanceof Float32Array ? caster.instanceTransforms : caster.instanceTransforms ? Float32Array.from(caster.instanceTransforms) : null;
279
+ const instanceTotal = transforms ? Math.floor(transforms.length / 16) : 0;
280
+ const authorInstancing = transforms !== null && instanceTotal > 0 && reflected.has("u_a3dInstancing")
281
+ && DEPTH_INSTANCE_ATTRIBUTE_NAMES.every((name) => shader.reflection.attributes.has(name));
282
+ const instanceBuffer = authorInstancing && transforms ? depthInstanceBufferFor(device, caster.instanceTransforms, transforms).bind().matrixBuffer : null;
283
+ const draw = (model, label, instanced) => {
284
+ const uniforms = new Map(shared);
285
+ if (reflected.has("u_modelViewProjection"))
286
+ uniforms.set("u_modelViewProjection", multiplyMat4(viewProjection, model));
287
+ if (reflected.has("u_modelMatrix"))
288
+ uniforms.set("u_modelMatrix", model);
289
+ if (reflected.has("u_normalMatrix"))
290
+ uniforms.set("u_normalMatrix", normalMatrix4(model));
291
+ if (reflected.has("u_a3dInstancing"))
292
+ uniforms.set("u_a3dInstancing", instanced ? 1 : 0);
293
+ const command = {
294
+ label,
295
+ topology: caster.geometry.topology,
296
+ vertexBuffer,
297
+ vertexFormat: caster.geometry.vertexBuffer.format,
298
+ vertexCount: indexBuffer ? caster.geometry.vertexBuffer.vertexCount : drawRange.count,
299
+ ...(indexBuffer === undefined && drawRange.start > 0 ? { firstVertex: drawRange.start } : {}),
300
+ ...(instanced && instanceBuffer
301
+ ? {
302
+ instanceCount: instanceTotal,
303
+ instanceAttributes: DEPTH_INSTANCE_ATTRIBUTE_NAMES.map((shaderName, column) => ({
304
+ buffer: instanceBuffer,
305
+ shaderName,
306
+ components: 4,
307
+ offset: column * 16,
308
+ stride: 64,
309
+ divisor: 1
310
+ }))
311
+ }
312
+ : {}),
313
+ shader,
314
+ uniforms,
315
+ renderState
316
+ };
317
+ if (indexBuffer) {
318
+ Object.assign(command, {
319
+ indexBuffer,
320
+ indexType: caster.geometry.indexBuffer?.type,
321
+ indexCount: drawRange.count,
322
+ ...(drawRange.start > 0 ? { firstIndex: drawRange.start } : {})
323
+ });
324
+ }
325
+ device.draw(command);
326
+ };
327
+ const label = `${caster.label ?? "shadow-caster"}:custom-depth`;
328
+ if (authorInstancing || !transforms || instanceTotal === 0) {
329
+ draw(modelMatrix, label, authorInstancing);
330
+ return;
331
+ }
332
+ for (let index = 0; index < instanceTotal; index += 1) {
333
+ const instance = Array.from(transforms.subarray(index * 16, index * 16 + 16));
334
+ draw(multiplyMat4(modelMatrix, instance), `${label}:${index}`, false);
335
+ }
336
+ }
337
+ }
338
+ /** Inverse-transpose of the upper 3x3 of a column-major model matrix, padded into a mat4 (the custom `u_normalMatrix`). */
339
+ function normalMatrix4(m) {
340
+ const a00 = m[0], a01 = m[1], a02 = m[2];
341
+ const a10 = m[4], a11 = m[5], a12 = m[6];
342
+ const a20 = m[8], a21 = m[9], a22 = m[10];
343
+ const b01 = a22 * a11 - a12 * a21;
344
+ const b11 = -a22 * a10 + a12 * a20;
345
+ const b21 = a21 * a10 - a11 * a20;
346
+ const det = a00 * b01 + a01 * b11 + a02 * b21;
347
+ if (!Number.isFinite(det) || Math.abs(det) < 1e-12)
348
+ return new Float32Array([1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]);
349
+ const inv = 1 / det;
350
+ // inverse (column-major), then transpose
351
+ const i00 = b01 * inv, i01 = (-a22 * a01 + a02 * a21) * inv, i02 = (a12 * a01 - a02 * a11) * inv;
352
+ const i10 = b11 * inv, i11 = (a22 * a00 - a02 * a20) * inv, i12 = (-a12 * a00 + a02 * a10) * inv;
353
+ const i20 = b21 * inv, i21 = (-a21 * a00 + a01 * a20) * inv, i22 = (a11 * a00 - a01 * a10) * inv;
354
+ return new Float32Array([
355
+ i00, i10, i20, 0,
356
+ i01, i11, i21, 0,
357
+ i02, i12, i22, 0,
358
+ 0, 0, 0, 1
359
+ ]);
212
360
  }
213
361
  /**
214
362
  * Depth-pass render state: depthTest+depthWrite forced (a depth pass must not
@@ -1 +1 @@
1
- {"version":3,"file":"DepthPass.js","sourceRoot":"","sources":["../../../../packages/rendering/src/DepthPass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DepthPass.js","sourceRoot":"","sources":["../../../../packages/rendering/src/DepthPass.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { type CollectedLight } from "./LightCollector.js";
2
+ import { LightUniforms } from "./LightUniforms.js";
2
3
  import { Material } from "./Material.js";
3
4
  import { MaterialInstance } from "./MaterialInstance.js";
4
5
  import { type RenderShaderProgram, type UniformValue } from "./RenderDevice.js";
@@ -15,6 +16,17 @@ import { type AuraQualityTierSettings } from "./contracts/quality.js";
15
16
  import type { QrFlags } from "./contracts/core.js";
16
17
  import { type EnvironmentProbe } from "./contracts/environment.js";
17
18
  export type { RenderItem };
19
+ /**
20
+ * GU47 E-D (ED-8): per-draw uniform extension point. A hook runs for every forward draw after the built-in binds and may
21
+ * write extra uniforms the program reflects (for example an object-ID mask a post pass reads). No hook is registered by
22
+ * default, so draws are unchanged. Generated programs can also use `ShaderFeature.bindUniforms`.
23
+ */
24
+ export interface ForwardDrawHook {
25
+ readonly id: string;
26
+ bind(item: RenderItem, shader: RenderShaderProgram, set: (name: string, value: UniformValue) => void): void;
27
+ }
28
+ /** Registers a per-draw uniform hook; returns its unregister function. A duplicate id throws. */
29
+ export declare function registerForwardDrawHook(hook: ForwardDrawHook): () => void;
18
30
  export interface RenderItemDrawRange {
19
31
  readonly start: number;
20
32
  readonly count: number;
@@ -217,7 +229,45 @@ export interface ForwardShadowMapOptions {
217
229
  */
218
230
  readonly spotLight?: ForwardSpotShadowMapOptions;
219
231
  readonly cascades?: readonly ForwardShadowCascadeOptions[];
232
+ /**
233
+ * GU47 eint (E-B handoff EB-3): set on every PRD-02 bridge frame (`shadows/Prd02ShadowBridge.ts`). The map above
234
+ * is then the sun's, so spot / point casters never sample it; casters that got PRD-02 atlas tiles sample those
235
+ * in the generated forward program, the others render unshadowed (`forwardShadedLights`).
236
+ */
237
+ readonly localShadows?: ForwardLocalShadowOptions;
238
+ }
239
+ /** Most PRD-02 local-light atlas tiles a frame binds (`shadows/ShadowSystem.ts` MAX_LOCAL_TILES). */
240
+ export declare const MAX_FORWARD_LOCAL_SHADOW_TILES = 6;
241
+ /** PRD-02 local-light shadow tiles for the forward pass (GU47 eint EB-3). */
242
+ export interface ForwardLocalShadowOptions {
243
+ /**
244
+ * First atlas tile of each shadowed spot / point light, keyed by the frame's collected light. A point light owns
245
+ * six consecutive tiles (faces +X, -X, +Y, -Y, +Z, -Z). Empty when no local tile was rendered this frame.
246
+ */
247
+ readonly slots: ReadonlyMap<CollectedLight, number>;
248
+ /** The local-light depth atlas with a compare sampler; set whenever `slots` is not empty. */
249
+ readonly texture?: TextureBinding;
250
+ /** Atlas edge in px. */
251
+ readonly atlasSize: number;
252
+ /** MAX_FORWARD_LOCAL_SHADOW_TILES column-major mat4: world -> tile [0,1]^3 (the tiles' sampling view-projections). */
253
+ readonly matrices: Float32Array;
254
+ /** MAX_FORWARD_LOCAL_SHADOW_TILES vec4: tile rect in the atlas (u0, v0, du, dv). */
255
+ readonly rects: Float32Array;
256
+ /** 8 floats (2 vec4, tile i at [i]): world size of one tile texel per unit of tile-axis depth, 2 tan(fov / 2) / tile px. */
257
+ readonly texelScale: Float32Array;
258
+ readonly strength: number;
259
+ /** Receiver depth bias toward the light, in tile texels: `biasTexels + slopeBiasTexels * tan(incidence)`. */
260
+ readonly biasTexels: number;
261
+ readonly slopeBiasTexels: number;
262
+ /** Receiver offset along its normal before the lookup, in tile texels. */
263
+ readonly normalBiasTexels: number;
220
264
  }
265
+ /**
266
+ * GU47 eint (EB-3): the lights as the forward programs see them. On a PRD-02 bridge frame (`localShadows` set) a
267
+ * shadow-casting spot / point light keeps lighting but drops its `castsShadow` gate (the bound forward map is the
268
+ * sun's), and carries `localShadowSlot` when it got atlas tiles. Any other frame returns `lights` itself.
269
+ */
270
+ export declare function forwardShadedLights(lights: readonly CollectedLight[] | undefined, localShadows: ForwardLocalShadowOptions | undefined): readonly CollectedLight[];
221
271
  export interface ForwardShadowCascadeOptions {
222
272
  readonly index: number;
223
273
  readonly near: number;
@@ -258,6 +308,15 @@ export declare class ForwardPass extends BaseRenderPass {
258
308
  private frameHeight;
259
309
  private contactMaskScope;
260
310
  constructor(options: ForwardPassOptions);
311
+ /**
312
+ * GU47 E-D: per-execute values the `material.custom` built-ins share (`u_lightCount`/`u_lightData` for
313
+ * `#include <a3d_lights>`, `u_a3dInverseViewProjection` for `a3dFragWorldPosition`), computed once on first use.
314
+ */
315
+ private customFrame;
316
+ private readonly customFrameCache;
317
+ /** GU47 eint (EB-3): `forwardShadedLights` of this pass, computed once per execute (packed per draw). */
318
+ private shadedLightsMemo;
319
+ private shadedLights;
261
320
  execute(context: RenderPassContext): void;
262
321
  private drawItem;
263
322
  /**
@@ -482,6 +541,31 @@ export declare function prd02AmbientAndHemisphere(env: EnvironmentLightingOption
482
541
  readonly direction: readonly [number, number, number];
483
542
  };
484
543
  };
544
+ /**
545
+ * GU47 E-D (PRD §3.1): lighting built-ins for `material.custom` programs, each bound only when the program reflects it:
546
+ * - `u_a3dSunColor` (linear rgb) / `u_a3dSunIntensity`: the sun `u_a3dSunDirection` points at (0 when there is none).
547
+ * - `u_a3dHemiSky` / `u_a3dHemiGround`: the authored hemisphere pair (linear rgb, premultiplied by intensity; 0 when none).
548
+ * - `u_a3dFogColor` / `u_a3dFogDensity`: the scene fog for this draw (exp2 density; a linear fog gets the density that
549
+ * reaches 98% at `far`; 0 when the scene has no fog or the material opts out with `fog: false`).
550
+ * - `u_lightCount` / `u_lightData`: the packed direct lights `#include <a3d_lights>` loops over (same packing as the
551
+ * built-in lit programs; the clustered textures are bound by `applyClusteredLightingUniforms`).
552
+ * - `u_a3dInverseViewProjection`: inverse(projection * view) of the camera the other custom built-ins describe, for
553
+ * `a3dFragWorldPosition()`.
554
+ * - `#include <a3d_ibl>`: `u_a3dEnvAmbient` (environment colour * intensity), `u_a3dEnvSh` / `u_a3dEnvShEnabled` (the
555
+ * scene probe's SH9), `u_a3dEnvSky` / `u_a3dEnvHorizon` / `u_a3dEnvGround` (procedural map * intensity) and the
556
+ * equirect `u_a3dEnvMap` with `u_a3dEnvMapEnabled` / `Intensity` / `Rotation` / `MaxLod` / `Encoding` (same values the
557
+ * generated programs' `u_environmentMap*` get; the white fallback with enabled 0 when the scene has none).
558
+ */
559
+ export declare function applyCustomShaderLightingUniforms(options: Pick<ForwardPassOptions, "lights" | "environmentLighting">, fog: ForwardEnvironmentFogOptions | false | undefined, shader: RenderShaderProgram, uniforms: Map<string, UniformValue>, frame: CustomShaderFrameCache): void;
560
+ /** GU47 E-D: per-execute values shared by every `material.custom` draw (computed on first use). */
561
+ export interface CustomShaderFrameCache {
562
+ /** The packed direct lights (`LightUniforms.pack`). */
563
+ lights(): ReturnType<typeof LightUniforms.pack>;
564
+ /** inverse(projection * view) of the custom built-ins' camera (`customShaderInverseViewProjection`). */
565
+ inverseViewProjection(): Float32Array;
566
+ }
567
+ /** inverse(projection * view) of the camera `applyCustomShaderFrameUniforms` binds as `u_projectionMatrix` / `u_viewMatrix`. */
568
+ export declare function customShaderInverseViewProjection(options: Pick<ForwardPassOptions, "customFrameCamera" | "cameraViewMatrix" | "auraFrameCamera">): Float32Array;
485
569
  export declare function toMat4Uniform(value: Float32Array | readonly number[], field: string, label?: string): Float32Array;
486
570
  export declare function identityMatrix(): readonly number[];
487
571
  /** C-04 bucket an item lands in for the v2 frame-order split (§9.1). */
@@ -1 +1 @@
1
- {"version":3,"file":"ForwardPass.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/ForwardPass.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAyF,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEpK,OAAO,EAAE,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtE,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAGxE,OAAO,EAA+B,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAMlD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIzD,OAAO,EAA2C,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAKpG,OAAO,EAAiB,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAGlF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAqB,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAYnF,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;IAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAEzD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,iEAAiE;AACjE,MAAM,MAAM,mBAAmB,GAAG,eAAe,GAAG,cAAc,CAAC;AAEnE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,6BAA6B,EAAE,CAAC;IAC7D,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED,wEAAwE;AACxE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,mBAAmB,GAAG,KAAK,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED,qFAAqF;AACrF,eAAO,MAAM,2BAA2B,KAAqC,CAAC;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAIxC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC5C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,0BAA0B,CAAC;IAC1D,QAAQ,CAAC,cAAc,CAAC,EAAE,4BAA4B,GAAG,KAAK,CAAC;IAC/D,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,uBAAuB,CAAC;IAC7C,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;IAC7D,QAAQ,CAAC,0BAA0B,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;IACvE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,uBAAuB,CAAC;IAC/C,+IAA+I;IAC/I,QAAQ,CAAC,iBAAiB,CAAC,EAAE;QAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;QACvD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;KAC9D,CAAC;IACF,gFAAgF;IAChF,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;QAC7D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC;QACrD,QAAQ,CAAC,4BAA4B,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;KAC1E,CAAC;IACF,oFAAoF;IACpF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;CACzH;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,uCAAuC,CAAC;IACjE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAChD,QAAQ,CAAC,yBAAyB,CAAC,EAAE,cAAc,CAAC;IACpD,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAClD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC7D,QAAQ,CAAC,yBAAyB,CAAC,EAAE,cAAc,CAAC;IACpD;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpD;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE;QACpB,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAChD,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACnD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;KACvD,GAAG,IAAI,CAAC;CACV;AAED,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACzD,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACxD,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,aAAa,GAAG,qBAAqB,CAAC;AAEzF,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,kEAAkE;IAClE,QAAQ,CAAC,wBAAwB,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACtE,mDAAmD;IACnD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAC3C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,4BAA4B,CAAC;IACnD;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,2BAA2B,CAAC;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,2BAA2B,EAAE,CAAC;CAC5D;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;CAC5C;AASD,eAAO,MAAM,8BAA8B,KAAK,CAAC;AASjD,qBAAa,WAAY,SAAQ,cAAc;IA8BjC,OAAO,CAAC,QAAQ,CAAC,OAAO;IA7BpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAA0E;IAC9G,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;IACzD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAsC;IAC7E,OAAO,CAAC,iBAAiB,CAAkD;IAC3E,OAAO,CAAC,qBAAqB,CAA+B;IAM5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAA4D;IAClG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAyG;IAGnJ,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAA0E;IACxH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAuC;IAC9E,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAK;IACtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAsC;IAC5E,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAK;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAA4C;IACxF,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAAK;IAG3C,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,WAAW,CAAK;IAExB,OAAO,CAAC,gBAAgB,CAAqC;gBAEhC,OAAO,EAAE,kBAAkB;IASxD,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAgDzC,OAAO,CAAC,QAAQ;IAuKhB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IA0C5B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4F;IAE1H,wHAAwH;IACxH,OAAO,CAAC,oBAAoB;IAU5B,+GAA+G;IAC/G,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,SAAS;IA4CjB,qFAAqF;IACrF,OAAO,CAAC,YAAY;IAapB,gFAAgF;IAChF,OAAO,CAAC,mBAAmB,CAA8B;IAEzD,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,kBAAkB;IAqC1B,OAAO,CAAC,MAAM,CAAC,aAAa;IAS5B,OAAO,CAAC,eAAe;IASvB,8EAA8E;IAC9E,OAAO,CAAC,oBAAoB;IAQ5B,mFAAmF;IACnF,OAAO,CAAC,MAAM,CAAC,MAAM;IAQrB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAsCnB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAWxB;AAED;;;;;;;GAOG;AACH,qBAAa,qBAAqB,CAAC,CAAC;IAQhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAVnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0G;IAEhI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,IAAI,CAAK;gBAGE,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,CAAC,EAChD,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,EAC5B,QAAQ,SAAM,EACd,gBAAgB,SAAK;IAGxC,mDAAmD;IACnD,SAAS,IAAI,IAAI;IAKjB,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAM/B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG;QAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;CA8BnH;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,eAAe,GAAG,UAAU,GAAG,cAAc,GAAG,cAAc,GAAG,oBAAoB,GAAG,WAAW,GAAG,OAAO,CAAC,EACrI,oBAAoB,EAAE,OAAO,GAC5B,OAAO,CAIT;AAMD;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,WAAW,GAAG,qBAAqB,GAAG,gBAAgB,CAAC,EACpG,SAAS,EAAE,OAAO,GACjB,IAAI,CAAC,eAAe,EAAE,QAAQ,GAAG,SAAS,GAAG,aAAa,GAAG,KAAK,CAAC,CA8CrE;AAED,OAAO,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AA0ClI;;;;;;;;;;;;;GAaG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,4BAA4B,GAAG,KAAK,GAAG,SAAS,GACpD,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAQ/C;AAED,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,4BAA4B,GAAG,KAAK,GAAG,SAAS,EACrD,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAClC,IAAI,CAYN;AAwWD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAU/D,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AAQ1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,0BAA0B,GAAG,SAAS,EACnD,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACnC,EAAE,GAAE;IAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GACxE,IAAI,CAuDN;AAED;;;;;;;;;GASG;AACH,wBAAgB,oCAAoC,CAClD,WAAW,EAAE,0BAA0B,GAAG,SAAS,EACnD,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACnC,KAAK,CAAC,EAAE,OAAO,GACd,IAAI,CA4CN;AAED;;;;;GAKG;AACH,wBAAgB,2CAA2C,CACzD,WAAW,EAAE,0BAA0B,GAAG,SAAS,EACnD,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACnC,kBAAkB,UAAQ,GACzB,IAAI,CA8BN;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,0BAA0B,GAAG,SAAS,EACnD,KAAK,CAAC,EAAE,UAAU,GACjB,OAAO,CAET;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,0BAA0B,GAAG,SAAS,EACnD,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,QAAQ,GAAG,gBAAgB,EACrC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAClC,IAAI,CAmEN;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,0BAA0B,GAAG;IAC1E,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACpG,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CAClN,CAaA;AAsYD,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,YAAY,CASlH;AAaD,wBAAgB,cAAc,IAAI,SAAS,MAAM,EAAE,CAOlD;AA+BD,wEAAwE;AACxE,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,cAAc,GAAG,aAAa,CAAC;AAEtE,kEAAkE;AAClE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,CAKjE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,cAAc,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GACjD;IACD,QAAQ,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,SAAS,UAAU,EAAE,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,SAAS;QAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC5F,CAqBA;AAuND,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAKpE"}
1
+ {"version":3,"file":"ForwardPass.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/ForwardPass.ts"],"names":[],"mappings":"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"}