@babylonjs/core 8.51.0 → 8.51.2

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 (281) hide show
  1. package/Animations/animation.d.ts +6 -2
  2. package/Animations/animation.js +28 -4
  3. package/Animations/animation.js.map +1 -1
  4. package/Animations/animationGroup.d.ts +2 -1
  5. package/Animations/animationGroup.js +3 -2
  6. package/Animations/animationGroup.js.map +1 -1
  7. package/Animations/animatorAvatar.d.ts +161 -0
  8. package/Animations/animatorAvatar.js +573 -0
  9. package/Animations/animatorAvatar.js.map +1 -0
  10. package/Animations/index.d.ts +1 -0
  11. package/Animations/index.js +1 -0
  12. package/Animations/index.js.map +1 -1
  13. package/Bones/index.d.ts +1 -0
  14. package/Bones/index.js +1 -0
  15. package/Bones/index.js.map +1 -1
  16. package/Bones/skeleton.d.ts +13 -0
  17. package/Bones/skeleton.functions.d.ts +26 -0
  18. package/Bones/skeleton.functions.js +91 -0
  19. package/Bones/skeleton.functions.js.map +1 -0
  20. package/Bones/skeleton.js +26 -0
  21. package/Bones/skeleton.js.map +1 -1
  22. package/Collisions/gpuPicker.d.ts +11 -0
  23. package/Collisions/gpuPicker.js +148 -19
  24. package/Collisions/gpuPicker.js.map +1 -1
  25. package/Debug/skeletonViewer.d.ts +4 -8
  26. package/Debug/skeletonViewer.js +13 -22
  27. package/Debug/skeletonViewer.js.map +1 -1
  28. package/Engines/abstractEngine.js +2 -2
  29. package/Engines/abstractEngine.js.map +1 -1
  30. package/Materials/Background/backgroundMaterial.js +37 -2
  31. package/Materials/Background/backgroundMaterial.js.map +1 -1
  32. package/Materials/GaussianSplatting/gaussianSplattingGpuPickingMaterialPlugin.d.ts +109 -0
  33. package/Materials/GaussianSplatting/gaussianSplattingGpuPickingMaterialPlugin.js +210 -0
  34. package/Materials/GaussianSplatting/gaussianSplattingGpuPickingMaterialPlugin.js.map +1 -0
  35. package/Materials/GaussianSplatting/gaussianSplattingMaterial.js +17 -3
  36. package/Materials/GaussianSplatting/gaussianSplattingMaterial.js.map +1 -1
  37. package/Materials/GaussianSplatting/gaussianSplattingSolidColorMaterialPlugin.d.ts +1 -1
  38. package/Materials/GaussianSplatting/gaussianSplattingSolidColorMaterialPlugin.js +4 -3
  39. package/Materials/GaussianSplatting/gaussianSplattingSolidColorMaterialPlugin.js.map +1 -1
  40. package/Materials/GreasedLine/greasedLinePluginMaterial.js +0 -6
  41. package/Materials/GreasedLine/greasedLinePluginMaterial.js.map +1 -1
  42. package/Materials/GreasedLine/greasedLinePluginMaterialShadersGLSL.js +0 -1
  43. package/Materials/GreasedLine/greasedLinePluginMaterialShadersGLSL.js.map +1 -1
  44. package/Materials/GreasedLine/greasedLinePluginMaterialShadersWGSL.js +0 -1
  45. package/Materials/GreasedLine/greasedLinePluginMaterialShadersWGSL.js.map +1 -1
  46. package/Materials/Node/Blocks/Dual/clipPlanesBlock.d.ts +14 -0
  47. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js +14 -0
  48. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js.map +1 -1
  49. package/Materials/Node/Blocks/Dual/currentScreenBlock.d.ts +20 -1
  50. package/Materials/Node/Blocks/Dual/currentScreenBlock.js +20 -1
  51. package/Materials/Node/Blocks/Dual/currentScreenBlock.js.map +1 -1
  52. package/Materials/Node/Blocks/Dual/depthSourceBlock.d.ts +13 -0
  53. package/Materials/Node/Blocks/Dual/depthSourceBlock.js +13 -0
  54. package/Materials/Node/Blocks/Dual/depthSourceBlock.js.map +1 -1
  55. package/Materials/Node/Blocks/Dual/fogBlock.d.ts +21 -0
  56. package/Materials/Node/Blocks/Dual/fogBlock.js +21 -0
  57. package/Materials/Node/Blocks/Dual/fogBlock.js.map +1 -1
  58. package/Materials/Node/Blocks/Dual/imageSourceBlock.d.ts +21 -0
  59. package/Materials/Node/Blocks/Dual/imageSourceBlock.js +21 -0
  60. package/Materials/Node/Blocks/Dual/imageSourceBlock.js.map +1 -1
  61. package/Materials/Node/Blocks/Dual/lightBlock.d.ts +38 -0
  62. package/Materials/Node/Blocks/Dual/lightBlock.js +38 -0
  63. package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
  64. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.d.ts +29 -0
  65. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +29 -0
  66. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  67. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.d.ts +5 -0
  68. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js +5 -0
  69. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js.map +1 -1
  70. package/Materials/Node/Blocks/Dual/sceneDepthBlock.d.ts +16 -0
  71. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +16 -0
  72. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
  73. package/Materials/Node/Blocks/Dual/smartFilterTextureBlock.d.ts +16 -0
  74. package/Materials/Node/Blocks/Dual/smartFilterTextureBlock.js +16 -0
  75. package/Materials/Node/Blocks/Dual/smartFilterTextureBlock.js.map +1 -1
  76. package/Materials/Node/Blocks/Dual/textureBlock.d.ts +34 -0
  77. package/Materials/Node/Blocks/Dual/textureBlock.js +34 -0
  78. package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
  79. package/Materials/Node/Blocks/Fragment/TBNBlock.d.ts +17 -0
  80. package/Materials/Node/Blocks/Fragment/TBNBlock.js +17 -2
  81. package/Materials/Node/Blocks/Fragment/TBNBlock.js.map +1 -1
  82. package/Materials/Node/Blocks/Fragment/ambientOcclusionBlock.d.ts +7 -0
  83. package/Materials/Node/Blocks/Fragment/ambientOcclusionBlock.js +7 -0
  84. package/Materials/Node/Blocks/Fragment/ambientOcclusionBlock.js.map +1 -1
  85. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.d.ts +21 -0
  86. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +21 -0
  87. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
  88. package/Materials/Node/Blocks/Fragment/heightToNormalBlock.d.ts +10 -0
  89. package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js +10 -0
  90. package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js.map +1 -1
  91. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.d.ts +28 -0
  92. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js +28 -0
  93. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js.map +1 -1
  94. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.d.ts +30 -0
  95. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +30 -1
  96. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  97. package/Materials/Node/Blocks/Fragment/screenSizeBlock.d.ts +4 -0
  98. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js +4 -0
  99. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js.map +1 -1
  100. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.d.ts +5 -0
  101. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js +5 -0
  102. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js.map +1 -1
  103. package/Materials/Node/Blocks/Fragment/twirlBlock.d.ts +3 -0
  104. package/Materials/Node/Blocks/Fragment/twirlBlock.js +3 -0
  105. package/Materials/Node/Blocks/Fragment/twirlBlock.js.map +1 -1
  106. package/Materials/Node/Blocks/GaussianSplatting/splatReaderBlock.d.ts +6 -0
  107. package/Materials/Node/Blocks/GaussianSplatting/splatReaderBlock.js +6 -0
  108. package/Materials/Node/Blocks/GaussianSplatting/splatReaderBlock.js.map +1 -1
  109. package/Materials/Node/Blocks/Input/inputBlock.d.ts +16 -0
  110. package/Materials/Node/Blocks/Input/inputBlock.js +16 -1
  111. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  112. package/Materials/Node/Blocks/Input/prePassTextureBlock.d.ts +5 -0
  113. package/Materials/Node/Blocks/Input/prePassTextureBlock.js +5 -0
  114. package/Materials/Node/Blocks/Input/prePassTextureBlock.js.map +1 -1
  115. package/Materials/Node/Blocks/PBR/anisotropyBlock.d.ts +10 -0
  116. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +10 -1
  117. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  118. package/Materials/Node/Blocks/PBR/clearCoatBlock.d.ts +23 -0
  119. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +23 -1
  120. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  121. package/Materials/Node/Blocks/PBR/iridescenceBlock.d.ts +17 -0
  122. package/Materials/Node/Blocks/PBR/iridescenceBlock.js +17 -0
  123. package/Materials/Node/Blocks/PBR/iridescenceBlock.js.map +1 -1
  124. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.d.ts +41 -0
  125. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +41 -0
  126. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  127. package/Materials/Node/Blocks/PBR/reflectionBlock.d.ts +21 -0
  128. package/Materials/Node/Blocks/PBR/reflectionBlock.js +21 -0
  129. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  130. package/Materials/Node/Blocks/PBR/refractionBlock.d.ts +29 -0
  131. package/Materials/Node/Blocks/PBR/refractionBlock.js +29 -0
  132. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  133. package/Materials/Node/Blocks/PBR/sheenBlock.d.ts +14 -0
  134. package/Materials/Node/Blocks/PBR/sheenBlock.js +14 -0
  135. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  136. package/Materials/Node/Blocks/PBR/subSurfaceBlock.d.ts +7 -0
  137. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +7 -0
  138. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
  139. package/Materials/Node/Blocks/Particle/particleTextureBlock.d.ts +23 -0
  140. package/Materials/Node/Blocks/Particle/particleTextureBlock.js +23 -0
  141. package/Materials/Node/Blocks/Particle/particleTextureBlock.js.map +1 -1
  142. package/Materials/Node/Blocks/Teleport/teleportInBlock.d.ts +6 -0
  143. package/Materials/Node/Blocks/Teleport/teleportInBlock.js +6 -0
  144. package/Materials/Node/Blocks/Teleport/teleportInBlock.js.map +1 -1
  145. package/Materials/Node/Blocks/Teleport/teleportOutBlock.d.ts +17 -0
  146. package/Materials/Node/Blocks/Teleport/teleportOutBlock.js +17 -0
  147. package/Materials/Node/Blocks/Teleport/teleportOutBlock.js.map +1 -1
  148. package/Materials/Node/Blocks/Vertex/bonesBlock.d.ts +22 -0
  149. package/Materials/Node/Blocks/Vertex/bonesBlock.js +22 -0
  150. package/Materials/Node/Blocks/Vertex/bonesBlock.js.map +1 -1
  151. package/Materials/Node/Blocks/Vertex/instancesBlock.d.ts +13 -0
  152. package/Materials/Node/Blocks/Vertex/instancesBlock.js +13 -0
  153. package/Materials/Node/Blocks/Vertex/instancesBlock.js.map +1 -1
  154. package/Materials/Node/Blocks/Vertex/lightInformationBlock.d.ts +20 -0
  155. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js +20 -0
  156. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js.map +1 -1
  157. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.d.ts +27 -0
  158. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +27 -0
  159. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
  160. package/Materials/Node/Blocks/clampBlock.d.ts +10 -0
  161. package/Materials/Node/Blocks/clampBlock.js +10 -0
  162. package/Materials/Node/Blocks/clampBlock.js.map +1 -1
  163. package/Materials/Node/Blocks/cloudBlock.d.ts +10 -0
  164. package/Materials/Node/Blocks/cloudBlock.js +10 -0
  165. package/Materials/Node/Blocks/cloudBlock.js.map +1 -1
  166. package/Materials/Node/Blocks/colorMergerBlock.d.ts +10 -0
  167. package/Materials/Node/Blocks/colorMergerBlock.js +10 -0
  168. package/Materials/Node/Blocks/colorMergerBlock.js.map +1 -1
  169. package/Materials/Node/Blocks/conditionalBlock.d.ts +14 -0
  170. package/Materials/Node/Blocks/conditionalBlock.js +14 -0
  171. package/Materials/Node/Blocks/conditionalBlock.js.map +1 -1
  172. package/Materials/Node/Blocks/curveBlock.d.ts +10 -0
  173. package/Materials/Node/Blocks/curveBlock.js +10 -0
  174. package/Materials/Node/Blocks/curveBlock.js.map +1 -1
  175. package/Materials/Node/Blocks/customBlock.d.ts +10 -0
  176. package/Materials/Node/Blocks/customBlock.js +10 -0
  177. package/Materials/Node/Blocks/customBlock.js.map +1 -1
  178. package/Materials/Node/Blocks/debugBlock.d.ts +10 -0
  179. package/Materials/Node/Blocks/debugBlock.js +10 -0
  180. package/Materials/Node/Blocks/debugBlock.js.map +1 -1
  181. package/Materials/Node/Blocks/fresnelBlock.d.ts +4 -0
  182. package/Materials/Node/Blocks/fresnelBlock.js +4 -0
  183. package/Materials/Node/Blocks/fresnelBlock.js.map +1 -1
  184. package/Materials/Node/Blocks/gradientBlock.d.ts +10 -0
  185. package/Materials/Node/Blocks/gradientBlock.js +10 -0
  186. package/Materials/Node/Blocks/gradientBlock.js.map +1 -1
  187. package/Materials/Node/Blocks/loopBlock.d.ts +10 -0
  188. package/Materials/Node/Blocks/loopBlock.js +10 -0
  189. package/Materials/Node/Blocks/loopBlock.js.map +1 -1
  190. package/Materials/Node/Blocks/matrixBuilderBlock.d.ts +1 -0
  191. package/Materials/Node/Blocks/matrixBuilderBlock.js +1 -0
  192. package/Materials/Node/Blocks/matrixBuilderBlock.js.map +1 -1
  193. package/Materials/Node/Blocks/meshAttributeExistsBlock.d.ts +10 -0
  194. package/Materials/Node/Blocks/meshAttributeExistsBlock.js +10 -0
  195. package/Materials/Node/Blocks/meshAttributeExistsBlock.js.map +1 -1
  196. package/Materials/Node/Blocks/pannerBlock.d.ts +5 -0
  197. package/Materials/Node/Blocks/pannerBlock.js +5 -0
  198. package/Materials/Node/Blocks/pannerBlock.js.map +1 -1
  199. package/Materials/Node/Blocks/remapBlock.d.ts +10 -0
  200. package/Materials/Node/Blocks/remapBlock.js +10 -0
  201. package/Materials/Node/Blocks/remapBlock.js.map +1 -1
  202. package/Materials/Node/Blocks/rotate2dBlock.d.ts +1 -0
  203. package/Materials/Node/Blocks/rotate2dBlock.js +1 -0
  204. package/Materials/Node/Blocks/rotate2dBlock.js.map +1 -1
  205. package/Materials/Node/Blocks/transformBlock.d.ts +10 -0
  206. package/Materials/Node/Blocks/transformBlock.js +10 -0
  207. package/Materials/Node/Blocks/transformBlock.js.map +1 -1
  208. package/Materials/Node/Blocks/triPlanarBlock.d.ts +22 -0
  209. package/Materials/Node/Blocks/triPlanarBlock.js +22 -0
  210. package/Materials/Node/Blocks/triPlanarBlock.js.map +1 -1
  211. package/Materials/Node/Blocks/trigonometryBlock.d.ts +10 -0
  212. package/Materials/Node/Blocks/trigonometryBlock.js +10 -0
  213. package/Materials/Node/Blocks/trigonometryBlock.js.map +1 -1
  214. package/Materials/Node/Blocks/vectorMergerBlock.d.ts +10 -0
  215. package/Materials/Node/Blocks/vectorMergerBlock.js +10 -0
  216. package/Materials/Node/Blocks/vectorMergerBlock.js.map +1 -1
  217. package/Materials/Node/Blocks/viewDirectionBlock.d.ts +5 -0
  218. package/Materials/Node/Blocks/viewDirectionBlock.js +5 -0
  219. package/Materials/Node/Blocks/viewDirectionBlock.js.map +1 -1
  220. package/Materials/Node/Blocks/waveBlock.d.ts +10 -0
  221. package/Materials/Node/Blocks/waveBlock.js +10 -0
  222. package/Materials/Node/Blocks/waveBlock.js.map +1 -1
  223. package/Materials/Node/Blocks/worleyNoise3DBlock.d.ts +1 -0
  224. package/Materials/Node/Blocks/worleyNoise3DBlock.js +1 -0
  225. package/Materials/Node/Blocks/worleyNoise3DBlock.js.map +1 -1
  226. package/Materials/Node/nodeMaterial.d.ts +13 -0
  227. package/Materials/Node/nodeMaterial.js +14 -2
  228. package/Materials/Node/nodeMaterial.js.map +1 -1
  229. package/Materials/Node/nodeMaterialBlock.d.ts +0 -3
  230. package/Materials/Node/nodeMaterialBlock.js +1 -6
  231. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  232. package/Materials/Node/nodeMaterialBlockConnectionPoint.js +1 -2
  233. package/Materials/Node/nodeMaterialBlockConnectionPoint.js.map +1 -1
  234. package/Materials/index.d.ts +1 -0
  235. package/Materials/index.js +1 -0
  236. package/Materials/index.js.map +1 -1
  237. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +13 -0
  238. package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
  239. package/Morph/morphTarget.d.ts +9 -5
  240. package/Morph/morphTarget.js +15 -7
  241. package/Morph/morphTarget.js.map +1 -1
  242. package/Morph/morphTargetManager.d.ts +3 -1
  243. package/Morph/morphTargetManager.js +5 -2
  244. package/Morph/morphTargetManager.js.map +1 -1
  245. package/Particles/Node/Blocks/Emitters/boxShapeBlock.js +1 -1
  246. package/Particles/Node/Blocks/Emitters/boxShapeBlock.js.map +1 -1
  247. package/Particles/Node/Blocks/Emitters/coneShapeBlock.js +1 -1
  248. package/Particles/Node/Blocks/Emitters/coneShapeBlock.js.map +1 -1
  249. package/Particles/Node/Blocks/Emitters/customShapeBlock.js +1 -1
  250. package/Particles/Node/Blocks/Emitters/customShapeBlock.js.map +1 -1
  251. package/Particles/Node/Blocks/Emitters/cylinderShapeBlock.js +1 -1
  252. package/Particles/Node/Blocks/Emitters/cylinderShapeBlock.js.map +1 -1
  253. package/Particles/Node/Blocks/Emitters/emitters.functions.js +3 -3
  254. package/Particles/Node/Blocks/Emitters/emitters.functions.js.map +1 -1
  255. package/Particles/Node/Blocks/Emitters/meshShapeBlock.js +1 -1
  256. package/Particles/Node/Blocks/Emitters/meshShapeBlock.js.map +1 -1
  257. package/Particles/Node/Blocks/Emitters/pointShapeBlock.js +1 -1
  258. package/Particles/Node/Blocks/Emitters/pointShapeBlock.js.map +1 -1
  259. package/Particles/Node/Blocks/Emitters/sphereShapeBlock.js +1 -1
  260. package/Particles/Node/Blocks/Emitters/sphereShapeBlock.js.map +1 -1
  261. package/Particles/Node/Blocks/Update/basicPositionUpdateBlock.js +2 -2
  262. package/Particles/Node/Blocks/Update/basicPositionUpdateBlock.js.map +1 -1
  263. package/Particles/Node/Blocks/Update/updateNoiseBlock.js +7 -7
  264. package/Particles/Node/Blocks/Update/updateNoiseBlock.js.map +1 -1
  265. package/Particles/Node/Blocks/particleLocalVariableBlock.js +2 -2
  266. package/Particles/Node/Blocks/particleLocalVariableBlock.js.map +1 -1
  267. package/Particles/Node/nodeParticleBuildState.js +7 -7
  268. package/Particles/Node/nodeParticleBuildState.js.map +1 -1
  269. package/Particles/particle.d.ts +73 -61
  270. package/Particles/particle.js +106 -91
  271. package/Particles/particle.js.map +1 -1
  272. package/Particles/particleSystem.js +5 -5
  273. package/Particles/particleSystem.js.map +1 -1
  274. package/Particles/thinParticleSystem.function.js +83 -83
  275. package/Particles/thinParticleSystem.function.js.map +1 -1
  276. package/Particles/thinParticleSystem.js +8 -8
  277. package/Particles/thinParticleSystem.js.map +1 -1
  278. package/Physics/v2/Plugins/havokPlugin.d.ts +14 -1
  279. package/Physics/v2/Plugins/havokPlugin.js +154 -10
  280. package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
  281. package/package.json +1 -1
@@ -554,7 +554,20 @@ export class GaussianSplattingMesh extends Mesh {
554
554
  }
555
555
  const mesh = cameraViewInfos.mesh;
556
556
  mesh.getWorldMatrix().copyFrom(this.getWorldMatrix());
557
+ // Propagate render pass material overrides (e.g., GPU picking) to the inner camera mesh.
558
+ // When this mesh is rendered into a RenderTargetTexture with a material override (via setMaterialForRendering),
559
+ // the override is set on this proxy mesh but needs to be applied to the actual camera mesh that does the rendering.
560
+ const engine = this._scene.getEngine();
561
+ const renderPassId = engine.currentRenderPassId;
562
+ const renderPassMaterial = this.getMaterialForRenderPass(renderPassId);
563
+ if (renderPassMaterial) {
564
+ mesh.setMaterialForRenderPass(renderPassId, renderPassMaterial);
565
+ }
557
566
  const ret = mesh.render(subMesh, enableAlphaMode, effectiveMeshReplacement);
567
+ // Clean up the temporary override to avoid affecting other render passes
568
+ if (renderPassMaterial) {
569
+ mesh.setMaterialForRenderPass(renderPassId, undefined);
570
+ }
558
571
  if (this.onAfterRenderObservable) {
559
572
  this.onAfterRenderObservable.notifyObservers(this);
560
573
  }