@babylonjs/core 7.16.0 → 7.17.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 (213) hide show
  1. package/Animations/animationGroup.d.ts +1 -0
  2. package/Animations/animationGroup.js +4 -1
  3. package/Animations/animationGroup.js.map +1 -1
  4. package/Collisions/gpuPicker.js +1 -1
  5. package/Collisions/gpuPicker.js.map +1 -1
  6. package/Compute/computeEffect.js +1 -1
  7. package/Compute/computeEffect.js.map +1 -1
  8. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.d.ts +32 -0
  9. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +32 -0
  10. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  11. package/Engines/abstractEngine.js +2 -2
  12. package/Engines/abstractEngine.js.map +1 -1
  13. package/Engines/engine.d.ts +1993 -1993
  14. package/Engines/nativeEngine.d.ts +7 -0
  15. package/Engines/nativeEngine.js +24 -1
  16. package/Engines/nativeEngine.js.map +1 -1
  17. package/Engines/thinEngine.js +2 -2
  18. package/Engines/thinEngine.js.map +1 -1
  19. package/Engines/webgpuEngine.js +5 -3
  20. package/Engines/webgpuEngine.js.map +1 -1
  21. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js +6 -6
  22. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js.map +1 -1
  23. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +4 -7
  24. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  25. package/Materials/Node/Blocks/Dual/textureBlock.js +1 -1
  26. package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
  27. package/Materials/Node/Blocks/Input/inputBlock.js +8 -11
  28. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  29. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +4 -4
  30. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  31. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +46 -40
  32. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  33. package/Materials/Node/Blocks/PBR/iridescenceBlock.d.ts +2 -1
  34. package/Materials/Node/Blocks/PBR/iridescenceBlock.js +10 -9
  35. package/Materials/Node/Blocks/PBR/iridescenceBlock.js.map +1 -1
  36. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.d.ts +1 -0
  37. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +85 -69
  38. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  39. package/Materials/Node/Blocks/PBR/reflectionBlock.js +54 -38
  40. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  41. package/Materials/Node/Blocks/PBR/refractionBlock.js +8 -5
  42. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  43. package/Materials/Node/Blocks/PBR/sheenBlock.d.ts +2 -1
  44. package/Materials/Node/Blocks/PBR/sheenBlock.js +40 -32
  45. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  46. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +53 -45
  47. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
  48. package/Materials/Node/nodeMaterial.d.ts +2 -1
  49. package/Materials/Node/nodeMaterial.js +4 -1
  50. package/Materials/Node/nodeMaterial.js.map +1 -1
  51. package/Materials/Node/nodeMaterialBuildState.d.ts +1 -0
  52. package/Materials/Node/nodeMaterialBuildState.js +12 -3
  53. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  54. package/Materials/effect.js +2 -2
  55. package/Materials/effect.js.map +1 -1
  56. package/Meshes/Builders/decalBuilder.js +14 -20
  57. package/Meshes/Builders/decalBuilder.js.map +1 -1
  58. package/Meshes/GaussianSplatting/gaussianSplattingMesh.d.ts +10 -1
  59. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +50 -11
  60. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
  61. package/Meshes/Node/nodeGeometry.d.ts +6 -0
  62. package/Meshes/Node/nodeGeometry.js +7 -0
  63. package/Meshes/Node/nodeGeometry.js.map +1 -1
  64. package/Meshes/mesh.d.ts +1 -0
  65. package/Meshes/mesh.js +138 -134
  66. package/Meshes/mesh.js.map +1 -1
  67. package/Meshes/subMesh.js +1 -1
  68. package/Meshes/subMesh.js.map +1 -1
  69. package/Misc/khronosTextureContainer2.js +1 -1
  70. package/Misc/khronosTextureContainer2.js.map +1 -1
  71. package/Rendering/GlobalIllumination/giRSMManager.js +1 -1
  72. package/Rendering/GlobalIllumination/giRSMManager.js.map +1 -1
  73. package/Rendering/edgesRenderer.js +1 -1
  74. package/Rendering/edgesRenderer.js.map +1 -1
  75. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js +1 -1
  76. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js.map +1 -1
  77. package/Shaders/ShadersInclude/lightFragment.js +3 -3
  78. package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
  79. package/Shaders/ShadersInclude/lightsFragmentFunctions.js +1 -1
  80. package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  81. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +13 -14
  82. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  83. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +4 -5
  84. package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
  85. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +4 -5
  86. package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
  87. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +4 -5
  88. package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
  89. package/Shaders/ShadersInclude/pbrBlockClearcoat.js +34 -35
  90. package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  91. package/Shaders/ShadersInclude/pbrBlockIridescence.js +10 -11
  92. package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
  93. package/Shaders/ShadersInclude/pbrBlockReflection.js +23 -24
  94. package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
  95. package/Shaders/ShadersInclude/pbrBlockReflectivity.js +12 -13
  96. package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
  97. package/Shaders/ShadersInclude/pbrBlockSheen.js +31 -32
  98. package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
  99. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +43 -44
  100. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  101. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +1 -1
  102. package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  103. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +1 -1
  104. package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
  105. package/Shaders/pbr.fragment.js +143 -153
  106. package/Shaders/pbr.fragment.js.map +1 -1
  107. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js +3 -3
  108. package/ShadersWGSL/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
  109. package/ShadersWGSL/ShadersInclude/decalFragment.d.ts +5 -0
  110. package/ShadersWGSL/ShadersInclude/decalFragment.js +18 -0
  111. package/ShadersWGSL/ShadersInclude/decalFragment.js.map +1 -0
  112. package/ShadersWGSL/ShadersInclude/depthPrePass.d.ts +5 -0
  113. package/ShadersWGSL/ShadersInclude/depthPrePass.js +12 -0
  114. package/ShadersWGSL/ShadersInclude/depthPrePass.js.map +1 -0
  115. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.d.ts +5 -0
  116. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js +24 -0
  117. package/ShadersWGSL/ShadersInclude/harmonicsFunctions.js.map +1 -0
  118. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.d.ts +5 -0
  119. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js +39 -0
  120. package/ShadersWGSL/ShadersInclude/hdrFilteringFunctions.js.map +1 -0
  121. package/ShadersWGSL/ShadersInclude/helperFunctions.js +6 -2
  122. package/ShadersWGSL/ShadersInclude/helperFunctions.js.map +1 -1
  123. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js +2 -2
  124. package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js.map +1 -1
  125. package/ShadersWGSL/ShadersInclude/importanceSampling.d.ts +5 -0
  126. package/ShadersWGSL/ShadersInclude/importanceSampling.js +12 -0
  127. package/ShadersWGSL/ShadersInclude/importanceSampling.js.map +1 -0
  128. package/ShadersWGSL/ShadersInclude/lightFragment.js +3 -3
  129. package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
  130. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js +1 -1
  131. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  132. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.d.ts +5 -0
  133. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js +139 -0
  134. package/ShadersWGSL/ShadersInclude/pbrBRDFFunctions.js.map +1 -0
  135. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.d.ts +6 -0
  136. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js +81 -0
  137. package/ShadersWGSL/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -0
  138. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.d.ts +5 -0
  139. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js +37 -0
  140. package/ShadersWGSL/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -0
  141. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.d.ts +5 -0
  142. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js +35 -0
  143. package/ShadersWGSL/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -0
  144. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.d.ts +5 -0
  145. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js +46 -0
  146. package/ShadersWGSL/ShadersInclude/pbrBlockAnisotropic.js.map +1 -0
  147. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.d.ts +5 -0
  148. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js +267 -0
  149. package/ShadersWGSL/ShadersInclude/pbrBlockClearcoat.js.map +1 -0
  150. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.d.ts +5 -0
  151. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js +24 -0
  152. package/ShadersWGSL/ShadersInclude/pbrBlockDirectLighting.js.map +1 -0
  153. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.d.ts +5 -0
  154. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js +51 -0
  155. package/ShadersWGSL/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -0
  156. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.d.ts +5 -0
  157. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js +96 -0
  158. package/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -0
  159. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.d.ts +5 -0
  160. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js +26 -0
  161. package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -0
  162. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.d.ts +5 -0
  163. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js +33 -0
  164. package/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -0
  165. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.d.ts +5 -0
  166. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js +20 -0
  167. package/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.js.map +1 -0
  168. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.d.ts +5 -0
  169. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js +51 -0
  170. package/ShadersWGSL/ShadersInclude/pbrBlockIridescence.js.map +1 -0
  171. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.d.ts +5 -0
  172. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js +19 -0
  173. package/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.js.map +1 -0
  174. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.d.ts +5 -0
  175. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js +19 -0
  176. package/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.js.map +1 -0
  177. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.d.ts +5 -0
  178. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js +30 -0
  179. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance.js.map +1 -0
  180. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.d.ts +5 -0
  181. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js +18 -0
  182. package/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.js.map +1 -0
  183. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.d.ts +5 -0
  184. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js +277 -0
  185. package/ShadersWGSL/ShadersInclude/pbrBlockReflection.js.map +1 -0
  186. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.d.ts +5 -0
  187. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js +120 -0
  188. package/ShadersWGSL/ShadersInclude/pbrBlockReflectivity.js.map +1 -0
  189. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.d.ts +5 -0
  190. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js +195 -0
  191. package/ShadersWGSL/ShadersInclude/pbrBlockSheen.js.map +1 -0
  192. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.d.ts +5 -0
  193. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js +425 -0
  194. package/ShadersWGSL/ShadersInclude/pbrBlockSubSurface.js.map +1 -0
  195. package/ShadersWGSL/ShadersInclude/pbrDebug.d.ts +5 -0
  196. package/ShadersWGSL/ShadersInclude/pbrDebug.js +193 -0
  197. package/ShadersWGSL/ShadersInclude/pbrDebug.js.map +1 -0
  198. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.d.ts +5 -0
  199. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js +43 -0
  200. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -0
  201. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.d.ts +5 -0
  202. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +68 -0
  203. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -0
  204. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.d.ts +5 -0
  205. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js +30 -0
  206. package/ShadersWGSL/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -0
  207. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.d.ts +5 -0
  208. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js +41 -0
  209. package/ShadersWGSL/ShadersInclude/pbrHelperFunctions.js.map +1 -0
  210. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.d.ts +5 -0
  211. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js +23 -0
  212. package/ShadersWGSL/ShadersInclude/pbrIBLFunctions.js.map +1 -0
  213. package/package.json +1 -1
@@ -0,0 +1,96 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockFinalLitComponents";
4
+ const shader = `aggShadow=aggShadow/numLights;
5
+ #if defined(ENVIRONMENTBRDF)
6
+ #ifdef MS_BRDF_ENERGY_CONSERVATION
7
+ var energyConservationFactor: vec3f=getEnergyConservationFactor(clearcoatOut.specularEnvironmentR0,environmentBrdf);
8
+ #endif
9
+ #endif
10
+ #ifndef METALLICWORKFLOW
11
+ #ifdef SPECULAR_GLOSSINESS_ENERGY_CONSERVATION
12
+ surfaceAlbedo=(1.-reflectance)*surfaceAlbedo.rgb;
13
+ #endif
14
+ #endif
15
+ #if defined(SHEEN) && defined(SHEEN_ALBEDOSCALING) && defined(ENVIRONMENTBRDF)
16
+ surfaceAlbedo=sheenOut.sheenAlbedoScaling*surfaceAlbedo.rgb;
17
+ #endif
18
+ #ifdef REFLECTION
19
+ var finalIrradiance: vec3f=reflectionOut.environmentIrradiance;
20
+ #if defined(CLEARCOAT)
21
+ finalIrradiance*=clearcoatOut.conservationFactor;
22
+ #if defined(CLEARCOAT_TINT)
23
+ finalIrradiance*=clearcoatOut.absorption;
24
+ #endif
25
+ #endif
26
+ #if defined(SS_REFRACTION)
27
+ finalIrradiance*=subSurfaceOut.refractionFactorForIrradiance;
28
+ #endif
29
+ #if defined(SS_TRANSLUCENCY)
30
+ finalIrradiance*=(1.0-subSurfaceOut.translucencyIntensity);finalIrradiance+=subSurfaceOut.refractionIrradiance;
31
+ #endif
32
+ finalIrradiance*=surfaceAlbedo.rgb;finalIrradiance*=vLightingIntensity.z;finalIrradiance*=aoOut.ambientOcclusionColor;
33
+ #endif
34
+ #ifdef SPECULARTERM
35
+ var finalSpecular: vec3f=specularBase;finalSpecular=max(finalSpecular,vec3f(0.0));var finalSpecularScaled: vec3f=finalSpecular*vLightingIntensity.x*vLightingIntensity.w;
36
+ #if defined(ENVIRONMENTBRDF) && defined(MS_BRDF_ENERGY_CONSERVATION)
37
+ finalSpecularScaled*=energyConservationFactor;
38
+ #endif
39
+ #if defined(SHEEN) && defined(ENVIRONMENTBRDF) && defined(SHEEN_ALBEDOSCALING)
40
+ finalSpecularScaled*=sheenOut.sheenAlbedoScaling;
41
+ #endif
42
+ #endif
43
+ #ifdef REFLECTION
44
+ var finalRadiance: vec3f=reflectionOut.environmentRadiance.rgb;finalRadiance*=subSurfaceOut.specularEnvironmentReflectance;var finalRadianceScaled: vec3f=finalRadiance*vLightingIntensity.z;
45
+ #if defined(ENVIRONMENTBRDF) && defined(MS_BRDF_ENERGY_CONSERVATION)
46
+ finalRadianceScaled*=energyConservationFactor;
47
+ #endif
48
+ #if defined(SHEEN) && defined(ENVIRONMENTBRDF) && defined(SHEEN_ALBEDOSCALING)
49
+ finalRadianceScaled*=sheenOut.sheenAlbedoScaling;
50
+ #endif
51
+ #endif
52
+ #ifdef SHEEN
53
+ var finalSheen: vec3f=sheenBase*sheenOut.sheenColor;finalSheen=max(finalSheen,vec3f(0.0));var finalSheenScaled: vec3f=finalSheen*vLightingIntensity.x*vLightingIntensity.w;
54
+ #if defined(CLEARCOAT) && defined(REFLECTION) && defined(ENVIRONMENTBRDF)
55
+ sheenOut.finalSheenRadianceScaled*=clearcoatOut.conservationFactor;
56
+ #if defined(CLEARCOAT_TINT)
57
+ sheenOut.finalSheenRadianceScaled*=clearcoatOut.absorption;
58
+ #endif
59
+ #endif
60
+ #endif
61
+ #ifdef CLEARCOAT
62
+ var finalClearCoat: vec3f=clearCoatBase;finalClearCoat=max(finalClearCoat,vec3f(0.0));var finalClearCoatScaled: vec3f=finalClearCoat*vLightingIntensity.x*vLightingIntensity.w;
63
+ #if defined(ENVIRONMENTBRDF) && defined(MS_BRDF_ENERGY_CONSERVATION)
64
+ finalClearCoatScaled*=clearcoatOut.energyConservationFactorClearCoat;
65
+ #endif
66
+ #ifdef SS_REFRACTION
67
+ subSurfaceOut.finalRefraction*=clearcoatOut.conservationFactor;
68
+ #ifdef CLEARCOAT_TINT
69
+ subSurfaceOut.finalRefraction*=clearcoatOut.absorption;
70
+ #endif
71
+ #endif
72
+ #endif
73
+ #ifdef ALPHABLEND
74
+ var luminanceOverAlpha: f32=0.0;
75
+ #if defined(REFLECTION) && defined(RADIANCEOVERALPHA)
76
+ luminanceOverAlpha+=getLuminance(finalRadianceScaled);
77
+ #if defined(CLEARCOAT)
78
+ luminanceOverAlpha+=getLuminance(clearcoatOut.finalClearCoatRadianceScaled);
79
+ #endif
80
+ #endif
81
+ #if defined(SPECULARTERM) && defined(SPECULAROVERALPHA)
82
+ luminanceOverAlpha+=getLuminance(finalSpecularScaled);
83
+ #endif
84
+ #if defined(CLEARCOAT) && defined(CLEARCOATOVERALPHA)
85
+ luminanceOverAlpha+=getLuminance(finalClearCoatScaled);
86
+ #endif
87
+ #if defined(RADIANCEOVERALPHA) || defined(SPECULAROVERALPHA) || defined(CLEARCOATOVERALPHA)
88
+ alpha=saturate(alpha+luminanceOverAlpha*luminanceOverAlpha);
89
+ #endif
90
+ #endif
91
+ `;
92
+ // Sideeffect
93
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
94
+ /** @internal */
95
+ export const pbrBlockFinalLitComponents = { name, shader };
96
+ //# sourceMappingURL=pbrBlockFinalLitComponents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockFinalLitComponents.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockFinalLitComponents.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,4BAA4B,CAAC;AAC1C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuFd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockFinalLitComponents\";\nconst shader = `aggShadow=aggShadow/numLights;\n#if defined(ENVIRONMENTBRDF)\n#ifdef MS_BRDF_ENERGY_CONSERVATION\nvar energyConservationFactor: vec3f=getEnergyConservationFactor(clearcoatOut.specularEnvironmentR0,environmentBrdf);\n#endif\n#endif\n#ifndef METALLICWORKFLOW\n#ifdef SPECULAR_GLOSSINESS_ENERGY_CONSERVATION\nsurfaceAlbedo=(1.-reflectance)*surfaceAlbedo.rgb;\n#endif\n#endif\n#if defined(SHEEN) && defined(SHEEN_ALBEDOSCALING) && defined(ENVIRONMENTBRDF)\nsurfaceAlbedo=sheenOut.sheenAlbedoScaling*surfaceAlbedo.rgb;\n#endif\n#ifdef REFLECTION\nvar finalIrradiance: vec3f=reflectionOut.environmentIrradiance;\n#if defined(CLEARCOAT)\nfinalIrradiance*=clearcoatOut.conservationFactor;\n#if defined(CLEARCOAT_TINT)\nfinalIrradiance*=clearcoatOut.absorption;\n#endif\n#endif\n#if defined(SS_REFRACTION)\nfinalIrradiance*=subSurfaceOut.refractionFactorForIrradiance;\n#endif\n#if defined(SS_TRANSLUCENCY)\nfinalIrradiance*=(1.0-subSurfaceOut.translucencyIntensity);finalIrradiance+=subSurfaceOut.refractionIrradiance;\n#endif\nfinalIrradiance*=surfaceAlbedo.rgb;finalIrradiance*=vLightingIntensity.z;finalIrradiance*=aoOut.ambientOcclusionColor;\n#endif\n#ifdef SPECULARTERM\nvar finalSpecular: vec3f=specularBase;finalSpecular=max(finalSpecular,vec3f(0.0));var finalSpecularScaled: vec3f=finalSpecular*vLightingIntensity.x*vLightingIntensity.w;\n#if defined(ENVIRONMENTBRDF) && defined(MS_BRDF_ENERGY_CONSERVATION)\nfinalSpecularScaled*=energyConservationFactor;\n#endif\n#if defined(SHEEN) && defined(ENVIRONMENTBRDF) && defined(SHEEN_ALBEDOSCALING)\nfinalSpecularScaled*=sheenOut.sheenAlbedoScaling;\n#endif\n#endif\n#ifdef REFLECTION\nvar finalRadiance: vec3f=reflectionOut.environmentRadiance.rgb;finalRadiance*=subSurfaceOut.specularEnvironmentReflectance;var finalRadianceScaled: vec3f=finalRadiance*vLightingIntensity.z;\n#if defined(ENVIRONMENTBRDF) && defined(MS_BRDF_ENERGY_CONSERVATION)\nfinalRadianceScaled*=energyConservationFactor;\n#endif\n#if defined(SHEEN) && defined(ENVIRONMENTBRDF) && defined(SHEEN_ALBEDOSCALING)\nfinalRadianceScaled*=sheenOut.sheenAlbedoScaling;\n#endif\n#endif\n#ifdef SHEEN\nvar finalSheen: vec3f=sheenBase*sheenOut.sheenColor;finalSheen=max(finalSheen,vec3f(0.0));var finalSheenScaled: vec3f=finalSheen*vLightingIntensity.x*vLightingIntensity.w;\n#if defined(CLEARCOAT) && defined(REFLECTION) && defined(ENVIRONMENTBRDF)\nsheenOut.finalSheenRadianceScaled*=clearcoatOut.conservationFactor;\n#if defined(CLEARCOAT_TINT)\nsheenOut.finalSheenRadianceScaled*=clearcoatOut.absorption;\n#endif\n#endif\n#endif\n#ifdef CLEARCOAT\nvar finalClearCoat: vec3f=clearCoatBase;finalClearCoat=max(finalClearCoat,vec3f(0.0));var finalClearCoatScaled: vec3f=finalClearCoat*vLightingIntensity.x*vLightingIntensity.w;\n#if defined(ENVIRONMENTBRDF) && defined(MS_BRDF_ENERGY_CONSERVATION)\nfinalClearCoatScaled*=clearcoatOut.energyConservationFactorClearCoat;\n#endif\n#ifdef SS_REFRACTION\nsubSurfaceOut.finalRefraction*=clearcoatOut.conservationFactor;\n#ifdef CLEARCOAT_TINT\nsubSurfaceOut.finalRefraction*=clearcoatOut.absorption;\n#endif\n#endif\n#endif\n#ifdef ALPHABLEND\nvar luminanceOverAlpha: f32=0.0;\n#if defined(REFLECTION) && defined(RADIANCEOVERALPHA)\nluminanceOverAlpha+=getLuminance(finalRadianceScaled);\n#if defined(CLEARCOAT)\nluminanceOverAlpha+=getLuminance(clearcoatOut.finalClearCoatRadianceScaled);\n#endif\n#endif\n#if defined(SPECULARTERM) && defined(SPECULAROVERALPHA)\nluminanceOverAlpha+=getLuminance(finalSpecularScaled);\n#endif\n#if defined(CLEARCOAT) && defined(CLEARCOATOVERALPHA)\nluminanceOverAlpha+=getLuminance(finalClearCoatScaled);\n#endif\n#if defined(RADIANCEOVERALPHA) || defined(SPECULAROVERALPHA) || defined(CLEARCOATOVERALPHA)\nalpha=saturate(alpha+luminanceOverAlpha*luminanceOverAlpha);\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockFinalLitComponents = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockFinalUnlitComponents: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,26 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockFinalUnlitComponents";
4
+ const shader = `var finalDiffuse: vec3f=diffuseBase;finalDiffuse*=surfaceAlbedo.rgb;finalDiffuse=max(finalDiffuse,vec3f(0.0));finalDiffuse*=vLightingIntensity.x;var finalAmbient: vec3f=vAmbientColor;finalAmbient*=surfaceAlbedo.rgb;var finalEmissive: vec3f=vEmissiveColor;
5
+ #ifdef EMISSIVE
6
+ var emissiveColorTex: vec3f=texture2D(emissiveSampler,vEmissiveUV+uvOffset).rgb;
7
+ #ifdef GAMMAEMISSIVE
8
+ finalEmissive*=toLinearSpace(emissiveColorTex.rgb);
9
+ #else
10
+ finalEmissive*=emissiveColorTex.rgb;
11
+ #endif
12
+ finalEmissive*= vEmissiveInfos.y;
13
+ #endif
14
+ finalEmissive*=vLightingIntensity.y;
15
+ #ifdef AMBIENT
16
+ var ambientOcclusionForDirectDiffuse: vec3f=mix( vec3f(1.),aoOut.ambientOcclusionColor,vAmbientInfos.w);
17
+ #else
18
+ var ambientOcclusionForDirectDiffuse: vec3f=aoOut.ambientOcclusionColor;
19
+ #endif
20
+ finalAmbient*=aoOut.ambientOcclusionColor;finalDiffuse*=ambientOcclusionForDirectDiffuse;
21
+ `;
22
+ // Sideeffect
23
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
24
+ /** @internal */
25
+ export const pbrBlockFinalUnlitComponents = { name, shader };
26
+ //# sourceMappingURL=pbrBlockFinalUnlitComponents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockFinalUnlitComponents.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,8BAA8B,CAAC;AAC5C,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;CAiBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockFinalUnlitComponents\";\nconst shader = `var finalDiffuse: vec3f=diffuseBase;finalDiffuse*=surfaceAlbedo.rgb;finalDiffuse=max(finalDiffuse,vec3f(0.0));finalDiffuse*=vLightingIntensity.x;var finalAmbient: vec3f=vAmbientColor;finalAmbient*=surfaceAlbedo.rgb;var finalEmissive: vec3f=vEmissiveColor;\n#ifdef EMISSIVE\nvar emissiveColorTex: vec3f=texture2D(emissiveSampler,vEmissiveUV+uvOffset).rgb;\n#ifdef GAMMAEMISSIVE\nfinalEmissive*=toLinearSpace(emissiveColorTex.rgb);\n#else\nfinalEmissive*=emissiveColorTex.rgb;\n#endif\nfinalEmissive*= vEmissiveInfos.y;\n#endif\nfinalEmissive*=vLightingIntensity.y;\n#ifdef AMBIENT\nvar ambientOcclusionForDirectDiffuse: vec3f=mix( vec3f(1.),aoOut.ambientOcclusionColor,vAmbientInfos.w);\n#else\nvar ambientOcclusionForDirectDiffuse: vec3f=aoOut.ambientOcclusionColor;\n#endif\nfinalAmbient*=aoOut.ambientOcclusionColor;finalDiffuse*=ambientOcclusionForDirectDiffuse;\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockFinalUnlitComponents = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockGeometryInfo: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,33 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockGeometryInfo";
4
+ const shader = `var NdotVUnclamped: f32=dot(normalW,viewDirectionW);var NdotV: f32=absEps(NdotVUnclamped);var alphaG: f32=convertRoughnessToAverageSlope(roughness);var AARoughnessFactors: vec2f=getAARoughnessFactors(normalW.xyz);
5
+ #ifdef SPECULARAA
6
+ alphaG+=AARoughnessFactors.y;
7
+ #endif
8
+ #if defined(ENVIRONMENTBRDF)
9
+ var environmentBrdf: vec3f=getBRDFLookup(NdotV,roughness);
10
+ #endif
11
+ #if defined(ENVIRONMENTBRDF) && !defined(REFLECTIONMAP_SKYBOX)
12
+ #ifdef RADIANCEOCCLUSION
13
+ #ifdef AMBIENTINGRAYSCALE
14
+ var ambientMonochrome: f32=aoOut.ambientOcclusionColor.r;
15
+ #else
16
+ var ambientMonochrome: f32=getLuminance(aoOut.ambientOcclusionColor);
17
+ #endif
18
+ var seo: f32=environmentRadianceOcclusion(ambientMonochrome,NdotVUnclamped);
19
+ #endif
20
+ #ifdef HORIZONOCCLUSION
21
+ #ifdef BUMP
22
+ #ifdef REFLECTIONMAP_3D
23
+ var eho: f32=environmentHorizonOcclusion(-viewDirectionW,normalW,geometricNormalW);
24
+ #endif
25
+ #endif
26
+ #endif
27
+ #endif
28
+ `;
29
+ // Sideeffect
30
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
31
+ /** @internal */
32
+ export const pbrBlockGeometryInfo = { name, shader };
33
+ //# sourceMappingURL=pbrBlockGeometryInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockGeometryInfo.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockGeometryInfo.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockGeometryInfo\";\nconst shader = `var NdotVUnclamped: f32=dot(normalW,viewDirectionW);var NdotV: f32=absEps(NdotVUnclamped);var alphaG: f32=convertRoughnessToAverageSlope(roughness);var AARoughnessFactors: vec2f=getAARoughnessFactors(normalW.xyz);\n#ifdef SPECULARAA\nalphaG+=AARoughnessFactors.y;\n#endif\n#if defined(ENVIRONMENTBRDF)\nvar environmentBrdf: vec3f=getBRDFLookup(NdotV,roughness);\n#endif\n#if defined(ENVIRONMENTBRDF) && !defined(REFLECTIONMAP_SKYBOX)\n#ifdef RADIANCEOCCLUSION\n#ifdef AMBIENTINGRAYSCALE\nvar ambientMonochrome: f32=aoOut.ambientOcclusionColor.r;\n#else\nvar ambientMonochrome: f32=getLuminance(aoOut.ambientOcclusionColor);\n#endif\nvar seo: f32=environmentRadianceOcclusion(ambientMonochrome,NdotVUnclamped);\n#endif\n#ifdef HORIZONOCCLUSION\n#ifdef BUMP\n#ifdef REFLECTIONMAP_3D\nvar eho: f32=environmentHorizonOcclusion(-viewDirectionW,normalW,geometricNormalW);\n#endif\n#endif\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockGeometryInfo = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockImageProcessing: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,20 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockImageProcessing";
4
+ const shader = `#if defined(IMAGEPROCESSINGPOSTPROCESS) || defined(SS_SCATTERING)
5
+ #if !defined(SKIPFINALCOLORCLAMP)
6
+ finalColor.rgb=clamp(finalColor.rgb,0.,30.0);
7
+ #endif
8
+ #else
9
+ finalColor=applyImageProcessing(finalColor);
10
+ #endif
11
+ finalColor.a*=visibility;
12
+ #ifdef PREMULTIPLYALPHA
13
+ finalColor.rgb*=finalColor.a;
14
+ #endif
15
+ `;
16
+ // Sideeffect
17
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
18
+ /** @internal */
19
+ export const pbrBlockImageProcessing = { name, shader };
20
+ //# sourceMappingURL=pbrBlockImageProcessing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockImageProcessing.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockImageProcessing.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,yBAAyB,CAAC;AACvC,MAAM,MAAM,GAAG;;;;;;;;;;;CAWd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockImageProcessing\";\nconst shader = `#if defined(IMAGEPROCESSINGPOSTPROCESS) || defined(SS_SCATTERING)\n#if !defined(SKIPFINALCOLORCLAMP)\nfinalColor.rgb=clamp(finalColor.rgb,0.,30.0);\n#endif\n#else\nfinalColor=applyImageProcessing(finalColor);\n#endif\nfinalColor.a*=visibility;\n#ifdef PREMULTIPLYALPHA\nfinalColor.rgb*=finalColor.a;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockImageProcessing = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockIridescence: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,51 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockIridescence";
4
+ const shader = `struct iridescenceOutParams
5
+ {iridescenceIntensity: f32,
6
+ iridescenceIOR: f32,
7
+ iridescenceThickness: f32,
8
+ specularEnvironmentR0: vec3f};
9
+ #ifdef IRIDESCENCE
10
+ #define pbr_inline
11
+ #define inline
12
+ fn iridescenceBlock(
13
+ vIridescenceParams: vec4f
14
+ ,viewAngle: f32,
15
+ ,specularEnvironmentR0: vec3f
16
+ #ifdef IRIDESCENCE_TEXTURE
17
+ ,iridescenceMapData: vec2f
18
+ #endif
19
+ #ifdef IRIDESCENCE_THICKNESS_TEXTURE
20
+ ,iridescenceThicknessMapData: vec2f
21
+ #endif
22
+ #ifdef CLEARCOAT
23
+ ,NdotVUnclamped: f32
24
+ #ifdef CLEARCOAT_TEXTURE
25
+ ,clearCoatMapData: vec2f
26
+ #endif
27
+ #endif
28
+ )->iridescenceOutParams
29
+ {var outParams: iridescenceOutParams;var iridescenceIntensity: f32=vIridescenceParams.x;var iridescenceIOR: f32=vIridescenceParams.y;var iridescenceThicknessMin: f32=vIridescenceParams.z;var iridescenceThicknessMax: f32=vIridescenceParams.w;var iridescenceThicknessWeight: f32=1.;
30
+ #ifdef IRIDESCENCE_TEXTURE
31
+ iridescenceIntensity*=iridescenceMapData.x;
32
+ #endif
33
+ #if defined(IRIDESCENCE_THICKNESS_TEXTURE)
34
+ iridescenceThicknessWeight=iridescenceThicknessMapData.g;
35
+ #endif
36
+ var iridescenceThickness: f32=mix(iridescenceThicknessMin,iridescenceThicknessMax,iridescenceThicknessWeight);var topIor: f32=1.;
37
+ #ifdef CLEARCOAT
38
+ var clearCoatIntensity: f32=vClearCoatParams.x;
39
+ #ifdef CLEARCOAT_TEXTURE
40
+ clearCoatIntensity*=clearCoatMapData.x;
41
+ #endif
42
+ topIor=mix(1.0,vClearCoatRefractionParams.w-1.,clearCoatIntensity);viewAngle=sqrt(1.0+square(1.0/topIor)*(square(NdotVUnclamped)-1.0));
43
+ #endif
44
+ var iridescenceFresnel: vec3f=evalIridescence(topIor,iridescenceIOR,viewAngle,iridescenceThickness,specularEnvironmentR0);outParams.specularEnvironmentR0=mix(specularEnvironmentR0,iridescenceFresnel,iridescenceIntensity);outParams.iridescenceIntensity=iridescenceIntensity;outParams.iridescenceThickness=iridescenceThickness;outParams.iridescenceIOR=iridescenceIOR;return outParams;}
45
+ #endif
46
+ `;
47
+ // Sideeffect
48
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
49
+ /** @internal */
50
+ export const pbrBlockIridescence = { name, shader };
51
+ //# sourceMappingURL=pbrBlockIridescence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockIridescence.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockIridescence.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Cd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockIridescence\";\nconst shader = `struct iridescenceOutParams\n{iridescenceIntensity: f32,\niridescenceIOR: f32,\niridescenceThickness: f32,\nspecularEnvironmentR0: vec3f};\n#ifdef IRIDESCENCE\n#define pbr_inline\n#define inline\nfn iridescenceBlock(\nvIridescenceParams: vec4f\n,viewAngle: f32,\n,specularEnvironmentR0: vec3f\n#ifdef IRIDESCENCE_TEXTURE\n,iridescenceMapData: vec2f\n#endif\n#ifdef IRIDESCENCE_THICKNESS_TEXTURE\n,iridescenceThicknessMapData: vec2f\n#endif\n#ifdef CLEARCOAT\n,NdotVUnclamped: f32\n#ifdef CLEARCOAT_TEXTURE\n,clearCoatMapData: vec2f\n#endif\n#endif\n)->iridescenceOutParams\n{var outParams: iridescenceOutParams;var iridescenceIntensity: f32=vIridescenceParams.x;var iridescenceIOR: f32=vIridescenceParams.y;var iridescenceThicknessMin: f32=vIridescenceParams.z;var iridescenceThicknessMax: f32=vIridescenceParams.w;var iridescenceThicknessWeight: f32=1.;\n#ifdef IRIDESCENCE_TEXTURE\niridescenceIntensity*=iridescenceMapData.x;\n#endif\n#if defined(IRIDESCENCE_THICKNESS_TEXTURE)\niridescenceThicknessWeight=iridescenceThicknessMapData.g;\n#endif\nvar iridescenceThickness: f32=mix(iridescenceThicknessMin,iridescenceThicknessMax,iridescenceThicknessWeight);var topIor: f32=1.; \n#ifdef CLEARCOAT\nvar clearCoatIntensity: f32=vClearCoatParams.x;\n#ifdef CLEARCOAT_TEXTURE\nclearCoatIntensity*=clearCoatMapData.x;\n#endif\ntopIor=mix(1.0,vClearCoatRefractionParams.w-1.,clearCoatIntensity);viewAngle=sqrt(1.0+square(1.0/topIor)*(square(NdotVUnclamped)-1.0));\n#endif\nvar iridescenceFresnel: vec3f=evalIridescence(topIor,iridescenceIOR,viewAngle,iridescenceThickness,specularEnvironmentR0);outParams.specularEnvironmentR0=mix(specularEnvironmentR0,iridescenceFresnel,iridescenceIntensity);outParams.iridescenceIntensity=iridescenceIntensity;outParams.iridescenceThickness=iridescenceThickness;outParams.iridescenceIOR=iridescenceIOR;return outParams;}\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockIridescence = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockLightmapInit: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,19 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockLightmapInit";
4
+ const shader = `#ifdef LIGHTMAP
5
+ var lightmapColor: vec4f=texture2D(lightmapSampler,vLightmapUV+uvOffset);
6
+ #ifdef RGBDLIGHTMAP
7
+ lightmapColor.rgb=fromRGBD(lightmapColor);
8
+ #endif
9
+ #ifdef GAMMALIGHTMAP
10
+ lightmapColor.rgb=toLinearSpace(lightmapColor.rgb);
11
+ #endif
12
+ lightmapColor.rgb*=vLightmapInfos.y;
13
+ #endif
14
+ `;
15
+ // Sideeffect
16
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
17
+ /** @internal */
18
+ export const pbrBlockLightmapInit = { name, shader };
19
+ //# sourceMappingURL=pbrBlockLightmapInit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockLightmapInit.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockLightmapInit.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;CAUd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockLightmapInit\";\nconst shader = `#ifdef LIGHTMAP\nvar lightmapColor: vec4f=texture2D(lightmapSampler,vLightmapUV+uvOffset);\n#ifdef RGBDLIGHTMAP\nlightmapColor.rgb=fromRGBD(lightmapColor);\n#endif\n#ifdef GAMMALIGHTMAP\nlightmapColor.rgb=toLinearSpace(lightmapColor.rgb);\n#endif\nlightmapColor.rgb*=vLightmapInfos.y;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockLightmapInit = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockNormalFinal: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,19 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockNormalFinal";
4
+ const shader = `#if defined(FORCENORMALFORWARD) && defined(NORMAL)
5
+ var faceNormal: vec3f=normalize(cross(dpdx(vPositionW),dpdy(vPositionW)))*vEyePosition.w;
6
+ #if defined(TWOSIDEDLIGHTING)
7
+ faceNormal=gl_FrontFacing ? faceNormal : -faceNormal;
8
+ #endif
9
+ normalW*=sign(dot(normalW,faceNormal));
10
+ #endif
11
+ #if defined(TWOSIDEDLIGHTING) && defined(NORMAL)
12
+ normalW=gl_FrontFacing ? normalW : -normalW;
13
+ #endif
14
+ `;
15
+ // Sideeffect
16
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
17
+ /** @internal */
18
+ export const pbrBlockNormalFinal = { name, shader };
19
+ //# sourceMappingURL=pbrBlockNormalFinal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockNormalFinal.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockNormalFinal.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;CAUd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockNormalFinal\";\nconst shader = `#if defined(FORCENORMALFORWARD) && defined(NORMAL)\nvar faceNormal: vec3f=normalize(cross(dpdx(vPositionW),dpdy(vPositionW)))*vEyePosition.w;\n#if defined(TWOSIDEDLIGHTING)\nfaceNormal=gl_FrontFacing ? faceNormal : -faceNormal;\n#endif\nnormalW*=sign(dot(normalW,faceNormal));\n#endif\n#if defined(TWOSIDEDLIGHTING) && defined(NORMAL)\nnormalW=gl_FrontFacing ? normalW : -normalW;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockNormalFinal = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockReflectance: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,30 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockReflectance";
4
+ const shader = `#if defined(ENVIRONMENTBRDF) && !defined(REFLECTIONMAP_SKYBOX)
5
+ var specularEnvironmentReflectance: vec3f=getReflectanceFromBRDFWithEnvLookup(clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,environmentBrdf);
6
+ #ifdef RADIANCEOCCLUSION
7
+ specularEnvironmentReflectance*=seo;
8
+ #endif
9
+ #ifdef HORIZONOCCLUSION
10
+ #ifdef BUMP
11
+ #ifdef REFLECTIONMAP_3D
12
+ specularEnvironmentReflectance*=eho;
13
+ #endif
14
+ #endif
15
+ #endif
16
+ #else
17
+ var specularEnvironmentReflectance: vec3f=getReflectanceFromAnalyticalBRDFLookup_Jones(NdotV,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,sqrt(microSurface));
18
+ #endif
19
+ #ifdef CLEARCOAT
20
+ specularEnvironmentReflectance*=clearcoatOut.conservationFactor;
21
+ #if defined(CLEARCOAT_TINT)
22
+ specularEnvironmentReflectance*=clearcoatOut.absorption;
23
+ #endif
24
+ #endif
25
+ `;
26
+ // Sideeffect
27
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
28
+ /** @internal */
29
+ export const pbrBlockReflectance = { name, shader };
30
+ //# sourceMappingURL=pbrBlockReflectance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockReflectance.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockReflectance.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockReflectance\";\nconst shader = `#if defined(ENVIRONMENTBRDF) && !defined(REFLECTIONMAP_SKYBOX)\nvar specularEnvironmentReflectance: vec3f=getReflectanceFromBRDFWithEnvLookup(clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,environmentBrdf);\n#ifdef RADIANCEOCCLUSION\nspecularEnvironmentReflectance*=seo;\n#endif\n#ifdef HORIZONOCCLUSION\n#ifdef BUMP\n#ifdef REFLECTIONMAP_3D\nspecularEnvironmentReflectance*=eho;\n#endif\n#endif\n#endif\n#else\nvar specularEnvironmentReflectance: vec3f=getReflectanceFromAnalyticalBRDFLookup_Jones(NdotV,clearcoatOut.specularEnvironmentR0,specularEnvironmentR90,sqrt(microSurface));\n#endif\n#ifdef CLEARCOAT\nspecularEnvironmentReflectance*=clearcoatOut.conservationFactor;\n#if defined(CLEARCOAT_TINT)\nspecularEnvironmentReflectance*=clearcoatOut.absorption;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockReflectance = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockReflectance0: {
3
+ name: string;
4
+ shader: string;
5
+ };
@@ -0,0 +1,18 @@
1
+ // Do not edit.
2
+ import { ShaderStore } from "../../Engines/shaderStore.js";
3
+ const name = "pbrBlockReflectance0";
4
+ const shader = `var reflectance: f32=max(max(reflectivityOut.surfaceReflectivityColor.r,reflectivityOut.surfaceReflectivityColor.g),reflectivityOut.surfaceReflectivityColor.b);var specularEnvironmentR0: vec3f=reflectivityOut.surfaceReflectivityColor.rgb;
5
+ #ifdef METALLICWORKFLOW
6
+ var specularEnvironmentR90: vec3f= vec3f(metallicReflectanceFactors.a);
7
+ #else
8
+ var specularEnvironmentR90: vec3f= vec3f(1.0,1.0,1.0);
9
+ #endif
10
+ #ifdef ALPHAFRESNEL
11
+ var reflectance90: f32=fresnelGrazingReflectance(reflectance);specularEnvironmentR90=specularEnvironmentR90*reflectance90;
12
+ #endif
13
+ `;
14
+ // Sideeffect
15
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
16
+ /** @internal */
17
+ export const pbrBlockReflectance0 = { name, shader };
18
+ //# sourceMappingURL=pbrBlockReflectance0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbrBlockReflectance0.js","sourceRoot":"","sources":["../../../../../dev/core/src/ShadersWGSL/ShadersInclude/pbrBlockReflectance0.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;CASd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACpD,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\n\nconst name = \"pbrBlockReflectance0\";\nconst shader = `var reflectance: f32=max(max(reflectivityOut.surfaceReflectivityColor.r,reflectivityOut.surfaceReflectivityColor.g),reflectivityOut.surfaceReflectivityColor.b);var specularEnvironmentR0: vec3f=reflectivityOut.surfaceReflectivityColor.rgb;\n#ifdef METALLICWORKFLOW\nvar specularEnvironmentR90: vec3f= vec3f(metallicReflectanceFactors.a);\n#else \nvar specularEnvironmentR90: vec3f= vec3f(1.0,1.0,1.0);\n#endif\n#ifdef ALPHAFRESNEL\nvar reflectance90: f32=fresnelGrazingReflectance(reflectance);specularEnvironmentR90=specularEnvironmentR90*reflectance90;\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const pbrBlockReflectance0 = { name, shader };\n"]}
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export declare const pbrBlockReflection: {
3
+ name: string;
4
+ shader: string;
5
+ };