@babylonjs/core 5.0.0-beta.2 → 5.0.0-beta.6

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 (692) hide show
  1. package/Actions/actionManager.d.ts +1 -1
  2. package/Actions/actionManager.js +5 -1
  3. package/Actions/actionManager.js.map +1 -1
  4. package/Audio/analyser.d.ts +2 -1
  5. package/Audio/analyser.js +5 -0
  6. package/Audio/analyser.js.map +1 -1
  7. package/Audio/audioSceneComponent.d.ts +1 -1
  8. package/Audio/audioSceneComponent.js +5 -0
  9. package/Audio/audioSceneComponent.js.map +1 -1
  10. package/Audio/sound.d.ts +1 -1
  11. package/Audio/sound.js +8 -1
  12. package/Audio/sound.js.map +1 -1
  13. package/Audio/soundTrack.d.ts +2 -1
  14. package/Audio/soundTrack.js +5 -0
  15. package/Audio/soundTrack.js.map +1 -1
  16. package/BakedVertexAnimation/bakedVertexAnimationManager.d.ts +1 -1
  17. package/BakedVertexAnimation/bakedVertexAnimationManager.js +5 -0
  18. package/BakedVertexAnimation/bakedVertexAnimationManager.js.map +1 -1
  19. package/Behaviors/Meshes/baseSixDofDragBehavior.js +29 -26
  20. package/Behaviors/Meshes/baseSixDofDragBehavior.js.map +1 -1
  21. package/Behaviors/Meshes/pointerDragBehavior.js +2 -0
  22. package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
  23. package/Bones/bone.d.ts +2 -1
  24. package/Bones/bone.js +28 -18
  25. package/Bones/bone.js.map +1 -1
  26. package/Bones/skeleton.js +3 -3
  27. package/Bones/skeleton.js.map +1 -1
  28. package/Buffers/buffer.d.ts +4 -0
  29. package/Buffers/buffer.js +13 -3
  30. package/Buffers/buffer.js.map +1 -1
  31. package/Cameras/Inputs/freeCameraMouseInput.d.ts +1 -0
  32. package/Cameras/Inputs/freeCameraMouseInput.js +6 -3
  33. package/Cameras/Inputs/freeCameraMouseInput.js.map +1 -1
  34. package/Cameras/Inputs/freeCameraTouchInput.js +2 -4
  35. package/Cameras/Inputs/freeCameraTouchInput.js.map +1 -1
  36. package/Cameras/Stereoscopic/anaglyphArcRotateCamera.d.ts +1 -1
  37. package/Cameras/Stereoscopic/anaglyphArcRotateCamera.js.map +1 -1
  38. package/Cameras/Stereoscopic/anaglyphFreeCamera.d.ts +1 -1
  39. package/Cameras/Stereoscopic/anaglyphFreeCamera.js.map +1 -1
  40. package/Cameras/Stereoscopic/anaglyphGamepadCamera.d.ts +1 -1
  41. package/Cameras/Stereoscopic/anaglyphGamepadCamera.js.map +1 -1
  42. package/Cameras/Stereoscopic/anaglyphUniversalCamera.d.ts +1 -1
  43. package/Cameras/Stereoscopic/anaglyphUniversalCamera.js.map +1 -1
  44. package/Cameras/Stereoscopic/stereoscopicArcRotateCamera.d.ts +1 -1
  45. package/Cameras/Stereoscopic/stereoscopicArcRotateCamera.js.map +1 -1
  46. package/Cameras/Stereoscopic/stereoscopicFreeCamera.d.ts +1 -1
  47. package/Cameras/Stereoscopic/stereoscopicFreeCamera.js.map +1 -1
  48. package/Cameras/Stereoscopic/stereoscopicGamepadCamera.d.ts +1 -1
  49. package/Cameras/Stereoscopic/stereoscopicGamepadCamera.js.map +1 -1
  50. package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.d.ts +1 -1
  51. package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.js.map +1 -1
  52. package/Cameras/Stereoscopic/stereoscopicUniversalCamera.d.ts +1 -1
  53. package/Cameras/Stereoscopic/stereoscopicUniversalCamera.js.map +1 -1
  54. package/Cameras/VR/vrDeviceOrientationArcRotateCamera.d.ts +1 -1
  55. package/Cameras/VR/vrDeviceOrientationArcRotateCamera.js.map +1 -1
  56. package/Cameras/VR/vrDeviceOrientationFreeCamera.d.ts +1 -1
  57. package/Cameras/VR/vrDeviceOrientationFreeCamera.js.map +1 -1
  58. package/Cameras/VR/vrDeviceOrientationGamepadCamera.d.ts +1 -1
  59. package/Cameras/VR/vrDeviceOrientationGamepadCamera.js.map +1 -1
  60. package/Cameras/VR/vrExperienceHelper.d.ts +1 -0
  61. package/Cameras/VR/vrExperienceHelper.js +1 -0
  62. package/Cameras/VR/vrExperienceHelper.js.map +1 -1
  63. package/Cameras/VR/webVRCamera.d.ts +2 -1
  64. package/Cameras/VR/webVRCamera.js +3 -2
  65. package/Cameras/VR/webVRCamera.js.map +1 -1
  66. package/Cameras/arcRotateCamera.d.ts +1 -1
  67. package/Cameras/arcRotateCamera.js.map +1 -1
  68. package/Cameras/camera.d.ts +1 -1
  69. package/Cameras/camera.js +1 -1
  70. package/Cameras/camera.js.map +1 -1
  71. package/Cameras/deviceOrientationCamera.d.ts +1 -1
  72. package/Cameras/deviceOrientationCamera.js.map +1 -1
  73. package/Cameras/flyCamera.d.ts +1 -1
  74. package/Cameras/flyCamera.js.map +1 -1
  75. package/Cameras/followCamera.d.ts +1 -1
  76. package/Cameras/followCamera.js.map +1 -1
  77. package/Cameras/freeCamera.d.ts +1 -1
  78. package/Cameras/freeCamera.js.map +1 -1
  79. package/Cameras/gamepadCamera.d.ts +1 -1
  80. package/Cameras/gamepadCamera.js.map +1 -1
  81. package/Cameras/targetCamera.d.ts +1 -1
  82. package/Cameras/targetCamera.js.map +1 -1
  83. package/Cameras/touchCamera.d.ts +1 -1
  84. package/Cameras/touchCamera.js.map +1 -1
  85. package/Cameras/universalCamera.d.ts +1 -1
  86. package/Cameras/universalCamera.js.map +1 -1
  87. package/Cameras/virtualJoysticksCamera.d.ts +1 -1
  88. package/Cameras/virtualJoysticksCamera.js.map +1 -1
  89. package/Collisions/collider.d.ts +1 -1
  90. package/Collisions/collider.js +48 -2
  91. package/Collisions/collider.js.map +1 -1
  92. package/Compute/computeEffect.js +2 -2
  93. package/Compute/computeEffect.js.map +1 -1
  94. package/Culling/Octrees/octreeSceneComponent.d.ts +1 -1
  95. package/Culling/Octrees/octreeSceneComponent.js +5 -0
  96. package/Culling/Octrees/octreeSceneComponent.js.map +1 -1
  97. package/Culling/ray.d.ts +6 -4
  98. package/Culling/ray.js +33 -11
  99. package/Culling/ray.js.map +1 -1
  100. package/Debug/axesViewer.d.ts +2 -1
  101. package/Debug/axesViewer.js +6 -0
  102. package/Debug/axesViewer.js.map +1 -1
  103. package/Debug/debugLayer.d.ts +1 -1
  104. package/Debug/debugLayer.js +6 -2
  105. package/Debug/debugLayer.js.map +1 -1
  106. package/Debug/physicsViewer.d.ts +1 -1
  107. package/Debug/physicsViewer.js +3 -0
  108. package/Debug/physicsViewer.js.map +1 -1
  109. package/DeviceInput/Helpers/eventFactory.d.ts +1 -1
  110. package/DeviceInput/Helpers/eventFactory.js +1 -1
  111. package/DeviceInput/Helpers/eventFactory.js.map +1 -1
  112. package/DeviceInput/InputDevices/deviceEnums.d.ts +52 -1
  113. package/DeviceInput/InputDevices/deviceEnums.js +52 -0
  114. package/DeviceInput/InputDevices/deviceEnums.js.map +1 -1
  115. package/DeviceInput/InputDevices/deviceSource.d.ts +35 -0
  116. package/DeviceInput/InputDevices/deviceSource.js +38 -0
  117. package/DeviceInput/InputDevices/deviceSource.js.map +1 -0
  118. package/DeviceInput/InputDevices/deviceSourceManager.d.ts +14 -72
  119. package/DeviceInput/InputDevices/deviceSourceManager.js +10 -180
  120. package/DeviceInput/InputDevices/deviceSourceManager.js.map +1 -1
  121. package/DeviceInput/InputDevices/deviceTypes.d.ts +2 -2
  122. package/DeviceInput/InputDevices/deviceTypes.js.map +1 -1
  123. package/DeviceInput/{Interfaces → InputDevices}/inputInterfaces.d.ts +1 -5
  124. package/DeviceInput/{Interfaces → InputDevices}/inputInterfaces.js +0 -0
  125. package/DeviceInput/InputDevices/inputInterfaces.js.map +1 -0
  126. package/DeviceInput/InputDevices/internalDeviceSourceManager.d.ts +46 -0
  127. package/DeviceInput/InputDevices/internalDeviceSourceManager.js +144 -0
  128. package/DeviceInput/InputDevices/internalDeviceSourceManager.js.map +1 -0
  129. package/DeviceInput/{Implementations → InputDevices}/nativeDeviceInputSystem.d.ts +3 -7
  130. package/DeviceInput/{Implementations → InputDevices}/nativeDeviceInputSystem.js +9 -15
  131. package/DeviceInput/InputDevices/nativeDeviceInputSystem.js.map +1 -0
  132. package/DeviceInput/{Implementations → InputDevices}/webDeviceInputSystem.d.ts +11 -15
  133. package/DeviceInput/{Implementations → InputDevices}/webDeviceInputSystem.js +116 -95
  134. package/DeviceInput/InputDevices/webDeviceInputSystem.js.map +1 -0
  135. package/DeviceInput/index.d.ts +1 -5
  136. package/DeviceInput/index.js +1 -5
  137. package/DeviceInput/index.js.map +1 -1
  138. package/Engines/Extensions/engine.cubeTexture.d.ts +1 -1
  139. package/Engines/Extensions/engine.cubeTexture.js +5 -2
  140. package/Engines/Extensions/engine.cubeTexture.js.map +1 -1
  141. package/Engines/Extensions/engine.multiview.d.ts +5 -0
  142. package/Engines/Extensions/engine.multiview.js +4 -1
  143. package/Engines/Extensions/engine.multiview.js.map +1 -1
  144. package/Engines/Native/nativeInterfaces.d.ts +3 -2
  145. package/Engines/Native/nativeInterfaces.js.map +1 -1
  146. package/Engines/Processors/Expressions/shaderDefineExpression.js +1 -1
  147. package/Engines/Processors/Expressions/shaderDefineExpression.js.map +1 -1
  148. package/Engines/Processors/shaderCodeInliner.js +13 -13
  149. package/Engines/Processors/shaderCodeInliner.js.map +1 -1
  150. package/Engines/WebGPU/webgpuCacheBindGroups.js +9 -9
  151. package/Engines/WebGPU/webgpuCacheBindGroups.js.map +1 -1
  152. package/Engines/WebGPU/webgpuCacheRenderPipeline.js +5 -7
  153. package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
  154. package/Engines/WebGPU/webgpuCacheRenderPipelineTree.d.ts +1 -1
  155. package/Engines/WebGPU/webgpuCacheRenderPipelineTree.js.map +1 -1
  156. package/Engines/WebGPU/webgpuCacheSampler.d.ts +2 -0
  157. package/Engines/WebGPU/webgpuCacheSampler.js +23 -2
  158. package/Engines/WebGPU/webgpuCacheSampler.js.map +1 -1
  159. package/Engines/WebGPU/webgpuComputeContext.js +1 -1
  160. package/Engines/WebGPU/webgpuComputeContext.js.map +1 -1
  161. package/Engines/WebGPU/webgpuDrawContext.d.ts +1 -1
  162. package/Engines/WebGPU/webgpuDrawContext.js +3 -3
  163. package/Engines/WebGPU/webgpuDrawContext.js.map +1 -1
  164. package/Engines/WebGPU/webgpuHardwareTexture.d.ts +0 -1
  165. package/Engines/WebGPU/webgpuHardwareTexture.js +0 -3
  166. package/Engines/WebGPU/webgpuHardwareTexture.js.map +1 -1
  167. package/Engines/WebGPU/webgpuPipelineContext.d.ts +0 -8
  168. package/Engines/WebGPU/webgpuPipelineContext.js.map +1 -1
  169. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +13 -13
  170. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
  171. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +30 -30
  172. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  173. package/Engines/WebGPU/webgpuTextureHelper.d.ts +0 -1
  174. package/Engines/WebGPU/webgpuTextureHelper.js +8 -30
  175. package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
  176. package/Engines/engine.d.ts +3 -7
  177. package/Engines/engine.js +2 -6
  178. package/Engines/engine.js.map +1 -1
  179. package/Engines/engineCapabilities.d.ts +4 -0
  180. package/Engines/engineCapabilities.js.map +1 -1
  181. package/Engines/nativeEngine.d.ts +1 -0
  182. package/Engines/nativeEngine.js +39 -12
  183. package/Engines/nativeEngine.js.map +1 -1
  184. package/Engines/nullEngine.js +3 -1
  185. package/Engines/nullEngine.js.map +1 -1
  186. package/Engines/thinEngine.d.ts +11 -2
  187. package/Engines/thinEngine.js +34 -21
  188. package/Engines/thinEngine.js.map +1 -1
  189. package/Engines/webgpuEngine.d.ts +3 -7
  190. package/Engines/webgpuEngine.js +12 -22
  191. package/Engines/webgpuEngine.js.map +1 -1
  192. package/Gamepads/Controllers/daydreamController.js +1 -1
  193. package/Gamepads/Controllers/daydreamController.js.map +1 -1
  194. package/Gamepads/Controllers/oculusTouchController.js +2 -2
  195. package/Gamepads/Controllers/oculusTouchController.js.map +1 -1
  196. package/Gamepads/Controllers/webVRController.d.ts +1 -0
  197. package/Gamepads/Controllers/webVRController.js +1 -0
  198. package/Gamepads/Controllers/webVRController.js.map +1 -1
  199. package/Gamepads/gamepadManager.js +1 -1
  200. package/Gamepads/gamepadManager.js.map +1 -1
  201. package/Gizmos/gizmoManager.d.ts +2 -0
  202. package/Gizmos/gizmoManager.js +28 -24
  203. package/Gizmos/gizmoManager.js.map +1 -1
  204. package/Helpers/sceneHelpers.d.ts +1 -0
  205. package/Helpers/sceneHelpers.js.map +1 -1
  206. package/Inputs/scene.inputManager.d.ts +2 -2
  207. package/Inputs/scene.inputManager.js +10 -9
  208. package/Inputs/scene.inputManager.js.map +1 -1
  209. package/Instrumentation/sceneInstrumentation.js +2 -2
  210. package/Instrumentation/sceneInstrumentation.js.map +1 -1
  211. package/Layers/effectLayer.d.ts +1 -1
  212. package/Layers/effectLayer.js +1 -1
  213. package/Layers/effectLayer.js.map +1 -1
  214. package/Layers/effectLayerSceneComponent.d.ts +1 -1
  215. package/Layers/effectLayerSceneComponent.js +7 -3
  216. package/Layers/effectLayerSceneComponent.js.map +1 -1
  217. package/Layers/glowLayer.d.ts +1 -1
  218. package/Layers/glowLayer.js.map +1 -1
  219. package/Layers/highlightLayer.d.ts +1 -1
  220. package/Layers/highlightLayer.js +2 -1
  221. package/Layers/highlightLayer.js.map +1 -1
  222. package/Layers/layer.d.ts +2 -2
  223. package/Layers/layer.js.map +1 -1
  224. package/Layers/layerSceneComponent.d.ts +1 -1
  225. package/Layers/layerSceneComponent.js +7 -3
  226. package/Layers/layerSceneComponent.js.map +1 -1
  227. package/Lights/Shadows/cascadedShadowGenerator.js +2 -2
  228. package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
  229. package/Lights/Shadows/shadowGenerator.js +2 -2
  230. package/Lights/Shadows/shadowGenerator.js.map +1 -1
  231. package/Loading/Plugins/babylonFileLoader.js +115 -29
  232. package/Loading/Plugins/babylonFileLoader.js.map +1 -1
  233. package/Loading/loadingScreen.js +8 -8
  234. package/Loading/loadingScreen.js.map +1 -1
  235. package/Loading/sceneLoader.js +3 -3
  236. package/Loading/sceneLoader.js.map +1 -1
  237. package/Materials/Background/backgroundMaterial.d.ts +1 -1
  238. package/Materials/Background/backgroundMaterial.js.map +1 -1
  239. package/Materials/Node/Blocks/Dual/clipPlanesBlock.d.ts +37 -0
  240. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js +117 -0
  241. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js.map +1 -0
  242. package/Materials/Node/Blocks/Dual/currentScreenBlock.js +12 -12
  243. package/Materials/Node/Blocks/Dual/currentScreenBlock.js.map +1 -1
  244. package/Materials/Node/Blocks/Dual/fogBlock.js +5 -5
  245. package/Materials/Node/Blocks/Dual/fogBlock.js.map +1 -1
  246. package/Materials/Node/Blocks/Dual/imageSourceBlock.js +13 -13
  247. package/Materials/Node/Blocks/Dual/imageSourceBlock.js.map +1 -1
  248. package/Materials/Node/Blocks/Dual/index.d.ts +1 -0
  249. package/Materials/Node/Blocks/Dual/index.js +1 -0
  250. package/Materials/Node/Blocks/Dual/index.js.map +1 -1
  251. package/Materials/Node/Blocks/Dual/lightBlock.js +10 -10
  252. package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
  253. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +28 -28
  254. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  255. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js +1 -1
  256. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js.map +1 -1
  257. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +7 -7
  258. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
  259. package/Materials/Node/Blocks/Dual/textureBlock.js +32 -32
  260. package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
  261. package/Materials/Node/Blocks/Fragment/derivativeBlock.js +2 -2
  262. package/Materials/Node/Blocks/Fragment/derivativeBlock.js.map +1 -1
  263. package/Materials/Node/Blocks/Fragment/discardBlock.js +1 -1
  264. package/Materials/Node/Blocks/Fragment/discardBlock.js.map +1 -1
  265. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js +1 -1
  266. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js.map +1 -1
  267. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +10 -10
  268. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
  269. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js +7 -7
  270. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js.map +1 -1
  271. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +12 -12
  272. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  273. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js +1 -1
  274. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js.map +1 -1
  275. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js +7 -7
  276. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js.map +1 -1
  277. package/Materials/Node/Blocks/Fragment/twirlBlock.js +4 -4
  278. package/Materials/Node/Blocks/Fragment/twirlBlock.js.map +1 -1
  279. package/Materials/Node/Blocks/Input/inputBlock.d.ts +2 -1
  280. package/Materials/Node/Blocks/Input/inputBlock.js +29 -24
  281. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  282. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +5 -5
  283. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  284. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +5 -5
  285. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  286. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +33 -33
  287. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  288. package/Materials/Node/Blocks/PBR/reflectionBlock.js +11 -11
  289. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  290. package/Materials/Node/Blocks/PBR/refractionBlock.js +11 -11
  291. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  292. package/Materials/Node/Blocks/PBR/sheenBlock.js +3 -3
  293. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  294. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +1 -1
  295. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
  296. package/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock.js +1 -1
  297. package/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock.js.map +1 -1
  298. package/Materials/Node/Blocks/Particle/particleRampGradientBlock.js +1 -1
  299. package/Materials/Node/Blocks/Particle/particleRampGradientBlock.js.map +1 -1
  300. package/Materials/Node/Blocks/Particle/particleTextureBlock.js +7 -7
  301. package/Materials/Node/Blocks/Particle/particleTextureBlock.js.map +1 -1
  302. package/Materials/Node/Blocks/Vertex/bonesBlock.js +3 -3
  303. package/Materials/Node/Blocks/Vertex/bonesBlock.js.map +1 -1
  304. package/Materials/Node/Blocks/Vertex/instancesBlock.js +3 -3
  305. package/Materials/Node/Blocks/Vertex/instancesBlock.js.map +1 -1
  306. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js +5 -5
  307. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js.map +1 -1
  308. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +16 -16
  309. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
  310. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js +1 -1
  311. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js.map +1 -1
  312. package/Materials/Node/Blocks/addBlock.js +1 -1
  313. package/Materials/Node/Blocks/addBlock.js.map +1 -1
  314. package/Materials/Node/Blocks/arcTan2Block.js +1 -1
  315. package/Materials/Node/Blocks/arcTan2Block.js.map +1 -1
  316. package/Materials/Node/Blocks/clampBlock.js +3 -3
  317. package/Materials/Node/Blocks/clampBlock.js.map +1 -1
  318. package/Materials/Node/Blocks/cloudBlock.js +7 -7
  319. package/Materials/Node/Blocks/cloudBlock.js.map +1 -1
  320. package/Materials/Node/Blocks/colorMergerBlock.js +8 -8
  321. package/Materials/Node/Blocks/colorMergerBlock.js.map +1 -1
  322. package/Materials/Node/Blocks/colorSplitterBlock.js +5 -5
  323. package/Materials/Node/Blocks/colorSplitterBlock.js.map +1 -1
  324. package/Materials/Node/Blocks/conditionalBlock.js +10 -10
  325. package/Materials/Node/Blocks/conditionalBlock.js.map +1 -1
  326. package/Materials/Node/Blocks/crossBlock.js +1 -1
  327. package/Materials/Node/Blocks/crossBlock.js.map +1 -1
  328. package/Materials/Node/Blocks/customBlock.js +1 -1
  329. package/Materials/Node/Blocks/customBlock.js.map +1 -1
  330. package/Materials/Node/Blocks/desaturateBlock.js +4 -4
  331. package/Materials/Node/Blocks/desaturateBlock.js.map +1 -1
  332. package/Materials/Node/Blocks/distanceBlock.js +1 -1
  333. package/Materials/Node/Blocks/distanceBlock.js.map +1 -1
  334. package/Materials/Node/Blocks/divideBlock.js +1 -1
  335. package/Materials/Node/Blocks/divideBlock.js.map +1 -1
  336. package/Materials/Node/Blocks/dotBlock.js +1 -1
  337. package/Materials/Node/Blocks/dotBlock.js.map +1 -1
  338. package/Materials/Node/Blocks/elbowBlock.d.ts +27 -0
  339. package/Materials/Node/Blocks/elbowBlock.js +60 -0
  340. package/Materials/Node/Blocks/elbowBlock.js.map +1 -0
  341. package/Materials/Node/Blocks/fresnelBlock.js +2 -2
  342. package/Materials/Node/Blocks/fresnelBlock.js.map +1 -1
  343. package/Materials/Node/Blocks/gradientBlock.js +8 -8
  344. package/Materials/Node/Blocks/gradientBlock.js.map +1 -1
  345. package/Materials/Node/Blocks/index.d.ts +1 -0
  346. package/Materials/Node/Blocks/index.js +1 -0
  347. package/Materials/Node/Blocks/index.js.map +1 -1
  348. package/Materials/Node/Blocks/lengthBlock.js +1 -1
  349. package/Materials/Node/Blocks/lengthBlock.js.map +1 -1
  350. package/Materials/Node/Blocks/lerpBlock.js +1 -1
  351. package/Materials/Node/Blocks/lerpBlock.js.map +1 -1
  352. package/Materials/Node/Blocks/matrixBuilderBlock.js +1 -1
  353. package/Materials/Node/Blocks/matrixBuilderBlock.js.map +1 -1
  354. package/Materials/Node/Blocks/maxBlock.js +1 -1
  355. package/Materials/Node/Blocks/maxBlock.js.map +1 -1
  356. package/Materials/Node/Blocks/minBlock.js +1 -1
  357. package/Materials/Node/Blocks/minBlock.js.map +1 -1
  358. package/Materials/Node/Blocks/modBlock.js +1 -1
  359. package/Materials/Node/Blocks/modBlock.js.map +1 -1
  360. package/Materials/Node/Blocks/multiplyBlock.js +1 -1
  361. package/Materials/Node/Blocks/multiplyBlock.js.map +1 -1
  362. package/Materials/Node/Blocks/nLerpBlock.js +1 -1
  363. package/Materials/Node/Blocks/nLerpBlock.js.map +1 -1
  364. package/Materials/Node/Blocks/negateBlock.js +1 -1
  365. package/Materials/Node/Blocks/negateBlock.js.map +1 -1
  366. package/Materials/Node/Blocks/normalBlendBlock.js +5 -5
  367. package/Materials/Node/Blocks/normalBlendBlock.js.map +1 -1
  368. package/Materials/Node/Blocks/normalizeBlock.js +1 -1
  369. package/Materials/Node/Blocks/normalizeBlock.js.map +1 -1
  370. package/Materials/Node/Blocks/oneMinusBlock.js +1 -1
  371. package/Materials/Node/Blocks/oneMinusBlock.js.map +1 -1
  372. package/Materials/Node/Blocks/posterizeBlock.js +1 -1
  373. package/Materials/Node/Blocks/posterizeBlock.js.map +1 -1
  374. package/Materials/Node/Blocks/powBlock.js +1 -1
  375. package/Materials/Node/Blocks/powBlock.js.map +1 -1
  376. package/Materials/Node/Blocks/randomNumberBlock.js +2 -2
  377. package/Materials/Node/Blocks/randomNumberBlock.js.map +1 -1
  378. package/Materials/Node/Blocks/reciprocalBlock.js +1 -1
  379. package/Materials/Node/Blocks/reciprocalBlock.js.map +1 -1
  380. package/Materials/Node/Blocks/reflectBlock.js +1 -1
  381. package/Materials/Node/Blocks/reflectBlock.js.map +1 -1
  382. package/Materials/Node/Blocks/refractBlock.js +1 -1
  383. package/Materials/Node/Blocks/refractBlock.js.map +1 -1
  384. package/Materials/Node/Blocks/remapBlock.js +3 -3
  385. package/Materials/Node/Blocks/remapBlock.js.map +1 -1
  386. package/Materials/Node/Blocks/replaceColorBlock.js +3 -3
  387. package/Materials/Node/Blocks/replaceColorBlock.js.map +1 -1
  388. package/Materials/Node/Blocks/rotate2dBlock.js +1 -1
  389. package/Materials/Node/Blocks/rotate2dBlock.js.map +1 -1
  390. package/Materials/Node/Blocks/scaleBlock.js +1 -1
  391. package/Materials/Node/Blocks/scaleBlock.js.map +1 -1
  392. package/Materials/Node/Blocks/simplexPerlin3DBlock.js +1 -1
  393. package/Materials/Node/Blocks/simplexPerlin3DBlock.js.map +1 -1
  394. package/Materials/Node/Blocks/smoothStepBlock.js +1 -1
  395. package/Materials/Node/Blocks/smoothStepBlock.js.map +1 -1
  396. package/Materials/Node/Blocks/stepBlock.js +1 -1
  397. package/Materials/Node/Blocks/stepBlock.js.map +1 -1
  398. package/Materials/Node/Blocks/subtractBlock.js +1 -1
  399. package/Materials/Node/Blocks/subtractBlock.js.map +1 -1
  400. package/Materials/Node/Blocks/transformBlock.js +13 -13
  401. package/Materials/Node/Blocks/transformBlock.js.map +1 -1
  402. package/Materials/Node/Blocks/trigonometryBlock.js +2 -2
  403. package/Materials/Node/Blocks/trigonometryBlock.js.map +1 -1
  404. package/Materials/Node/Blocks/vectorMergerBlock.js +22 -22
  405. package/Materials/Node/Blocks/vectorMergerBlock.js.map +1 -1
  406. package/Materials/Node/Blocks/vectorSplitterBlock.js +8 -8
  407. package/Materials/Node/Blocks/vectorSplitterBlock.js.map +1 -1
  408. package/Materials/Node/Blocks/viewDirectionBlock.js +1 -1
  409. package/Materials/Node/Blocks/viewDirectionBlock.js.map +1 -1
  410. package/Materials/Node/Blocks/voronoiNoiseBlock.js +5 -5
  411. package/Materials/Node/Blocks/voronoiNoiseBlock.js.map +1 -1
  412. package/Materials/Node/Blocks/waveBlock.js +3 -3
  413. package/Materials/Node/Blocks/waveBlock.js.map +1 -1
  414. package/Materials/Node/Blocks/worleyNoise3DBlock.js +5 -5
  415. package/Materials/Node/Blocks/worleyNoise3DBlock.js.map +1 -1
  416. package/Materials/Node/Enums/nodeMaterialSystemValues.d.ts +3 -1
  417. package/Materials/Node/Enums/nodeMaterialSystemValues.js +2 -0
  418. package/Materials/Node/Enums/nodeMaterialSystemValues.js.map +1 -1
  419. package/Materials/Node/nodeMaterial.d.ts +4 -0
  420. package/Materials/Node/nodeMaterial.js +22 -11
  421. package/Materials/Node/nodeMaterial.js.map +1 -1
  422. package/Materials/Node/nodeMaterialBlock.js +12 -12
  423. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  424. package/Materials/Node/nodeMaterialBuildState.js +24 -24
  425. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  426. package/Materials/Node/nodeMaterialBuildStateSharedData.js +1 -1
  427. package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
  428. package/Materials/PBR/pbrBaseMaterial.d.ts +2 -1
  429. package/Materials/PBR/pbrBaseMaterial.js +4 -3
  430. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  431. package/Materials/PBR/pbrBaseSimpleMaterial.d.ts +1 -1
  432. package/Materials/PBR/pbrBaseSimpleMaterial.js.map +1 -1
  433. package/Materials/PBR/pbrMaterial.d.ts +1 -1
  434. package/Materials/PBR/pbrMaterial.js +2 -3
  435. package/Materials/PBR/pbrMaterial.js.map +1 -1
  436. package/Materials/PBR/pbrMetallicRoughnessMaterial.d.ts +1 -1
  437. package/Materials/PBR/pbrMetallicRoughnessMaterial.js.map +1 -1
  438. package/Materials/PBR/pbrSpecularGlossinessMaterial.d.ts +1 -1
  439. package/Materials/PBR/pbrSpecularGlossinessMaterial.js.map +1 -1
  440. package/Materials/Textures/Loaders/ddsTextureLoader.js +8 -1
  441. package/Materials/Textures/Loaders/ddsTextureLoader.js.map +1 -1
  442. package/Materials/Textures/Loaders/ktxTextureLoader.js +2 -2
  443. package/Materials/Textures/Loaders/ktxTextureLoader.js.map +1 -1
  444. package/Materials/Textures/MultiviewRenderTarget.d.ts +2 -1
  445. package/Materials/Textures/MultiviewRenderTarget.js +10 -2
  446. package/Materials/Textures/MultiviewRenderTarget.js.map +1 -1
  447. package/Materials/Textures/Procedurals/proceduralTexture.js +1 -1
  448. package/Materials/Textures/Procedurals/proceduralTexture.js.map +1 -1
  449. package/Materials/Textures/baseTexture.d.ts +1 -1
  450. package/Materials/Textures/baseTexture.js.map +1 -1
  451. package/Materials/Textures/equiRectangularCubeTexture.js +1 -1
  452. package/Materials/Textures/equiRectangularCubeTexture.js.map +1 -1
  453. package/Materials/Textures/mirrorTexture.d.ts +2 -2
  454. package/Materials/Textures/mirrorTexture.js +7 -3
  455. package/Materials/Textures/mirrorTexture.js.map +1 -1
  456. package/Materials/Textures/multiRenderTarget.d.ts +1 -1
  457. package/Materials/Textures/multiRenderTarget.js.map +1 -1
  458. package/Materials/Textures/prePassRenderTarget.d.ts +1 -1
  459. package/Materials/Textures/prePassRenderTarget.js.map +1 -1
  460. package/Materials/Textures/refractionTexture.d.ts +1 -1
  461. package/Materials/Textures/refractionTexture.js +2 -2
  462. package/Materials/Textures/refractionTexture.js.map +1 -1
  463. package/Materials/Textures/renderTargetTexture.d.ts +1 -1
  464. package/Materials/Textures/renderTargetTexture.js +2 -2
  465. package/Materials/Textures/renderTargetTexture.js.map +1 -1
  466. package/Materials/Textures/texture.d.ts +1 -1
  467. package/Materials/Textures/texture.js.map +1 -1
  468. package/Materials/Textures/videoTexture.js +1 -0
  469. package/Materials/Textures/videoTexture.js.map +1 -1
  470. package/Materials/effect.js +3 -3
  471. package/Materials/effect.js.map +1 -1
  472. package/Materials/material.d.ts +3 -1
  473. package/Materials/material.js +11 -3
  474. package/Materials/material.js.map +1 -1
  475. package/Materials/materialHelper.js +4 -1
  476. package/Materials/materialHelper.js.map +1 -1
  477. package/Materials/materialPluginManager.js +3 -3
  478. package/Materials/materialPluginManager.js.map +1 -1
  479. package/Materials/multiMaterial.d.ts +3 -1
  480. package/Materials/multiMaterial.js +13 -11
  481. package/Materials/multiMaterial.js.map +1 -1
  482. package/Materials/pushMaterial.d.ts +1 -1
  483. package/Materials/pushMaterial.js.map +1 -1
  484. package/Materials/shaderMaterial.js +8 -4
  485. package/Materials/shaderMaterial.js.map +1 -1
  486. package/Materials/shadowDepthWrapper.d.ts +1 -1
  487. package/Materials/shadowDepthWrapper.js +3 -3
  488. package/Materials/shadowDepthWrapper.js.map +1 -1
  489. package/Materials/standardMaterial.d.ts +2 -6
  490. package/Materials/standardMaterial.js +5 -10
  491. package/Materials/standardMaterial.js.map +1 -1
  492. package/Maths/math.path.d.ts +1 -0
  493. package/Maths/math.path.js +1 -0
  494. package/Maths/math.path.js.map +1 -1
  495. package/Maths/math.size.js +1 -1
  496. package/Maths/math.size.js.map +1 -1
  497. package/Maths/math.vector.d.ts +5 -2
  498. package/Maths/math.vector.js +35 -32
  499. package/Maths/math.vector.js.map +1 -1
  500. package/Meshes/Builders/cylinderBuilder.d.ts +1 -1
  501. package/Meshes/Builders/cylinderBuilder.js +1 -1
  502. package/Meshes/Builders/cylinderBuilder.js.map +1 -1
  503. package/Meshes/Builders/geodesicBuilder.d.ts +1 -0
  504. package/Meshes/Builders/geodesicBuilder.js +1 -0
  505. package/Meshes/Builders/geodesicBuilder.js.map +1 -1
  506. package/Meshes/Builders/goldbergBuilder.d.ts +1 -0
  507. package/Meshes/Builders/goldbergBuilder.js +1 -0
  508. package/Meshes/Builders/goldbergBuilder.js.map +1 -1
  509. package/Meshes/Builders/linesBuilder.js.map +1 -1
  510. package/Meshes/Builders/tiledBoxBuilder.d.ts +30 -11
  511. package/Meshes/Builders/tiledBoxBuilder.js +30 -11
  512. package/Meshes/Builders/tiledBoxBuilder.js.map +1 -1
  513. package/Meshes/Builders/tiledPlaneBuilder.d.ts +21 -16
  514. package/Meshes/Builders/tiledPlaneBuilder.js +21 -16
  515. package/Meshes/Builders/tiledPlaneBuilder.js.map +1 -1
  516. package/Meshes/Compression/dracoCompression.d.ts +3 -0
  517. package/Meshes/Compression/dracoCompression.js +23 -7
  518. package/Meshes/Compression/dracoCompression.js.map +1 -1
  519. package/Meshes/abstractMesh.d.ts +6 -0
  520. package/Meshes/abstractMesh.js +18 -2
  521. package/Meshes/abstractMesh.js.map +1 -1
  522. package/Meshes/geometry.d.ts +1 -1
  523. package/Meshes/geometry.js +7 -3
  524. package/Meshes/geometry.js.map +1 -1
  525. package/Meshes/groundMesh.d.ts +1 -1
  526. package/Meshes/groundMesh.js.map +1 -1
  527. package/Meshes/mesh.js +21 -6
  528. package/Meshes/mesh.js.map +1 -1
  529. package/Meshes/mesh.lts.d.ts +1 -1
  530. package/Meshes/mesh.lts.js.map +1 -1
  531. package/Meshes/mesh.vertexData.d.ts +1 -1
  532. package/Meshes/mesh.vertexData.js +2 -2
  533. package/Meshes/mesh.vertexData.js.map +1 -1
  534. package/Meshes/polygonMesh.js +2 -2
  535. package/Meshes/polygonMesh.js.map +1 -1
  536. package/Meshes/subMesh.js +1 -2
  537. package/Meshes/subMesh.js.map +1 -1
  538. package/Meshes/subMesh.project.js +1 -2
  539. package/Meshes/subMesh.project.js.map +1 -1
  540. package/Meshes/thinInstanceMesh.js +5 -0
  541. package/Meshes/thinInstanceMesh.js.map +1 -1
  542. package/Meshes/trailMesh.d.ts +1 -1
  543. package/Meshes/trailMesh.js.map +1 -1
  544. package/Meshes/transformNode.js +40 -13
  545. package/Meshes/transformNode.js.map +1 -1
  546. package/Misc/HighDynamicRange/cubemapToSphericalPolynomial.d.ts +5 -0
  547. package/Misc/HighDynamicRange/cubemapToSphericalPolynomial.js +13 -2
  548. package/Misc/HighDynamicRange/cubemapToSphericalPolynomial.js.map +1 -1
  549. package/Misc/PerformanceViewer/performanceViewerCollector.js +36 -19
  550. package/Misc/PerformanceViewer/performanceViewerCollector.js.map +1 -1
  551. package/Misc/assetsManager.d.ts +2 -1
  552. package/Misc/assetsManager.js +15 -1
  553. package/Misc/assetsManager.js.map +1 -1
  554. package/Misc/basis.js +1 -1
  555. package/Misc/basis.js.map +1 -1
  556. package/Misc/brdfTextureTools.js +4 -1
  557. package/Misc/brdfTextureTools.js.map +1 -1
  558. package/Misc/dds.js +7 -0
  559. package/Misc/dds.js.map +1 -1
  560. package/Misc/devTools.js +1 -1
  561. package/Misc/devTools.js.map +1 -1
  562. package/Misc/environmentTextureTools.js +2 -2
  563. package/Misc/environmentTextureTools.js.map +1 -1
  564. package/Misc/fileTools.js +4 -4
  565. package/Misc/fileTools.js.map +1 -1
  566. package/Misc/index.d.ts +1 -0
  567. package/Misc/index.js +1 -0
  568. package/Misc/index.js.map +1 -1
  569. package/Misc/khronosTextureContainer2.js +4 -3
  570. package/Misc/khronosTextureContainer2.js.map +1 -1
  571. package/Misc/reflector.js +6 -6
  572. package/Misc/reflector.js.map +1 -1
  573. package/Misc/tools.js +15 -13
  574. package/Misc/tools.js.map +1 -1
  575. package/Misc/uniqueIdGenerator.js +1 -1
  576. package/Misc/uniqueIdGenerator.js.map +1 -1
  577. package/Offline/database.js +1 -1
  578. package/Offline/database.js.map +1 -1
  579. package/Particles/baseParticleSystem.d.ts +4 -1
  580. package/Particles/baseParticleSystem.js +20 -5
  581. package/Particles/baseParticleSystem.js.map +1 -1
  582. package/Particles/gpuParticleSystem.js +2 -1
  583. package/Particles/gpuParticleSystem.js.map +1 -1
  584. package/Particles/particleHelper.js +2 -2
  585. package/Particles/particleHelper.js.map +1 -1
  586. package/Physics/Plugins/ammoJSPlugin.d.ts +5 -1
  587. package/Physics/Plugins/ammoJSPlugin.js +16 -11
  588. package/Physics/Plugins/ammoJSPlugin.js.map +1 -1
  589. package/Physics/physicsEngine.d.ts +1 -0
  590. package/Physics/physicsEngine.js +3 -1
  591. package/Physics/physicsEngine.js.map +1 -1
  592. package/Physics/physicsImpostor.d.ts +2 -2
  593. package/Physics/physicsImpostor.js.map +1 -1
  594. package/PostProcesses/blurPostProcess.js +5 -5
  595. package/PostProcesses/blurPostProcess.js.map +1 -1
  596. package/PostProcesses/imageProcessingPostProcess.js +1 -1
  597. package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
  598. package/PostProcesses/postProcess.js +1 -1
  599. package/PostProcesses/postProcess.js.map +1 -1
  600. package/PostProcesses/postProcessManager.js +2 -2
  601. package/PostProcesses/postProcessManager.js.map +1 -1
  602. package/Probes/reflectionProbe.js +2 -2
  603. package/Probes/reflectionProbe.js.map +1 -1
  604. package/Rendering/depthPeelingRenderer.js +3 -3
  605. package/Rendering/depthPeelingRenderer.js.map +1 -1
  606. package/Rendering/geometryBufferRenderer.js +8 -8
  607. package/Rendering/geometryBufferRenderer.js.map +1 -1
  608. package/Rendering/outlineRenderer.js +1 -1
  609. package/Rendering/outlineRenderer.js.map +1 -1
  610. package/Rendering/utilityLayerRenderer.js +4 -0
  611. package/Rendering/utilityLayerRenderer.js.map +1 -1
  612. package/Shaders/ShadersInclude/instancesDeclaration.js +1 -1
  613. package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
  614. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +1 -1
  615. package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
  616. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +1 -1
  617. package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
  618. package/Shaders/ShadersInclude/prePassVertex.js +1 -1
  619. package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
  620. package/Shaders/color.fragment.js +1 -1
  621. package/Shaders/color.fragment.js.map +1 -1
  622. package/Shaders/color.vertex.js +1 -1
  623. package/Shaders/color.vertex.js.map +1 -1
  624. package/Shaders/default.fragment.js +1 -1
  625. package/Shaders/default.fragment.js.map +1 -1
  626. package/Shaders/default.vertex.js +1 -1
  627. package/Shaders/default.vertex.js.map +1 -1
  628. package/Shaders/pbr.vertex.js +1 -1
  629. package/Shaders/pbr.vertex.js.map +1 -1
  630. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +1 -1
  631. package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
  632. package/ShadersWGSL/gpuUpdateParticles.compute.js +1 -1
  633. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  634. package/Sprites/spriteManager.js +9 -10
  635. package/Sprites/spriteManager.js.map +1 -1
  636. package/Sprites/spriteMap.js +2 -2
  637. package/Sprites/spriteMap.js.map +1 -1
  638. package/Sprites/spriteRenderer.js +1 -1
  639. package/Sprites/spriteRenderer.js.map +1 -1
  640. package/XR/features/WebXRControllerPointerSelection.js +15 -9
  641. package/XR/features/WebXRControllerPointerSelection.js.map +1 -1
  642. package/XR/features/WebXRDOMOverlay.js +1 -1
  643. package/XR/features/WebXRDOMOverlay.js.map +1 -1
  644. package/XR/features/WebXRHandTracking.js +30 -30
  645. package/XR/features/WebXRHandTracking.js.map +1 -1
  646. package/XR/features/WebXRImageTracking.js +2 -2
  647. package/XR/features/WebXRImageTracking.js.map +1 -1
  648. package/XR/features/WebXRLayers.d.ts +28 -5
  649. package/XR/features/WebXRLayers.js +54 -20
  650. package/XR/features/WebXRLayers.js.map +1 -1
  651. package/XR/features/WebXRNearInteraction.d.ts +35 -3
  652. package/XR/features/WebXRNearInteraction.js +201 -40
  653. package/XR/features/WebXRNearInteraction.js.map +1 -1
  654. package/XR/motionController/webXRAbstractMotionController.js +1 -1
  655. package/XR/motionController/webXRAbstractMotionController.js.map +1 -1
  656. package/XR/motionController/webXRMotionControllerManager.js +2 -2
  657. package/XR/motionController/webXRMotionControllerManager.js.map +1 -1
  658. package/XR/motionController/webXRProfiledMotionController.js +1 -1
  659. package/XR/motionController/webXRProfiledMotionController.js.map +1 -1
  660. package/XR/webXRCamera.js +17 -4
  661. package/XR/webXRCamera.js.map +1 -1
  662. package/XR/webXRDefaultExperience.js +3 -0
  663. package/XR/webXRDefaultExperience.js.map +1 -1
  664. package/XR/webXREnterExitUI.js +2 -2
  665. package/XR/webXREnterExitUI.js.map +1 -1
  666. package/XR/webXRExperienceHelper.js +3 -2
  667. package/XR/webXRExperienceHelper.js.map +1 -1
  668. package/XR/webXRFeaturesManager.js +6 -6
  669. package/XR/webXRFeaturesManager.js.map +1 -1
  670. package/XR/webXRInputSource.js +3 -3
  671. package/XR/webXRInputSource.js.map +1 -1
  672. package/XR/webXRRenderTargetTextureProvider.d.ts +3 -2
  673. package/XR/webXRRenderTargetTextureProvider.js +37 -18
  674. package/XR/webXRRenderTargetTextureProvider.js.map +1 -1
  675. package/XR/webXRSessionManager.d.ts +1 -0
  676. package/XR/webXRSessionManager.js +6 -1
  677. package/XR/webXRSessionManager.js.map +1 -1
  678. package/assetContainer.d.ts +1 -1
  679. package/assetContainer.js +4 -0
  680. package/assetContainer.js.map +1 -1
  681. package/node.d.ts +1 -1
  682. package/node.js.map +1 -1
  683. package/package.json +22 -13
  684. package/scene.d.ts +5 -2
  685. package/scene.js +31 -5
  686. package/scene.js.map +1 -1
  687. package/DeviceInput/Implementations/nativeDeviceInputSystem.js.map +0 -1
  688. package/DeviceInput/Implementations/webDeviceInputSystem.js.map +0 -1
  689. package/DeviceInput/Interfaces/inputInterfaces.js.map +0 -1
  690. package/DeviceInput/deviceInputSystem.d.ts +0 -60
  691. package/DeviceInput/deviceInputSystem.js +0 -84
  692. package/DeviceInput/deviceInputSystem.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"normalizeBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/normalizeBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAoC,kCAAiB;IACjD;;;OAGG;IACH,wBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAShD;QAPG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEzD,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAC;QAC/F,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,qCAAY,GAAnB;QACI,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAKD,sBAAW,iCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,oCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,kBAAgB,KAAK,CAAC,sBAAsB,WAAQ,CAAA,CAAC;QAErH,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,qBAAC;AAAD,CAAC,AAjDD,CAAoC,iBAAiB,GAiDpD;;AAED,aAAa,CAAC,wBAAwB,EAAE,cAAc,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to normalize a vector\r\n */\r\nexport class NormalizeBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new NormalizeBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"NormalizeBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n let input = this._inputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = normalize(${input.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.NormalizeBlock\", NormalizeBlock);"]}
1
+ {"version":3,"file":"normalizeBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/normalizeBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAoC,kCAAiB;IACjD;;;OAGG;IACH,wBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAShD;QAPG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEzD,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAC;QAC/F,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,qCAAY,GAAnB;QACI,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAKD,sBAAW,iCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,oCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,uBAAgB,KAAK,CAAC,sBAAsB,WAAQ,CAAC;QAErH,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,qBAAC;AAAD,CAAC,AAjDD,CAAoC,iBAAiB,GAiDpD;;AAED,aAAa,CAAC,wBAAwB,EAAE,cAAc,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to normalize a vector\r\n */\r\nexport class NormalizeBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new NormalizeBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"NormalizeBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n let input = this._inputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = normalize(${input.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.NormalizeBlock\", NormalizeBlock);"]}
@@ -50,7 +50,7 @@ var OneMinusBlock = /** @class */ (function (_super) {
50
50
  OneMinusBlock.prototype._buildBlock = function (state) {
51
51
  _super.prototype._buildBlock.call(this, state);
52
52
  var output = this._outputs[0];
53
- state.compilationString += this._declareOutput(output, state) + (" = 1. - " + this.input.associatedVariableName + ";\r\n");
53
+ state.compilationString += this._declareOutput(output, state) + " = 1. - ".concat(this.input.associatedVariableName, ";\r\n");
54
54
  return this;
55
55
  };
56
56
  return OneMinusBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"oneMinusBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/oneMinusBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAmC,iCAAiB;IAChD;;;OAGG;IACH,uBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAOhD;QALG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACrG,CAAC;IAED;;;OAGG;IACI,oCAAY,GAAnB;QACI,OAAO,eAAe,CAAC;IAC3B,CAAC;IAKD,sBAAW,gCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,mCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,aAAW,IAAI,CAAC,KAAK,CAAC,sBAAsB,UAAO,CAAA,CAAC;QAEpH,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,oBAAC;AAAD,CAAC,AA9CD,CAAmC,iBAAiB,GA8CnD;;AAED,aAAa,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC;AACtD,aAAa,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC,CAAC,yBAAyB","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the opposite (1 - x) of a value\r\n */\r\nexport class OneMinusBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new OneMinusBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._outputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"OneMinusBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = 1. - ${this.input.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.OneMinusBlock\", OneMinusBlock);\r\nRegisterClass(\"BABYLON.OppositeBlock\", OneMinusBlock); // Backward compatibility"]}
1
+ {"version":3,"file":"oneMinusBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/oneMinusBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAmC,iCAAiB;IAChD;;;OAGG;IACH,uBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAOhD;QALG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACrG,CAAC;IAED;;;OAGG;IACI,oCAAY,GAAnB;QACI,OAAO,eAAe,CAAC;IAC3B,CAAC;IAKD,sBAAW,gCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,mCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,kBAAW,IAAI,CAAC,KAAK,CAAC,sBAAsB,UAAO,CAAC;QAEpH,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,oBAAC;AAAD,CAAC,AA9CD,CAAmC,iBAAiB,GA8CnD;;AAED,aAAa,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC;AACtD,aAAa,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC,CAAC,yBAAyB","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the opposite (1 - x) of a value\r\n */\r\nexport class OneMinusBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new OneMinusBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._outputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"OneMinusBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = 1. - ${this.input.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.OneMinusBlock\", OneMinusBlock);\r\nRegisterClass(\"BABYLON.OppositeBlock\", OneMinusBlock); // Backward compatibility"]}
@@ -64,7 +64,7 @@ var PosterizeBlock = /** @class */ (function (_super) {
64
64
  PosterizeBlock.prototype._buildBlock = function (state) {
65
65
  _super.prototype._buildBlock.call(this, state);
66
66
  var output = this._outputs[0];
67
- state.compilationString += this._declareOutput(output, state) + (" = floor(" + this.value.associatedVariableName + " / (1.0 / " + this.steps.associatedVariableName + ")) * (1.0 / " + this.steps.associatedVariableName + ");\r\n");
67
+ state.compilationString += this._declareOutput(output, state) + " = floor(".concat(this.value.associatedVariableName, " / (1.0 / ").concat(this.steps.associatedVariableName, ")) * (1.0 / ").concat(this.steps.associatedVariableName, ");\r\n");
68
68
  return this;
69
69
  };
70
70
  return PosterizeBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"posterizeBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/posterizeBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD;;;GAGG;AACH;IAAoC,kCAAiB;IACjD;;;OAGG;IACH,wBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAWhD;QATG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEhC,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,qCAAY,GAAnB;QACI,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAKD,sBAAW,iCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,oCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,cAAY,IAAI,CAAC,KAAK,CAAC,sBAAsB,kBAAa,IAAI,CAAC,KAAK,CAAC,sBAAsB,oBAAe,IAAI,CAAC,KAAK,CAAC,sBAAsB,WAAQ,CAAA,CAAC;QACpN,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,qBAAC;AAAD,CAAC,AAxDD,CAAoC,iBAAiB,GAwDpD;;AAED,aAAa,CAAC,wBAAwB,EAAE,cAAc,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n\r\n/**\r\n * Block used to posterize a value\r\n * @see https://en.wikipedia.org/wiki/Posterization\r\n */\r\nexport class PosterizeBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new PosterizeBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"steps\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._linkConnectionTypes(0, 1);\r\n\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n this._inputs[1].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"PosterizeBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the steps input component\r\n */\r\n public get steps(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = floor(${this.value.associatedVariableName} / (1.0 / ${this.steps.associatedVariableName})) * (1.0 / ${this.steps.associatedVariableName});\\r\\n`;\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.PosterizeBlock\", PosterizeBlock);"]}
1
+ {"version":3,"file":"posterizeBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/posterizeBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD;;;GAGG;AACH;IAAoC,kCAAiB;IACjD;;;OAGG;IACH,wBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAWhD;QATG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEhC,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,qCAAY,GAAnB;QACI,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAKD,sBAAW,iCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,oCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,mBAAY,IAAI,CAAC,KAAK,CAAC,sBAAsB,uBAAa,IAAI,CAAC,KAAK,CAAC,sBAAsB,yBAAe,IAAI,CAAC,KAAK,CAAC,sBAAsB,WAAQ,CAAC;QACpN,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,qBAAC;AAAD,CAAC,AAxDD,CAAoC,iBAAiB,GAwDpD;;AAED,aAAa,CAAC,wBAAwB,EAAE,cAAc,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n\r\n/**\r\n * Block used to posterize a value\r\n * @see https://en.wikipedia.org/wiki/Posterization\r\n */\r\nexport class PosterizeBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new PosterizeBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"steps\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._linkConnectionTypes(0, 1);\r\n\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n this._inputs[1].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"PosterizeBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the steps input component\r\n */\r\n public get steps(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = floor(${this.value.associatedVariableName} / (1.0 / ${this.steps.associatedVariableName})) * (1.0 / ${this.steps.associatedVariableName});\\r\\n`;\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.PosterizeBlock\", PosterizeBlock);"]}
@@ -61,7 +61,7 @@ var PowBlock = /** @class */ (function (_super) {
61
61
  PowBlock.prototype._buildBlock = function (state) {
62
62
  _super.prototype._buildBlock.call(this, state);
63
63
  var output = this._outputs[0];
64
- state.compilationString += this._declareOutput(output, state) + (" = pow(" + this.value.associatedVariableName + ", " + this.power.associatedVariableName + ");\r\n");
64
+ state.compilationString += this._declareOutput(output, state) + " = pow(".concat(this.value.associatedVariableName, ", ").concat(this.power.associatedVariableName, ");\r\n");
65
65
  return this;
66
66
  };
67
67
  return PowBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"powBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/powBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAA8B,4BAAiB;IAC3C;;;OAGG;IACH,kBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAQhD;QANG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;IACpC,CAAC;IAED;;;OAGG;IACI,+BAAY,GAAnB;QACI,OAAO,UAAU,CAAC;IACtB,CAAC;IAKD,sBAAW,2BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,2BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,4BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,8BAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,YAAU,IAAI,CAAC,KAAK,CAAC,sBAAsB,UAAK,IAAI,CAAC,KAAK,CAAC,sBAAsB,WAAQ,CAAA,CAAC;QAE1J,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,eAAC;AAAD,CAAC,AAtDD,CAA8B,iBAAiB,GAsD9C;;AAED,aAAa,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the value of the first parameter raised to the power of the second\r\n */\r\nexport class PowBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new PowBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"power\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._linkConnectionTypes(0, 1);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"PowBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value operand input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the power operand input component\r\n */\r\n public get power(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = pow(${this.value.associatedVariableName}, ${this.power.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.PowBlock\", PowBlock);"]}
1
+ {"version":3,"file":"powBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/powBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAA8B,4BAAiB;IAC3C;;;OAGG;IACH,kBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAQhD;QANG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;IACpC,CAAC;IAED;;;OAGG;IACI,+BAAY,GAAnB;QACI,OAAO,UAAU,CAAC;IACtB,CAAC;IAKD,sBAAW,2BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,2BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,4BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,8BAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,iBAAU,IAAI,CAAC,KAAK,CAAC,sBAAsB,eAAK,IAAI,CAAC,KAAK,CAAC,sBAAsB,WAAQ,CAAC;QAE1J,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,eAAC;AAAD,CAAC,AAtDD,CAA8B,iBAAiB,GAsD9C;;AAED,aAAa,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the value of the first parameter raised to the power of the second\r\n */\r\nexport class PowBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new PowBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"power\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._linkConnectionTypes(0, 1);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"PowBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value operand input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the power operand input component\r\n */\r\n public get power(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = pow(${this.value.associatedVariableName}, ${this.power.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.PowBlock\", PowBlock);"]}
@@ -53,9 +53,9 @@ var RandomNumberBlock = /** @class */ (function (_super) {
53
53
  RandomNumberBlock.prototype._buildBlock = function (state) {
54
54
  _super.prototype._buildBlock.call(this, state);
55
55
  var output = this._outputs[0];
56
- var comments = "//" + this.name;
56
+ var comments = "//".concat(this.name);
57
57
  state._emitFunctionFromInclude("helperFunctions", comments);
58
- state.compilationString += this._declareOutput(output, state) + (" = getRand(" + this.seed.associatedVariableName + ".xy);\r\n");
58
+ state.compilationString += this._declareOutput(output, state) + " = getRand(".concat(this.seed.associatedVariableName, ".xy);\r\n");
59
59
  return this;
60
60
  };
61
61
  return RandomNumberBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"randomNumberBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/randomNumberBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,iDAAiD,CAAC;AAEzD;;GAEG;AACH;IAAuC,qCAAiB;IACpD;;;OAGG;IACH,2BAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAShD;QAPG,KAAI,CAAC,aAAa,CAAC,MAAM,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC1E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QAE3E,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,wCAAY,GAAnB;QACI,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IAKD,sBAAW,mCAAI;QAHf;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,qCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,uCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,IAAI,QAAQ,GAAG,OAAK,IAAI,CAAC,IAAM,CAAC;QAChC,KAAK,CAAC,wBAAwB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAE5D,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,gBAAc,IAAI,CAAC,IAAI,CAAC,sBAAsB,cAAW,CAAA,CAAC;QAE1H,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,wBAAC;AAAD,CAAC,AAnDD,CAAuC,iBAAiB,GAmDvD;;AAED,aAAa,CAAC,2BAA2B,EAAE,iBAAiB,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n\r\nimport \"../../../Shaders/ShadersInclude/helperFunctions\";\r\n\r\n/**\r\n * Block used to get a random number\r\n */\r\nexport class RandomNumberBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new RandomNumberBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"seed\", NodeMaterialBlockConnectionPointTypes.Vector2);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Float);\r\n\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"RandomNumberBlock\";\r\n }\r\n\r\n /**\r\n * Gets the seed input component\r\n */\r\n public get seed(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n let comments = `//${this.name}`;\r\n state._emitFunctionFromInclude(\"helperFunctions\", comments);\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = getRand(${this.seed.associatedVariableName}.xy);\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.RandomNumberBlock\", RandomNumberBlock);"]}
1
+ {"version":3,"file":"randomNumberBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/randomNumberBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,iDAAiD,CAAC;AAEzD;;GAEG;AACH;IAAuC,qCAAiB;IACpD;;;OAGG;IACH,2BAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAShD;QAPG,KAAI,CAAC,aAAa,CAAC,MAAM,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC1E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QAE3E,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,wCAAY,GAAnB;QACI,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IAKD,sBAAW,mCAAI;QAHf;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,qCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,uCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,IAAI,QAAQ,GAAG,YAAK,IAAI,CAAC,IAAI,CAAE,CAAC;QAChC,KAAK,CAAC,wBAAwB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAE5D,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,qBAAc,IAAI,CAAC,IAAI,CAAC,sBAAsB,cAAW,CAAC;QAE1H,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,wBAAC;AAAD,CAAC,AAnDD,CAAuC,iBAAiB,GAmDvD;;AAED,aAAa,CAAC,2BAA2B,EAAE,iBAAiB,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n\r\nimport \"../../../Shaders/ShadersInclude/helperFunctions\";\r\n\r\n/**\r\n * Block used to get a random number\r\n */\r\nexport class RandomNumberBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new RandomNumberBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"seed\", NodeMaterialBlockConnectionPointTypes.Vector2);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Float);\r\n\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"RandomNumberBlock\";\r\n }\r\n\r\n /**\r\n * Gets the seed input component\r\n */\r\n public get seed(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n let comments = `//${this.name}`;\r\n state._emitFunctionFromInclude(\"helperFunctions\", comments);\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = getRand(${this.seed.associatedVariableName}.xy);\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.RandomNumberBlock\", RandomNumberBlock);"]}
@@ -50,7 +50,7 @@ var ReciprocalBlock = /** @class */ (function (_super) {
50
50
  ReciprocalBlock.prototype._buildBlock = function (state) {
51
51
  _super.prototype._buildBlock.call(this, state);
52
52
  var output = this._outputs[0];
53
- state.compilationString += this._declareOutput(output, state) + (" = 1. / " + this.input.associatedVariableName + ";\r\n");
53
+ state.compilationString += this._declareOutput(output, state) + " = 1. / ".concat(this.input.associatedVariableName, ";\r\n");
54
54
  return this;
55
55
  };
56
56
  return ReciprocalBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"reciprocalBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/reciprocalBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAqC,mCAAiB;IAClD;;;OAGG;IACH,yBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAOhD;QALG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACrG,CAAC;IAED;;;OAGG;IACI,sCAAY,GAAnB;QACI,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,mCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,qCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,aAAW,IAAI,CAAC,KAAK,CAAC,sBAAsB,UAAO,CAAA,CAAC;QAEpH,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,sBAAC;AAAD,CAAC,AA9CD,CAAqC,iBAAiB,GA8CrD;;AAED,aAAa,CAAC,yBAAyB,EAAE,eAAe,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the reciprocal (1 / x) of a value\r\n */\r\nexport class ReciprocalBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ReciprocalBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._outputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ReciprocalBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = 1. / ${this.input.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ReciprocalBlock\", ReciprocalBlock);"]}
1
+ {"version":3,"file":"reciprocalBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/reciprocalBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAqC,mCAAiB;IAClD;;;OAGG;IACH,yBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAOhD;QALG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACrG,CAAC;IAED;;;OAGG;IACI,sCAAY,GAAnB;QACI,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,mCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,qCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,kBAAW,IAAI,CAAC,KAAK,CAAC,sBAAsB,UAAO,CAAC;QAEpH,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,sBAAC;AAAD,CAAC,AA9CD,CAAqC,iBAAiB,GA8CrD;;AAED,aAAa,CAAC,yBAAyB,EAAE,eAAe,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the reciprocal (1 / x) of a value\r\n */\r\nexport class ReciprocalBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ReciprocalBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._outputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ReciprocalBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = 1. / ${this.input.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ReciprocalBlock\", ReciprocalBlock);"]}
@@ -65,7 +65,7 @@ var ReflectBlock = /** @class */ (function (_super) {
65
65
  ReflectBlock.prototype._buildBlock = function (state) {
66
66
  _super.prototype._buildBlock.call(this, state);
67
67
  var output = this._outputs[0];
68
- state.compilationString += this._declareOutput(output, state) + (" = reflect(" + this.incident.associatedVariableName + ".xyz, " + this.normal.associatedVariableName + ".xyz);\r\n");
68
+ state.compilationString += this._declareOutput(output, state) + " = reflect(".concat(this.incident.associatedVariableName, ".xyz, ").concat(this.normal.associatedVariableName, ".xyz);\r\n");
69
69
  return this;
70
70
  };
71
71
  return ReflectBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"reflectBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/reflectBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAkC,gCAAiB;IAC/C;;;OAGG;IACH,sBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAYhD;QAVG,KAAI,CAAC,aAAa,CAAC,UAAU,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC5E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAE7E,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,mCAAY,GAAnB;QACI,OAAO,cAAc,CAAC;IAC1B,CAAC;IAKD,sBAAW,kCAAQ;QAHnB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,kCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,gBAAc,IAAI,CAAC,QAAQ,CAAC,sBAAsB,cAAS,IAAI,CAAC,MAAM,CAAC,sBAAsB,eAAY,CAAA,CAAC;QAE1K,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,mBAAC;AAAD,CAAC,AA1DD,CAAkC,iBAAiB,GA0DlD;;AAED,aAAa,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the reflected vector from a direction and a normal\r\n */\r\nexport class ReflectBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ReflectBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"incident\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerInput(\"normal\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ReflectBlock\";\r\n }\r\n\r\n /**\r\n * Gets the incident component\r\n */\r\n public get incident(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the normal component\r\n */\r\n public get normal(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = reflect(${this.incident.associatedVariableName}.xyz, ${this.normal.associatedVariableName}.xyz);\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ReflectBlock\", ReflectBlock);"]}
1
+ {"version":3,"file":"reflectBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/reflectBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAkC,gCAAiB;IAC/C;;;OAGG;IACH,sBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAYhD;QAVG,KAAI,CAAC,aAAa,CAAC,UAAU,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC5E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAE7E,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,mCAAY,GAAnB;QACI,OAAO,cAAc,CAAC;IAC1B,CAAC;IAKD,sBAAW,kCAAQ;QAHnB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,kCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,qBAAc,IAAI,CAAC,QAAQ,CAAC,sBAAsB,mBAAS,IAAI,CAAC,MAAM,CAAC,sBAAsB,eAAY,CAAC;QAE1K,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,mBAAC;AAAD,CAAC,AA1DD,CAAkC,iBAAiB,GA0DlD;;AAED,aAAa,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the reflected vector from a direction and a normal\r\n */\r\nexport class ReflectBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ReflectBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"incident\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerInput(\"normal\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ReflectBlock\";\r\n }\r\n\r\n /**\r\n * Gets the incident component\r\n */\r\n public get incident(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the normal component\r\n */\r\n public get normal(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = reflect(${this.incident.associatedVariableName}.xyz, ${this.normal.associatedVariableName}.xyz);\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ReflectBlock\", ReflectBlock);"]}
@@ -76,7 +76,7 @@ var RefractBlock = /** @class */ (function (_super) {
76
76
  RefractBlock.prototype._buildBlock = function (state) {
77
77
  _super.prototype._buildBlock.call(this, state);
78
78
  var output = this._outputs[0];
79
- state.compilationString += this._declareOutput(output, state) + (" = refract(" + this.incident.associatedVariableName + ".xyz, " + this.normal.associatedVariableName + ".xyz, " + this.ior.associatedVariableName + ");\r\n");
79
+ state.compilationString += this._declareOutput(output, state) + " = refract(".concat(this.incident.associatedVariableName, ".xyz, ").concat(this.normal.associatedVariableName, ".xyz, ").concat(this.ior.associatedVariableName, ");\r\n");
80
80
  return this;
81
81
  };
82
82
  return RefractBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"refractBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/refractBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAkC,gCAAiB;IAC/C;;;OAGG;IACH,sBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAahD;QAXG,KAAI,CAAC,aAAa,CAAC,UAAU,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC5E,KAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACvE,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAE7E,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,mCAAY,GAAnB;QACI,OAAO,cAAc,CAAC;IAC1B,CAAC;IAKD,sBAAW,kCAAQ;QAHnB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,6BAAG;QAHd;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,kCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,gBAAc,IAAI,CAAC,QAAQ,CAAC,sBAAsB,cAAS,IAAI,CAAC,MAAM,CAAC,sBAAsB,cAAS,IAAI,CAAC,GAAG,CAAC,sBAAsB,WAAQ,CAAA,CAAC;QAE9M,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,mBAAC;AAAD,CAAC,AAlED,CAAkC,iBAAiB,GAkElD;;AAED,aAAa,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the refracted vector from a direction and a normal\r\n */\r\nexport class RefractBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new RefractBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"incident\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerInput(\"normal\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerInput(\"ior\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"RefractBlock\";\r\n }\r\n\r\n /**\r\n * Gets the incident component\r\n */\r\n public get incident(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the normal component\r\n */\r\n public get normal(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the index of refraction component\r\n */\r\n public get ior(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = refract(${this.incident.associatedVariableName}.xyz, ${this.normal.associatedVariableName}.xyz, ${this.ior.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.RefractBlock\", RefractBlock);"]}
1
+ {"version":3,"file":"refractBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/refractBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAkC,gCAAiB;IAC/C;;;OAGG;IACH,sBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAahD;QAXG,KAAI,CAAC,aAAa,CAAC,UAAU,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC5E,KAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACvE,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAE7E,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC;QACjG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;QAChG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,IAAI,CAAC,qCAAqC,CAAC,MAAM,CAAC,CAAC;;IACpG,CAAC;IAED;;;OAGG;IACI,mCAAY,GAAnB;QACI,OAAO,cAAc,CAAC;IAC1B,CAAC;IAKD,sBAAW,kCAAQ;QAHnB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,6BAAG;QAHd;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,kCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,qBAAc,IAAI,CAAC,QAAQ,CAAC,sBAAsB,mBAAS,IAAI,CAAC,MAAM,CAAC,sBAAsB,mBAAS,IAAI,CAAC,GAAG,CAAC,sBAAsB,WAAQ,CAAC;QAE9M,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,mBAAC;AAAD,CAAC,AAlED,CAAkC,iBAAiB,GAkElD;;AAED,aAAa,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to get the refracted vector from a direction and a normal\r\n */\r\nexport class RefractBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new RefractBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"incident\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerInput(\"normal\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerInput(\"ior\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[0].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Vector4);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color3);\r\n this._inputs[1].acceptedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Color4);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"RefractBlock\";\r\n }\r\n\r\n /**\r\n * Gets the incident component\r\n */\r\n public get incident(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the normal component\r\n */\r\n public get normal(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the index of refraction component\r\n */\r\n public get ior(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = refract(${this.incident.associatedVariableName}.xyz, ${this.normal.associatedVariableName}.xyz, ${this.ior.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.RefractBlock\", RefractBlock);"]}
@@ -107,12 +107,12 @@ var RemapBlock = /** @class */ (function (_super) {
107
107
  var sourceMax = this.sourceMax.isConnected ? this.sourceMax.associatedVariableName : this._writeFloat(this.sourceRange.y);
108
108
  var targetMin = this.targetMin.isConnected ? this.targetMin.associatedVariableName : this._writeFloat(this.targetRange.x);
109
109
  var targetMax = this.targetMax.isConnected ? this.targetMax.associatedVariableName : this._writeFloat(this.targetRange.y);
110
- state.compilationString += this._declareOutput(output, state) + (" = " + targetMin + " + (" + this._inputs[0].associatedVariableName + " - " + sourceMin + ") * (" + targetMax + " - " + targetMin + ") / (" + sourceMax + " - " + sourceMin + ");\r\n");
110
+ state.compilationString += this._declareOutput(output, state) + " = ".concat(targetMin, " + (").concat(this._inputs[0].associatedVariableName, " - ").concat(sourceMin, ") * (").concat(targetMax, " - ").concat(targetMin, ") / (").concat(sourceMax, " - ").concat(sourceMin, ");\r\n");
111
111
  return this;
112
112
  };
113
113
  RemapBlock.prototype._dumpPropertiesCode = function () {
114
- var codeString = _super.prototype._dumpPropertiesCode.call(this) + (this._codeVariableName + ".sourceRange = new BABYLON.Vector2(" + this.sourceRange.x + ", " + this.sourceRange.y + ");\r\n");
115
- codeString += this._codeVariableName + ".targetRange = new BABYLON.Vector2(" + this.targetRange.x + ", " + this.targetRange.y + ");\r\n";
114
+ var codeString = _super.prototype._dumpPropertiesCode.call(this) + "".concat(this._codeVariableName, ".sourceRange = new BABYLON.Vector2(").concat(this.sourceRange.x, ", ").concat(this.sourceRange.y, ");\r\n");
115
+ codeString += "".concat(this._codeVariableName, ".targetRange = new BABYLON.Vector2(").concat(this.targetRange.x, ", ").concat(this.targetRange.y, ");\r\n");
116
116
  return codeString;
117
117
  };
118
118
  RemapBlock.prototype.serialize = function () {
@@ -1 +1 @@
1
- {"version":3,"file":"remapBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/remapBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\nimport { Vector2 } from '../../../Maths/math.vector';\r\nimport { Scene } from '../../../scene';\r\nimport { editableInPropertyPage, PropertyTypeForEdition } from \"../nodeMaterialDecorator\";\r\n/**\r\n * Block used to remap a float from a range to a new one\r\n */\r\nexport class RemapBlock extends NodeMaterialBlock {\r\n /**\r\n * Gets or sets the source range\r\n */\r\n @editableInPropertyPage(\"From\", PropertyTypeForEdition.Vector2)\r\n public sourceRange = new Vector2(-1, 1);\r\n\r\n /**\r\n * Gets or sets the target range\r\n */\r\n @editableInPropertyPage(\"To\", PropertyTypeForEdition.Vector2)\r\n public targetRange = new Vector2(0, 1);\r\n\r\n /**\r\n * Creates a new RemapBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"sourceMin\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n this.registerInput(\"sourceMax\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n this.registerInput(\"targetMin\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n this.registerInput(\"targetMax\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"RemapBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the source min input component\r\n */\r\n public get sourceMin(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the source max input component\r\n */\r\n public get sourceMax(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the target min input component\r\n */\r\n public get targetMin(): NodeMaterialConnectionPoint {\r\n return this._inputs[3];\r\n }\r\n\r\n /**\r\n * Gets the target max input component\r\n */\r\n public get targetMax(): NodeMaterialConnectionPoint {\r\n return this._inputs[4];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n let sourceMin = this.sourceMin.isConnected ? this.sourceMin.associatedVariableName : this._writeFloat(this.sourceRange.x);\r\n let sourceMax = this.sourceMax.isConnected ? this.sourceMax.associatedVariableName : this._writeFloat(this.sourceRange.y);\r\n\r\n let targetMin = this.targetMin.isConnected ? this.targetMin.associatedVariableName : this._writeFloat(this.targetRange.x);\r\n let targetMax = this.targetMax.isConnected ? this.targetMax.associatedVariableName : this._writeFloat(this.targetRange.y);\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = ${targetMin} + (${this._inputs[0].associatedVariableName} - ${sourceMin}) * (${targetMax} - ${targetMin}) / (${sourceMax} - ${sourceMin});\\r\\n`;\r\n\r\n return this;\r\n }\r\n\r\n protected _dumpPropertiesCode() {\r\n var codeString = super._dumpPropertiesCode() + `${this._codeVariableName}.sourceRange = new BABYLON.Vector2(${this.sourceRange.x}, ${this.sourceRange.y});\\r\\n`;\r\n\r\n codeString += `${this._codeVariableName}.targetRange = new BABYLON.Vector2(${this.targetRange.x}, ${this.targetRange.y});\\r\\n`;\r\n\r\n return codeString;\r\n }\r\n\r\n public serialize(): any {\r\n let serializationObject = super.serialize();\r\n\r\n serializationObject.sourceRange = this.sourceRange.asArray();\r\n serializationObject.targetRange = this.targetRange.asArray();\r\n\r\n return serializationObject;\r\n }\r\n\r\n public _deserialize(serializationObject: any, scene: Scene, rootUrl: string) {\r\n super._deserialize(serializationObject, scene, rootUrl);\r\n\r\n this.sourceRange = Vector2.FromArray(serializationObject.sourceRange);\r\n this.targetRange = Vector2.FromArray(serializationObject.targetRange);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.RemapBlock\", RemapBlock);"]}
1
+ {"version":3,"file":"remapBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/remapBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\nimport { Vector2 } from '../../../Maths/math.vector';\r\nimport { Scene } from '../../../scene';\r\nimport { editableInPropertyPage, PropertyTypeForEdition } from \"../nodeMaterialDecorator\";\r\n/**\r\n * Block used to remap a float from a range to a new one\r\n */\r\nexport class RemapBlock extends NodeMaterialBlock {\r\n /**\r\n * Gets or sets the source range\r\n */\r\n @editableInPropertyPage(\"From\", PropertyTypeForEdition.Vector2)\r\n public sourceRange = new Vector2(-1, 1);\r\n\r\n /**\r\n * Gets or sets the target range\r\n */\r\n @editableInPropertyPage(\"To\", PropertyTypeForEdition.Vector2)\r\n public targetRange = new Vector2(0, 1);\r\n\r\n /**\r\n * Creates a new RemapBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"sourceMin\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n this.registerInput(\"sourceMax\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n this.registerInput(\"targetMin\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n this.registerInput(\"targetMax\", NodeMaterialBlockConnectionPointTypes.Float, true);\r\n\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"RemapBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the source min input component\r\n */\r\n public get sourceMin(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the source max input component\r\n */\r\n public get sourceMax(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the target min input component\r\n */\r\n public get targetMin(): NodeMaterialConnectionPoint {\r\n return this._inputs[3];\r\n }\r\n\r\n /**\r\n * Gets the target max input component\r\n */\r\n public get targetMax(): NodeMaterialConnectionPoint {\r\n return this._inputs[4];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n let sourceMin = this.sourceMin.isConnected ? this.sourceMin.associatedVariableName : this._writeFloat(this.sourceRange.x);\r\n let sourceMax = this.sourceMax.isConnected ? this.sourceMax.associatedVariableName : this._writeFloat(this.sourceRange.y);\r\n\r\n let targetMin = this.targetMin.isConnected ? this.targetMin.associatedVariableName : this._writeFloat(this.targetRange.x);\r\n let targetMax = this.targetMax.isConnected ? this.targetMax.associatedVariableName : this._writeFloat(this.targetRange.y);\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = ${targetMin} + (${this._inputs[0].associatedVariableName} - ${sourceMin}) * (${targetMax} - ${targetMin}) / (${sourceMax} - ${sourceMin});\\r\\n`;\r\n\r\n return this;\r\n }\r\n\r\n protected _dumpPropertiesCode() {\r\n var codeString = super._dumpPropertiesCode() + `${this._codeVariableName}.sourceRange = new BABYLON.Vector2(${this.sourceRange.x}, ${this.sourceRange.y});\\r\\n`;\r\n\r\n codeString += `${this._codeVariableName}.targetRange = new BABYLON.Vector2(${this.targetRange.x}, ${this.targetRange.y});\\r\\n`;\r\n\r\n return codeString;\r\n }\r\n\r\n public serialize(): any {\r\n let serializationObject = super.serialize();\r\n\r\n serializationObject.sourceRange = this.sourceRange.asArray();\r\n serializationObject.targetRange = this.targetRange.asArray();\r\n\r\n return serializationObject;\r\n }\r\n\r\n public _deserialize(serializationObject: any, scene: Scene, rootUrl: string) {\r\n super._deserialize(serializationObject, scene, rootUrl);\r\n\r\n this.sourceRange = Vector2.FromArray(serializationObject.sourceRange);\r\n this.targetRange = Vector2.FromArray(serializationObject.targetRange);\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.RemapBlock\", RemapBlock);"]}
@@ -91,10 +91,10 @@ var ReplaceColorBlock = /** @class */ (function (_super) {
91
91
  _super.prototype._buildBlock.call(this, state);
92
92
  var output = this._outputs[0];
93
93
  state.compilationString += this._declareOutput(output, state) + ";\r\n";
94
- state.compilationString += "if (length(" + this.value.associatedVariableName + " - " + this.reference.associatedVariableName + ") < " + this.distance.associatedVariableName + ") {\r\n";
95
- state.compilationString += output.associatedVariableName + " = " + this.replacement.associatedVariableName + ";\r\n";
94
+ state.compilationString += "if (length(".concat(this.value.associatedVariableName, " - ").concat(this.reference.associatedVariableName, ") < ").concat(this.distance.associatedVariableName, ") {\r\n");
95
+ state.compilationString += "".concat(output.associatedVariableName, " = ").concat(this.replacement.associatedVariableName, ";\r\n");
96
96
  state.compilationString += "} else {\r\n";
97
- state.compilationString += output.associatedVariableName + " = " + this.value.associatedVariableName + ";\r\n";
97
+ state.compilationString += "".concat(output.associatedVariableName, " = ").concat(this.value.associatedVariableName, ";\r\n");
98
98
  state.compilationString += "}\r\n";
99
99
  return this;
100
100
  };
@@ -1 +1 @@
1
- {"version":3,"file":"replaceColorBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/replaceColorBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to replace a color by another one\r\n */\r\nexport class ReplaceColorBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ReplaceColorBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"reference\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"distance\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerInput(\"replacement\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._linkConnectionTypes(0, 1);\r\n this._linkConnectionTypes(0, 3);\r\n\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n this._inputs[1].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[1].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n this._inputs[3].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[3].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ReplaceColorBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the reference input component\r\n */\r\n public get reference(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the distance input component\r\n */\r\n public get distance(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the replacement input component\r\n */\r\n public get replacement(): NodeMaterialConnectionPoint {\r\n return this._inputs[3];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + `;\\r\\n`;\r\n state.compilationString += `if (length(${this.value.associatedVariableName} - ${this.reference.associatedVariableName}) < ${this.distance.associatedVariableName}) {\\r\\n`;\r\n state.compilationString += `${output.associatedVariableName} = ${this.replacement.associatedVariableName};\\r\\n`;\r\n state.compilationString += `} else {\\r\\n`;\r\n state.compilationString += `${output.associatedVariableName} = ${this.value.associatedVariableName};\\r\\n`;\r\n state.compilationString += `}\\r\\n`;\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ReplaceColorBlock\", ReplaceColorBlock);"]}
1
+ {"version":3,"file":"replaceColorBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/replaceColorBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to replace a color by another one\r\n */\r\nexport class ReplaceColorBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ReplaceColorBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"reference\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"distance\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerInput(\"replacement\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n this._linkConnectionTypes(0, 1);\r\n this._linkConnectionTypes(0, 3);\r\n\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[0].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n this._inputs[1].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[1].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n this._inputs[3].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Float);\r\n this._inputs[3].excludedConnectionPointTypes.push(NodeMaterialBlockConnectionPointTypes.Matrix);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ReplaceColorBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the reference input component\r\n */\r\n public get reference(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the distance input component\r\n */\r\n public get distance(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the replacement input component\r\n */\r\n public get replacement(): NodeMaterialConnectionPoint {\r\n return this._inputs[3];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + `;\\r\\n`;\r\n state.compilationString += `if (length(${this.value.associatedVariableName} - ${this.reference.associatedVariableName}) < ${this.distance.associatedVariableName}) {\\r\\n`;\r\n state.compilationString += `${output.associatedVariableName} = ${this.replacement.associatedVariableName};\\r\\n`;\r\n state.compilationString += `} else {\\r\\n`;\r\n state.compilationString += `${output.associatedVariableName} = ${this.value.associatedVariableName};\\r\\n`;\r\n state.compilationString += `}\\r\\n`;\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ReplaceColorBlock\", ReplaceColorBlock);"]}
@@ -69,7 +69,7 @@ var Rotate2dBlock = /** @class */ (function (_super) {
69
69
  var output = this._outputs[0];
70
70
  var angle = this.angle;
71
71
  var input = this.input;
72
- state.compilationString += this._declareOutput(output, state) + (" = vec2(cos(" + angle.associatedVariableName + ") * " + input.associatedVariableName + ".x - sin(" + angle.associatedVariableName + ") * " + input.associatedVariableName + ".y, sin(" + angle.associatedVariableName + ") * " + input.associatedVariableName + ".x + cos(" + angle.associatedVariableName + ") * " + input.associatedVariableName + ".y);\r\n");
72
+ state.compilationString += this._declareOutput(output, state) + " = vec2(cos(".concat(angle.associatedVariableName, ") * ").concat(input.associatedVariableName, ".x - sin(").concat(angle.associatedVariableName, ") * ").concat(input.associatedVariableName, ".y, sin(").concat(angle.associatedVariableName, ") * ").concat(input.associatedVariableName, ".x + cos(").concat(angle.associatedVariableName, ") * ").concat(input.associatedVariableName, ".y);\r\n");
73
73
  return this;
74
74
  };
75
75
  return Rotate2dBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"rotate2dBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/rotate2dBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAEvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH;IAAmC,iCAAiB;IAEhD;;;OAGG;IACH,uBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAKhD;QAHG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC3E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACzE,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;;IACjF,CAAC;IAED;;;OAGG;IACI,oCAAY,GAAnB;QACI,OAAO,eAAe,CAAC;IAC3B,CAAC;IAKD,sBAAW,gCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAEM,qCAAa,GAApB,UAAqB,QAAsB;QACvC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YACzB,IAAI,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;YACzC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;YACrB,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3C;IACL,CAAC;IAES,mCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEvB,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,iBAAe,KAAK,CAAC,sBAAsB,YAAO,KAAK,CAAC,sBAAsB,iBAAY,KAAK,CAAC,sBAAsB,YAAO,KAAK,CAAC,sBAAsB,gBAAW,KAAK,CAAC,sBAAsB,YAAO,KAAK,CAAC,sBAAsB,iBAAY,KAAK,CAAC,sBAAsB,YAAO,KAAK,CAAC,sBAAsB,aAAU,CAAA,CAAC;QAEzX,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,oBAAC;AAAD,CAAC,AA9DD,CAAmC,iBAAiB,GA8DnD;;AAED,aAAa,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\nimport { NodeMaterial } from '../nodeMaterial';\r\nimport { InputBlock } from './Input/inputBlock';\r\n\r\n/**\r\n * Block used to rotate a 2d vector by a given angle\r\n */\r\nexport class Rotate2dBlock extends NodeMaterialBlock {\r\n\r\n /**\r\n * Creates a new Rotate2dBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.Vector2);\r\n this.registerInput(\"angle\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Vector2);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"Rotate2dBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input vector\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the input angle\r\n */\r\n public get angle(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n public autoConfigure(material: NodeMaterial) {\r\n if (!this.angle.isConnected) {\r\n let angleInput = new InputBlock(\"angle\");\r\n angleInput.value = 0;\r\n angleInput.output.connectTo(this.angle);\r\n }\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n let angle = this.angle;\r\n let input = this.input;\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = vec2(cos(${angle.associatedVariableName}) * ${input.associatedVariableName}.x - sin(${angle.associatedVariableName}) * ${input.associatedVariableName}.y, sin(${angle.associatedVariableName}) * ${input.associatedVariableName}.x + cos(${angle.associatedVariableName}) * ${input.associatedVariableName}.y);\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.Rotate2dBlock\", Rotate2dBlock);"]}
1
+ {"version":3,"file":"rotate2dBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/rotate2dBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAEvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH;IAAmC,iCAAiB;IAEhD;;;OAGG;IACH,uBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAKhD;QAHG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;QAC3E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACzE,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,OAAO,CAAC,CAAC;;IACjF,CAAC;IAED;;;OAGG;IACI,oCAAY,GAAnB;QACI,OAAO,eAAe,CAAC;IAC3B,CAAC;IAKD,sBAAW,gCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,gCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAEM,qCAAa,GAApB,UAAqB,QAAsB;QACvC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YACzB,IAAI,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;YACzC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;YACrB,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3C;IACL,CAAC;IAES,mCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEvB,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,sBAAe,KAAK,CAAC,sBAAsB,iBAAO,KAAK,CAAC,sBAAsB,sBAAY,KAAK,CAAC,sBAAsB,iBAAO,KAAK,CAAC,sBAAsB,qBAAW,KAAK,CAAC,sBAAsB,iBAAO,KAAK,CAAC,sBAAsB,sBAAY,KAAK,CAAC,sBAAsB,iBAAO,KAAK,CAAC,sBAAsB,aAAU,CAAC;QAEzX,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,oBAAC;AAAD,CAAC,AA9DD,CAAmC,iBAAiB,GA8DnD;;AAED,aAAa,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\nimport { NodeMaterial } from '../nodeMaterial';\r\nimport { InputBlock } from './Input/inputBlock';\r\n\r\n/**\r\n * Block used to rotate a 2d vector by a given angle\r\n */\r\nexport class Rotate2dBlock extends NodeMaterialBlock {\r\n\r\n /**\r\n * Creates a new Rotate2dBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.Vector2);\r\n this.registerInput(\"angle\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Vector2);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"Rotate2dBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input vector\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the input angle\r\n */\r\n public get angle(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n public autoConfigure(material: NodeMaterial) {\r\n if (!this.angle.isConnected) {\r\n let angleInput = new InputBlock(\"angle\");\r\n angleInput.value = 0;\r\n angleInput.output.connectTo(this.angle);\r\n }\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n let angle = this.angle;\r\n let input = this.input;\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = vec2(cos(${angle.associatedVariableName}) * ${input.associatedVariableName}.x - sin(${angle.associatedVariableName}) * ${input.associatedVariableName}.y, sin(${angle.associatedVariableName}) * ${input.associatedVariableName}.x + cos(${angle.associatedVariableName}) * ${input.associatedVariableName}.y);\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.Rotate2dBlock\", Rotate2dBlock);"]}
@@ -60,7 +60,7 @@ var ScaleBlock = /** @class */ (function (_super) {
60
60
  ScaleBlock.prototype._buildBlock = function (state) {
61
61
  _super.prototype._buildBlock.call(this, state);
62
62
  var output = this._outputs[0];
63
- state.compilationString += this._declareOutput(output, state) + (" = " + this.input.associatedVariableName + " * " + this.factor.associatedVariableName + ";\r\n");
63
+ state.compilationString += this._declareOutput(output, state) + " = ".concat(this.input.associatedVariableName, " * ").concat(this.factor.associatedVariableName, ";\r\n");
64
64
  return this;
65
65
  };
66
66
  return ScaleBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"scaleBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/scaleBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAgC,8BAAiB;IAC7C;;;OAGG;IACH,oBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAOhD;QALG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QAC1E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;IAC7D,CAAC;IAED;;;OAGG;IACI,iCAAY,GAAnB;QACI,OAAO,YAAY,CAAC;IACxB,CAAC;IAKD,sBAAW,6BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,gCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,QAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,WAAM,IAAI,CAAC,MAAM,CAAC,sBAAsB,UAAO,CAAA,CAAC;QAEvJ,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,iBAAC;AAAD,CAAC,AArDD,CAAgC,iBAAiB,GAqDhD;;AAED,aAAa,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to scale a vector by a float\r\n */\r\nexport class ScaleBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ScaleBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"factor\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ScaleBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the factor input component\r\n */\r\n public get factor(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = ${this.input.associatedVariableName} * ${this.factor.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ScaleBlock\", ScaleBlock);"]}
1
+ {"version":3,"file":"scaleBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/scaleBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAgC,8BAAiB;IAC7C;;;OAGG;IACH,oBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAOhD;QALG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QAC1E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;IAC7D,CAAC;IAED;;;OAGG;IACI,iCAAY,GAAnB;QACI,OAAO,YAAY,CAAC;IACxB,CAAC;IAKD,sBAAW,6BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,gCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,aAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,gBAAM,IAAI,CAAC,MAAM,CAAC,sBAAsB,UAAO,CAAC;QAEvJ,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,iBAAC;AAAD,CAAC,AArDD,CAAgC,iBAAiB,GAqDhD;;AAED,aAAa,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to scale a vector by a float\r\n */\r\nexport class ScaleBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ScaleBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"factor\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ScaleBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the factor input component\r\n */\r\n public get factor(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = ${this.input.associatedVariableName} * ${this.factor.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ScaleBlock\", ScaleBlock);"]}
@@ -123,7 +123,7 @@ var SimplexPerlin3DBlock = /** @class */ (function (_super) {
123
123
  functionString += " return dot( kernel_weights, grad_results ) * FINAL_NORMALIZATION;\r\n";
124
124
  functionString += "}\r\n";
125
125
  state._emitFunction('SimplexPerlin3D', functionString, '// SimplexPerlin3D');
126
- state.compilationString += this._declareOutput(this._outputs[0], state) + (" = SimplexPerlin3D(" + this.seed.associatedVariableName + ");\r\n");
126
+ state.compilationString += this._declareOutput(this._outputs[0], state) + " = SimplexPerlin3D(".concat(this.seed.associatedVariableName, ");\r\n");
127
127
  return this;
128
128
  };
129
129
  return SimplexPerlin3DBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"simplexPerlin3DBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/simplexPerlin3DBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * block used to Generate a Simplex Perlin 3d Noise Pattern\r\n */\r\n//\r\n// Wombat\r\n// An efficient texture-free GLSL procedural noise library\r\n// Source: https://github.com/BrianSharpe/Wombat\r\n// Derived from: https://github.com/BrianSharpe/GPU-Noise-Lib\r\n//\r\n// I'm not one for copyrights. Use the code however you wish.\r\n// All I ask is that credit be given back to the blog or myself when appropriate.\r\n// And also to let me know if you come up with any changes, improvements, thoughts or interesting uses for this stuff. :)\r\n// Thanks!\r\n//\r\n// Brian Sharpe\r\n// brisharpe CIRCLE_A yahoo DOT com\r\n// http://briansharpe.wordpress.com\r\n// https://github.com/BrianSharpe\r\n//\r\n//\r\n// This is a modified version of Stefan Gustavson's and Ian McEwan's work at http://github.com/ashima/webgl-noise\r\n// Modifications are...\r\n// - faster random number generation\r\n// - analytical final normalization\r\n// - space scaled can have an approx feature size of 1.0\r\n// - filter kernel changed to fix discontinuities at tetrahedron boundaries\r\n//\r\n// Converted to BJS by Pryme8\r\n//\r\n// Simplex Perlin Noise 3D\r\n// Return value range of -1.0->1.0\r\n//\r\nexport class SimplexPerlin3DBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new SimplexPerlin3DBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n this.registerInput(\"seed\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Float);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"SimplexPerlin3DBlock\";\r\n }\r\n\r\n /**\r\n * Gets the seed operand input component\r\n */\r\n public get seed(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n if (!this.seed.isConnected) {\r\n return;\r\n }\r\n\r\n if (!this._outputs[0].hasEndpoints) {\r\n return;\r\n }\r\n\r\n let functionString = `const float SKEWFACTOR = 1.0/3.0;\\r\\n`;\r\n functionString += `const float UNSKEWFACTOR = 1.0/6.0;\\r\\n`;\r\n functionString += `const float SIMPLEX_CORNER_POS = 0.5;\\r\\n`;\r\n functionString += `const float SIMPLEX_TETRAHADRON_HEIGHT = 0.70710678118654752440084436210485;\\r\\n`;\r\n functionString += `float SimplexPerlin3D( vec3 P ){\\r\\n`;\r\n functionString += ` P *= SIMPLEX_TETRAHADRON_HEIGHT;\\r\\n`;\r\n functionString += ` vec3 Pi = floor( P + dot( P, vec3( SKEWFACTOR) ) );`;\r\n functionString += ` vec3 x0 = P - Pi + dot(Pi, vec3( UNSKEWFACTOR ) );\\r\\n`;\r\n functionString += ` vec3 g = step(x0.yzx, x0.xyz);\\r\\n`;\r\n functionString += ` vec3 l = 1.0 - g;\\r\\n`;\r\n functionString += ` vec3 Pi_1 = min( g.xyz, l.zxy );\\r\\n`;\r\n functionString += ` vec3 Pi_2 = max( g.xyz, l.zxy );\\r\\n`;\r\n functionString += ` vec3 x1 = x0 - Pi_1 + UNSKEWFACTOR;\\r\\n`;\r\n functionString += ` vec3 x2 = x0 - Pi_2 + SKEWFACTOR;\\r\\n`;\r\n functionString += ` vec3 x3 = x0 - SIMPLEX_CORNER_POS;\\r\\n`;\r\n functionString += ` vec4 v1234_x = vec4( x0.x, x1.x, x2.x, x3.x );\\r\\n`;\r\n functionString += ` vec4 v1234_y = vec4( x0.y, x1.y, x2.y, x3.y );\\r\\n`;\r\n functionString += ` vec4 v1234_z = vec4( x0.z, x1.z, x2.z, x3.z );\\r\\n`;\r\n functionString += ` Pi.xyz = Pi.xyz - floor(Pi.xyz * ( 1.0 / 69.0 )) * 69.0;\\r\\n`;\r\n functionString += ` vec3 Pi_inc1 = step( Pi, vec3( 69.0 - 1.5 ) ) * ( Pi + 1.0 );\\r\\n`;\r\n functionString += ` vec4 Pt = vec4( Pi.xy, Pi_inc1.xy ) + vec2( 50.0, 161.0 ).xyxy;\\r\\n`;\r\n functionString += ` Pt *= Pt;\\r\\n`;\r\n functionString += ` vec4 V1xy_V2xy = mix( Pt.xyxy, Pt.zwzw, vec4( Pi_1.xy, Pi_2.xy ) );\\r\\n`;\r\n functionString += ` Pt = vec4( Pt.x, V1xy_V2xy.xz, Pt.z ) * vec4( Pt.y, V1xy_V2xy.yw, Pt.w );\\r\\n`;\r\n functionString += ` const vec3 SOMELARGEFLOATS = vec3( 635.298681, 682.357502, 668.926525 );\\r\\n`;\r\n functionString += ` const vec3 ZINC = vec3( 48.500388, 65.294118, 63.934599 );\\r\\n`;\r\n functionString += ` vec3 lowz_mods = vec3( 1.0 / ( SOMELARGEFLOATS.xyz + Pi.zzz * ZINC.xyz ) );\\r\\n`;\r\n functionString += ` vec3 highz_mods = vec3( 1.0 / ( SOMELARGEFLOATS.xyz + Pi_inc1.zzz * ZINC.xyz ) );\\r\\n`;\r\n functionString += ` Pi_1 = ( Pi_1.z < 0.5 ) ? lowz_mods : highz_mods;\\r\\n`;\r\n functionString += ` Pi_2 = ( Pi_2.z < 0.5 ) ? lowz_mods : highz_mods;\\r\\n`;\r\n functionString += ` vec4 hash_0 = fract( Pt * vec4( lowz_mods.x, Pi_1.x, Pi_2.x, highz_mods.x ) ) - 0.49999;\\r\\n`;\r\n functionString += ` vec4 hash_1 = fract( Pt * vec4( lowz_mods.y, Pi_1.y, Pi_2.y, highz_mods.y ) ) - 0.49999;\\r\\n`;\r\n functionString += ` vec4 hash_2 = fract( Pt * vec4( lowz_mods.z, Pi_1.z, Pi_2.z, highz_mods.z ) ) - 0.49999;\\r\\n`;\r\n functionString += ` vec4 grad_results = inversesqrt( hash_0 * hash_0 + hash_1 * hash_1 + hash_2 * hash_2 ) * ( hash_0 * v1234_x + hash_1 * v1234_y + hash_2 * v1234_z );\\r\\n`;\r\n functionString += ` const float FINAL_NORMALIZATION = 37.837227241611314102871574478976;\\r\\n`;\r\n functionString += ` vec4 kernel_weights = v1234_x * v1234_x + v1234_y * v1234_y + v1234_z * v1234_z;\\r\\n`;\r\n functionString += ` kernel_weights = max(0.5 - kernel_weights, 0.0);\\r\\n`;\r\n functionString += ` kernel_weights = kernel_weights*kernel_weights*kernel_weights;\\r\\n`;\r\n functionString += ` return dot( kernel_weights, grad_results ) * FINAL_NORMALIZATION;\\r\\n`;\r\n functionString += `}\\r\\n`;\r\n\r\n state._emitFunction('SimplexPerlin3D', functionString, '// SimplexPerlin3D');\r\n state.compilationString += this._declareOutput(this._outputs[0], state) + ` = SimplexPerlin3D(${this.seed.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.SimplexPerlin3DBlock\", SimplexPerlin3DBlock);"]}
1
+ {"version":3,"file":"simplexPerlin3DBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/simplexPerlin3DBlock.ts"],"names":[],"mappings":"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","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * block used to Generate a Simplex Perlin 3d Noise Pattern\r\n */\r\n//\r\n// Wombat\r\n// An efficient texture-free GLSL procedural noise library\r\n// Source: https://github.com/BrianSharpe/Wombat\r\n// Derived from: https://github.com/BrianSharpe/GPU-Noise-Lib\r\n//\r\n// I'm not one for copyrights. Use the code however you wish.\r\n// All I ask is that credit be given back to the blog or myself when appropriate.\r\n// And also to let me know if you come up with any changes, improvements, thoughts or interesting uses for this stuff. :)\r\n// Thanks!\r\n//\r\n// Brian Sharpe\r\n// brisharpe CIRCLE_A yahoo DOT com\r\n// http://briansharpe.wordpress.com\r\n// https://github.com/BrianSharpe\r\n//\r\n//\r\n// This is a modified version of Stefan Gustavson's and Ian McEwan's work at http://github.com/ashima/webgl-noise\r\n// Modifications are...\r\n// - faster random number generation\r\n// - analytical final normalization\r\n// - space scaled can have an approx feature size of 1.0\r\n// - filter kernel changed to fix discontinuities at tetrahedron boundaries\r\n//\r\n// Converted to BJS by Pryme8\r\n//\r\n// Simplex Perlin Noise 3D\r\n// Return value range of -1.0->1.0\r\n//\r\nexport class SimplexPerlin3DBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new SimplexPerlin3DBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n this.registerInput(\"seed\", NodeMaterialBlockConnectionPointTypes.Vector3);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.Float);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"SimplexPerlin3DBlock\";\r\n }\r\n\r\n /**\r\n * Gets the seed operand input component\r\n */\r\n public get seed(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n if (!this.seed.isConnected) {\r\n return;\r\n }\r\n\r\n if (!this._outputs[0].hasEndpoints) {\r\n return;\r\n }\r\n\r\n let functionString = `const float SKEWFACTOR = 1.0/3.0;\\r\\n`;\r\n functionString += `const float UNSKEWFACTOR = 1.0/6.0;\\r\\n`;\r\n functionString += `const float SIMPLEX_CORNER_POS = 0.5;\\r\\n`;\r\n functionString += `const float SIMPLEX_TETRAHADRON_HEIGHT = 0.70710678118654752440084436210485;\\r\\n`;\r\n functionString += `float SimplexPerlin3D( vec3 P ){\\r\\n`;\r\n functionString += ` P *= SIMPLEX_TETRAHADRON_HEIGHT;\\r\\n`;\r\n functionString += ` vec3 Pi = floor( P + dot( P, vec3( SKEWFACTOR) ) );`;\r\n functionString += ` vec3 x0 = P - Pi + dot(Pi, vec3( UNSKEWFACTOR ) );\\r\\n`;\r\n functionString += ` vec3 g = step(x0.yzx, x0.xyz);\\r\\n`;\r\n functionString += ` vec3 l = 1.0 - g;\\r\\n`;\r\n functionString += ` vec3 Pi_1 = min( g.xyz, l.zxy );\\r\\n`;\r\n functionString += ` vec3 Pi_2 = max( g.xyz, l.zxy );\\r\\n`;\r\n functionString += ` vec3 x1 = x0 - Pi_1 + UNSKEWFACTOR;\\r\\n`;\r\n functionString += ` vec3 x2 = x0 - Pi_2 + SKEWFACTOR;\\r\\n`;\r\n functionString += ` vec3 x3 = x0 - SIMPLEX_CORNER_POS;\\r\\n`;\r\n functionString += ` vec4 v1234_x = vec4( x0.x, x1.x, x2.x, x3.x );\\r\\n`;\r\n functionString += ` vec4 v1234_y = vec4( x0.y, x1.y, x2.y, x3.y );\\r\\n`;\r\n functionString += ` vec4 v1234_z = vec4( x0.z, x1.z, x2.z, x3.z );\\r\\n`;\r\n functionString += ` Pi.xyz = Pi.xyz - floor(Pi.xyz * ( 1.0 / 69.0 )) * 69.0;\\r\\n`;\r\n functionString += ` vec3 Pi_inc1 = step( Pi, vec3( 69.0 - 1.5 ) ) * ( Pi + 1.0 );\\r\\n`;\r\n functionString += ` vec4 Pt = vec4( Pi.xy, Pi_inc1.xy ) + vec2( 50.0, 161.0 ).xyxy;\\r\\n`;\r\n functionString += ` Pt *= Pt;\\r\\n`;\r\n functionString += ` vec4 V1xy_V2xy = mix( Pt.xyxy, Pt.zwzw, vec4( Pi_1.xy, Pi_2.xy ) );\\r\\n`;\r\n functionString += ` Pt = vec4( Pt.x, V1xy_V2xy.xz, Pt.z ) * vec4( Pt.y, V1xy_V2xy.yw, Pt.w );\\r\\n`;\r\n functionString += ` const vec3 SOMELARGEFLOATS = vec3( 635.298681, 682.357502, 668.926525 );\\r\\n`;\r\n functionString += ` const vec3 ZINC = vec3( 48.500388, 65.294118, 63.934599 );\\r\\n`;\r\n functionString += ` vec3 lowz_mods = vec3( 1.0 / ( SOMELARGEFLOATS.xyz + Pi.zzz * ZINC.xyz ) );\\r\\n`;\r\n functionString += ` vec3 highz_mods = vec3( 1.0 / ( SOMELARGEFLOATS.xyz + Pi_inc1.zzz * ZINC.xyz ) );\\r\\n`;\r\n functionString += ` Pi_1 = ( Pi_1.z < 0.5 ) ? lowz_mods : highz_mods;\\r\\n`;\r\n functionString += ` Pi_2 = ( Pi_2.z < 0.5 ) ? lowz_mods : highz_mods;\\r\\n`;\r\n functionString += ` vec4 hash_0 = fract( Pt * vec4( lowz_mods.x, Pi_1.x, Pi_2.x, highz_mods.x ) ) - 0.49999;\\r\\n`;\r\n functionString += ` vec4 hash_1 = fract( Pt * vec4( lowz_mods.y, Pi_1.y, Pi_2.y, highz_mods.y ) ) - 0.49999;\\r\\n`;\r\n functionString += ` vec4 hash_2 = fract( Pt * vec4( lowz_mods.z, Pi_1.z, Pi_2.z, highz_mods.z ) ) - 0.49999;\\r\\n`;\r\n functionString += ` vec4 grad_results = inversesqrt( hash_0 * hash_0 + hash_1 * hash_1 + hash_2 * hash_2 ) * ( hash_0 * v1234_x + hash_1 * v1234_y + hash_2 * v1234_z );\\r\\n`;\r\n functionString += ` const float FINAL_NORMALIZATION = 37.837227241611314102871574478976;\\r\\n`;\r\n functionString += ` vec4 kernel_weights = v1234_x * v1234_x + v1234_y * v1234_y + v1234_z * v1234_z;\\r\\n`;\r\n functionString += ` kernel_weights = max(0.5 - kernel_weights, 0.0);\\r\\n`;\r\n functionString += ` kernel_weights = kernel_weights*kernel_weights*kernel_weights;\\r\\n`;\r\n functionString += ` return dot( kernel_weights, grad_results ) * FINAL_NORMALIZATION;\\r\\n`;\r\n functionString += `}\\r\\n`;\r\n\r\n state._emitFunction('SimplexPerlin3D', functionString, '// SimplexPerlin3D');\r\n state.compilationString += this._declareOutput(this._outputs[0], state) + ` = SimplexPerlin3D(${this.seed.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.SimplexPerlin3DBlock\", SimplexPerlin3DBlock);"]}
@@ -71,7 +71,7 @@ var SmoothStepBlock = /** @class */ (function (_super) {
71
71
  SmoothStepBlock.prototype._buildBlock = function (state) {
72
72
  _super.prototype._buildBlock.call(this, state);
73
73
  var output = this._outputs[0];
74
- state.compilationString += this._declareOutput(output, state) + (" = smoothstep(" + this.edge0.associatedVariableName + ", " + this.edge1.associatedVariableName + ", " + this.value.associatedVariableName + ");\r\n");
74
+ state.compilationString += this._declareOutput(output, state) + " = smoothstep(".concat(this.edge0.associatedVariableName, ", ").concat(this.edge1.associatedVariableName, ", ").concat(this.value.associatedVariableName, ");\r\n");
75
75
  return this;
76
76
  };
77
77
  return SmoothStepBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"smoothStepBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/smoothStepBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAqC,mCAAiB;IAClD;;;OAGG;IACH,yBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAQhD;QANG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACzE,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACzE,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;IAC7D,CAAC;IAED;;;OAGG;IACI,sCAAY,GAAnB;QACI,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,mCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,qCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAG,mBAAiB,IAAI,CAAC,KAAK,CAAC,sBAAsB,UAAK,IAAI,CAAC,KAAK,CAAC,sBAAsB,UAAK,IAAI,CAAC,KAAK,CAAC,sBAAsB,WAAQ,CAAA,CAAC;QAEvM,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,sBAAC;AAAD,CAAC,AA7DD,CAAqC,iBAAiB,GA6DrD;;AAED,aAAa,CAAC,yBAAyB,EAAE,eAAe,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to smooth step a value\r\n */\r\nexport class SmoothStepBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new SmoothStepBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"edge0\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerInput(\"edge1\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"SmoothStepBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value operand input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the first edge operand input component\r\n */\r\n public get edge0(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the second edge operand input component\r\n */\r\n public get edge1(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = smoothstep(${this.edge0.associatedVariableName}, ${this.edge1.associatedVariableName}, ${this.value.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.SmoothStepBlock\", SmoothStepBlock);"]}
1
+ {"version":3,"file":"smoothStepBlock.js","sourceRoot":"","sources":["../../../../../sourceES6/core/Materials/Node/Blocks/smoothStepBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAqC,mCAAiB;IAClD;;;OAGG;IACH,yBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAQhD;QANG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACzE,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,KAAK,CAAC,CAAC;QACzE,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;IAC7D,CAAC;IAED;;;OAGG;IACI,sCAAY,GAAnB;QACI,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,kCAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,mCAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAES,qCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,wBAAiB,IAAI,CAAC,KAAK,CAAC,sBAAsB,eAAK,IAAI,CAAC,KAAK,CAAC,sBAAsB,eAAK,IAAI,CAAC,KAAK,CAAC,sBAAsB,WAAQ,CAAC;QAEvM,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,sBAAC;AAAD,CAAC,AA7DD,CAAqC,iBAAiB,GA6DrD;;AAED,aAAa,CAAC,yBAAyB,EAAE,eAAe,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from '../nodeMaterialBlock';\r\nimport { NodeMaterialBlockConnectionPointTypes } from '../Enums/nodeMaterialBlockConnectionPointTypes';\r\nimport { NodeMaterialBuildState } from '../nodeMaterialBuildState';\r\nimport { NodeMaterialConnectionPoint } from '../nodeMaterialBlockConnectionPoint';\r\nimport { NodeMaterialBlockTargets } from '../Enums/nodeMaterialBlockTargets';\r\nimport { RegisterClass } from '../../../Misc/typeStore';\r\n/**\r\n * Block used to smooth step a value\r\n */\r\nexport class SmoothStepBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new SmoothStepBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"value\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerInput(\"edge0\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerInput(\"edge1\", NodeMaterialBlockConnectionPointTypes.Float);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"SmoothStepBlock\";\r\n }\r\n\r\n /**\r\n * Gets the value operand input component\r\n */\r\n public get value(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the first edge operand input component\r\n */\r\n public get edge0(): NodeMaterialConnectionPoint {\r\n return this._inputs[1];\r\n }\r\n\r\n /**\r\n * Gets the second edge operand input component\r\n */\r\n public get edge1(): NodeMaterialConnectionPoint {\r\n return this._inputs[2];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n let output = this._outputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = smoothstep(${this.edge0.associatedVariableName}, ${this.edge1.associatedVariableName}, ${this.value.associatedVariableName});\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.SmoothStepBlock\", SmoothStepBlock);"]}
@@ -59,7 +59,7 @@ var StepBlock = /** @class */ (function (_super) {
59
59
  StepBlock.prototype._buildBlock = function (state) {
60
60
  _super.prototype._buildBlock.call(this, state);
61
61
  var output = this._outputs[0];
62
- state.compilationString += this._declareOutput(output, state) + (" = step(" + this.edge.associatedVariableName + ", " + this.value.associatedVariableName + ");\r\n");
62
+ state.compilationString += this._declareOutput(output, state) + " = step(".concat(this.edge.associatedVariableName, ", ").concat(this.value.associatedVariableName, ");\r\n");
63
63
  return this;
64
64
  };
65
65
  return StepBlock;