@babylonjs/core 5.0.0-beta.4 → 5.0.0-beta.5

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 (431) hide show
  1. package/Audio/sound.js +3 -1
  2. package/Audio/sound.js.map +1 -1
  3. package/Behaviors/Meshes/baseSixDofDragBehavior.js +29 -26
  4. package/Behaviors/Meshes/baseSixDofDragBehavior.js.map +1 -1
  5. package/Behaviors/Meshes/pointerDragBehavior.js +2 -0
  6. package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
  7. package/Bones/bone.d.ts +2 -1
  8. package/Bones/bone.js +28 -18
  9. package/Bones/bone.js.map +1 -1
  10. package/Bones/skeleton.js +3 -3
  11. package/Bones/skeleton.js.map +1 -1
  12. package/Buffers/buffer.js +2 -2
  13. package/Buffers/buffer.js.map +1 -1
  14. package/Cameras/Inputs/freeCameraTouchInput.js +2 -4
  15. package/Cameras/Inputs/freeCameraTouchInput.js.map +1 -1
  16. package/Cameras/camera.js +1 -1
  17. package/Cameras/camera.js.map +1 -1
  18. package/Compute/computeEffect.js +2 -2
  19. package/Compute/computeEffect.js.map +1 -1
  20. package/Debug/debugLayer.js +1 -1
  21. package/Debug/debugLayer.js.map +1 -1
  22. package/DeviceInput/Helpers/eventFactory.js +1 -1
  23. package/DeviceInput/Helpers/eventFactory.js.map +1 -1
  24. package/DeviceInput/InputDevices/deviceEnums.d.ts +52 -1
  25. package/DeviceInput/InputDevices/deviceEnums.js +52 -0
  26. package/DeviceInput/InputDevices/deviceEnums.js.map +1 -1
  27. package/DeviceInput/InputDevices/deviceTypes.d.ts +2 -2
  28. package/DeviceInput/InputDevices/deviceTypes.js.map +1 -1
  29. package/DeviceInput/InputDevices/internalDeviceSourceManager.js +1 -0
  30. package/DeviceInput/InputDevices/internalDeviceSourceManager.js.map +1 -1
  31. package/DeviceInput/InputDevices/webDeviceInputSystem.js +22 -18
  32. package/DeviceInput/InputDevices/webDeviceInputSystem.js.map +1 -1
  33. package/Engines/Extensions/engine.cubeTexture.js +1 -1
  34. package/Engines/Extensions/engine.cubeTexture.js.map +1 -1
  35. package/Engines/Extensions/engine.multiview.d.ts +5 -0
  36. package/Engines/Extensions/engine.multiview.js +4 -1
  37. package/Engines/Extensions/engine.multiview.js.map +1 -1
  38. package/Engines/Native/nativeInterfaces.d.ts +1 -0
  39. package/Engines/Native/nativeInterfaces.js.map +1 -1
  40. package/Engines/Processors/Expressions/shaderDefineExpression.js +1 -1
  41. package/Engines/Processors/Expressions/shaderDefineExpression.js.map +1 -1
  42. package/Engines/Processors/shaderCodeInliner.js +13 -13
  43. package/Engines/Processors/shaderCodeInliner.js.map +1 -1
  44. package/Engines/WebGPU/webgpuCacheBindGroups.js +9 -9
  45. package/Engines/WebGPU/webgpuCacheBindGroups.js.map +1 -1
  46. package/Engines/WebGPU/webgpuCacheRenderPipeline.js +1 -1
  47. package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
  48. package/Engines/WebGPU/webgpuComputeContext.js +1 -1
  49. package/Engines/WebGPU/webgpuComputeContext.js.map +1 -1
  50. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +13 -13
  51. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
  52. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +30 -30
  53. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  54. package/Engines/WebGPU/webgpuTextureHelper.js +4 -4
  55. package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
  56. package/Engines/engine.d.ts +1 -1
  57. package/Engines/engine.js +1 -1
  58. package/Engines/engine.js.map +1 -1
  59. package/Engines/nativeEngine.d.ts +1 -0
  60. package/Engines/nativeEngine.js +36 -11
  61. package/Engines/nativeEngine.js.map +1 -1
  62. package/Engines/nullEngine.js +1 -1
  63. package/Engines/nullEngine.js.map +1 -1
  64. package/Engines/thinEngine.js +8 -8
  65. package/Engines/thinEngine.js.map +1 -1
  66. package/Engines/webgpuEngine.js +4 -4
  67. package/Engines/webgpuEngine.js.map +1 -1
  68. package/Gamepads/Controllers/daydreamController.js +1 -1
  69. package/Gamepads/Controllers/daydreamController.js.map +1 -1
  70. package/Gamepads/gamepadManager.js +1 -1
  71. package/Gamepads/gamepadManager.js.map +1 -1
  72. package/Gizmos/gizmoManager.d.ts +2 -0
  73. package/Gizmos/gizmoManager.js +28 -24
  74. package/Gizmos/gizmoManager.js.map +1 -1
  75. package/Instrumentation/sceneInstrumentation.js +2 -2
  76. package/Instrumentation/sceneInstrumentation.js.map +1 -1
  77. package/Layers/layer.d.ts +2 -2
  78. package/Layers/layer.js.map +1 -1
  79. package/Lights/Shadows/cascadedShadowGenerator.js +2 -2
  80. package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
  81. package/Lights/Shadows/shadowGenerator.js +2 -2
  82. package/Lights/Shadows/shadowGenerator.js.map +1 -1
  83. package/Loading/Plugins/babylonFileLoader.js +78 -27
  84. package/Loading/Plugins/babylonFileLoader.js.map +1 -1
  85. package/Loading/loadingScreen.js +8 -8
  86. package/Loading/loadingScreen.js.map +1 -1
  87. package/Loading/sceneLoader.js +3 -3
  88. package/Loading/sceneLoader.js.map +1 -1
  89. package/Materials/Node/Blocks/Dual/clipPlanesBlock.d.ts +37 -0
  90. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js +117 -0
  91. package/Materials/Node/Blocks/Dual/clipPlanesBlock.js.map +1 -0
  92. package/Materials/Node/Blocks/Dual/currentScreenBlock.js +12 -12
  93. package/Materials/Node/Blocks/Dual/currentScreenBlock.js.map +1 -1
  94. package/Materials/Node/Blocks/Dual/fogBlock.js +5 -5
  95. package/Materials/Node/Blocks/Dual/fogBlock.js.map +1 -1
  96. package/Materials/Node/Blocks/Dual/imageSourceBlock.js +11 -11
  97. package/Materials/Node/Blocks/Dual/imageSourceBlock.js.map +1 -1
  98. package/Materials/Node/Blocks/Dual/index.d.ts +1 -0
  99. package/Materials/Node/Blocks/Dual/index.js +1 -0
  100. package/Materials/Node/Blocks/Dual/index.js.map +1 -1
  101. package/Materials/Node/Blocks/Dual/lightBlock.js +10 -10
  102. package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
  103. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +26 -26
  104. package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
  105. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js +1 -1
  106. package/Materials/Node/Blocks/Dual/reflectionTextureBlock.js.map +1 -1
  107. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +7 -7
  108. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
  109. package/Materials/Node/Blocks/Dual/textureBlock.js +30 -30
  110. package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
  111. package/Materials/Node/Blocks/Fragment/derivativeBlock.js +2 -2
  112. package/Materials/Node/Blocks/Fragment/derivativeBlock.js.map +1 -1
  113. package/Materials/Node/Blocks/Fragment/discardBlock.js +1 -1
  114. package/Materials/Node/Blocks/Fragment/discardBlock.js.map +1 -1
  115. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js +1 -1
  116. package/Materials/Node/Blocks/Fragment/fragCoordBlock.js.map +1 -1
  117. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +10 -10
  118. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
  119. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js +7 -7
  120. package/Materials/Node/Blocks/Fragment/imageProcessingBlock.js.map +1 -1
  121. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +12 -12
  122. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  123. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js +1 -1
  124. package/Materials/Node/Blocks/Fragment/screenSizeBlock.js.map +1 -1
  125. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js +7 -7
  126. package/Materials/Node/Blocks/Fragment/screenSpaceBlock.js.map +1 -1
  127. package/Materials/Node/Blocks/Fragment/twirlBlock.js +4 -4
  128. package/Materials/Node/Blocks/Fragment/twirlBlock.js.map +1 -1
  129. package/Materials/Node/Blocks/Input/inputBlock.d.ts +2 -1
  130. package/Materials/Node/Blocks/Input/inputBlock.js +29 -24
  131. package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
  132. package/Materials/Node/Blocks/PBR/anisotropyBlock.js +5 -5
  133. package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
  134. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +5 -5
  135. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  136. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +33 -33
  137. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  138. package/Materials/Node/Blocks/PBR/reflectionBlock.js +11 -11
  139. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  140. package/Materials/Node/Blocks/PBR/refractionBlock.js +11 -11
  141. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  142. package/Materials/Node/Blocks/PBR/sheenBlock.js +3 -3
  143. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  144. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js +1 -1
  145. package/Materials/Node/Blocks/PBR/subSurfaceBlock.js.map +1 -1
  146. package/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock.js +1 -1
  147. package/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock.js.map +1 -1
  148. package/Materials/Node/Blocks/Particle/particleRampGradientBlock.js +1 -1
  149. package/Materials/Node/Blocks/Particle/particleRampGradientBlock.js.map +1 -1
  150. package/Materials/Node/Blocks/Particle/particleTextureBlock.js +7 -7
  151. package/Materials/Node/Blocks/Particle/particleTextureBlock.js.map +1 -1
  152. package/Materials/Node/Blocks/Vertex/bonesBlock.js +3 -3
  153. package/Materials/Node/Blocks/Vertex/bonesBlock.js.map +1 -1
  154. package/Materials/Node/Blocks/Vertex/instancesBlock.js +3 -3
  155. package/Materials/Node/Blocks/Vertex/instancesBlock.js.map +1 -1
  156. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js +5 -5
  157. package/Materials/Node/Blocks/Vertex/lightInformationBlock.js.map +1 -1
  158. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +16 -16
  159. package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
  160. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js +1 -1
  161. package/Materials/Node/Blocks/Vertex/vertexOutputBlock.js.map +1 -1
  162. package/Materials/Node/Blocks/addBlock.js +1 -1
  163. package/Materials/Node/Blocks/addBlock.js.map +1 -1
  164. package/Materials/Node/Blocks/arcTan2Block.js +1 -1
  165. package/Materials/Node/Blocks/arcTan2Block.js.map +1 -1
  166. package/Materials/Node/Blocks/clampBlock.js +3 -3
  167. package/Materials/Node/Blocks/clampBlock.js.map +1 -1
  168. package/Materials/Node/Blocks/cloudBlock.js +7 -7
  169. package/Materials/Node/Blocks/cloudBlock.js.map +1 -1
  170. package/Materials/Node/Blocks/colorMergerBlock.js +8 -8
  171. package/Materials/Node/Blocks/colorMergerBlock.js.map +1 -1
  172. package/Materials/Node/Blocks/colorSplitterBlock.js +5 -5
  173. package/Materials/Node/Blocks/colorSplitterBlock.js.map +1 -1
  174. package/Materials/Node/Blocks/conditionalBlock.js +10 -10
  175. package/Materials/Node/Blocks/conditionalBlock.js.map +1 -1
  176. package/Materials/Node/Blocks/crossBlock.js +1 -1
  177. package/Materials/Node/Blocks/crossBlock.js.map +1 -1
  178. package/Materials/Node/Blocks/customBlock.js +1 -1
  179. package/Materials/Node/Blocks/customBlock.js.map +1 -1
  180. package/Materials/Node/Blocks/desaturateBlock.js +4 -4
  181. package/Materials/Node/Blocks/desaturateBlock.js.map +1 -1
  182. package/Materials/Node/Blocks/distanceBlock.js +1 -1
  183. package/Materials/Node/Blocks/distanceBlock.js.map +1 -1
  184. package/Materials/Node/Blocks/divideBlock.js +1 -1
  185. package/Materials/Node/Blocks/divideBlock.js.map +1 -1
  186. package/Materials/Node/Blocks/dotBlock.js +1 -1
  187. package/Materials/Node/Blocks/dotBlock.js.map +1 -1
  188. package/Materials/Node/Blocks/elbowBlock.d.ts +27 -0
  189. package/Materials/Node/Blocks/elbowBlock.js +60 -0
  190. package/Materials/Node/Blocks/elbowBlock.js.map +1 -0
  191. package/Materials/Node/Blocks/fresnelBlock.js +2 -2
  192. package/Materials/Node/Blocks/fresnelBlock.js.map +1 -1
  193. package/Materials/Node/Blocks/gradientBlock.js +8 -8
  194. package/Materials/Node/Blocks/gradientBlock.js.map +1 -1
  195. package/Materials/Node/Blocks/index.d.ts +1 -0
  196. package/Materials/Node/Blocks/index.js +1 -0
  197. package/Materials/Node/Blocks/index.js.map +1 -1
  198. package/Materials/Node/Blocks/lengthBlock.js +1 -1
  199. package/Materials/Node/Blocks/lengthBlock.js.map +1 -1
  200. package/Materials/Node/Blocks/lerpBlock.js +1 -1
  201. package/Materials/Node/Blocks/lerpBlock.js.map +1 -1
  202. package/Materials/Node/Blocks/matrixBuilderBlock.js +1 -1
  203. package/Materials/Node/Blocks/matrixBuilderBlock.js.map +1 -1
  204. package/Materials/Node/Blocks/maxBlock.js +1 -1
  205. package/Materials/Node/Blocks/maxBlock.js.map +1 -1
  206. package/Materials/Node/Blocks/minBlock.js +1 -1
  207. package/Materials/Node/Blocks/minBlock.js.map +1 -1
  208. package/Materials/Node/Blocks/modBlock.js +1 -1
  209. package/Materials/Node/Blocks/modBlock.js.map +1 -1
  210. package/Materials/Node/Blocks/multiplyBlock.js +1 -1
  211. package/Materials/Node/Blocks/multiplyBlock.js.map +1 -1
  212. package/Materials/Node/Blocks/nLerpBlock.js +1 -1
  213. package/Materials/Node/Blocks/nLerpBlock.js.map +1 -1
  214. package/Materials/Node/Blocks/negateBlock.js +1 -1
  215. package/Materials/Node/Blocks/negateBlock.js.map +1 -1
  216. package/Materials/Node/Blocks/normalBlendBlock.js +5 -5
  217. package/Materials/Node/Blocks/normalBlendBlock.js.map +1 -1
  218. package/Materials/Node/Blocks/normalizeBlock.js +1 -1
  219. package/Materials/Node/Blocks/normalizeBlock.js.map +1 -1
  220. package/Materials/Node/Blocks/oneMinusBlock.js +1 -1
  221. package/Materials/Node/Blocks/oneMinusBlock.js.map +1 -1
  222. package/Materials/Node/Blocks/posterizeBlock.js +1 -1
  223. package/Materials/Node/Blocks/posterizeBlock.js.map +1 -1
  224. package/Materials/Node/Blocks/powBlock.js +1 -1
  225. package/Materials/Node/Blocks/powBlock.js.map +1 -1
  226. package/Materials/Node/Blocks/randomNumberBlock.js +2 -2
  227. package/Materials/Node/Blocks/randomNumberBlock.js.map +1 -1
  228. package/Materials/Node/Blocks/reciprocalBlock.js +1 -1
  229. package/Materials/Node/Blocks/reciprocalBlock.js.map +1 -1
  230. package/Materials/Node/Blocks/reflectBlock.js +1 -1
  231. package/Materials/Node/Blocks/reflectBlock.js.map +1 -1
  232. package/Materials/Node/Blocks/refractBlock.js +1 -1
  233. package/Materials/Node/Blocks/refractBlock.js.map +1 -1
  234. package/Materials/Node/Blocks/remapBlock.js +3 -3
  235. package/Materials/Node/Blocks/remapBlock.js.map +1 -1
  236. package/Materials/Node/Blocks/replaceColorBlock.js +3 -3
  237. package/Materials/Node/Blocks/replaceColorBlock.js.map +1 -1
  238. package/Materials/Node/Blocks/rotate2dBlock.js +1 -1
  239. package/Materials/Node/Blocks/rotate2dBlock.js.map +1 -1
  240. package/Materials/Node/Blocks/scaleBlock.js +1 -1
  241. package/Materials/Node/Blocks/scaleBlock.js.map +1 -1
  242. package/Materials/Node/Blocks/simplexPerlin3DBlock.js +1 -1
  243. package/Materials/Node/Blocks/simplexPerlin3DBlock.js.map +1 -1
  244. package/Materials/Node/Blocks/smoothStepBlock.js +1 -1
  245. package/Materials/Node/Blocks/smoothStepBlock.js.map +1 -1
  246. package/Materials/Node/Blocks/stepBlock.js +1 -1
  247. package/Materials/Node/Blocks/stepBlock.js.map +1 -1
  248. package/Materials/Node/Blocks/subtractBlock.js +1 -1
  249. package/Materials/Node/Blocks/subtractBlock.js.map +1 -1
  250. package/Materials/Node/Blocks/transformBlock.js +13 -13
  251. package/Materials/Node/Blocks/transformBlock.js.map +1 -1
  252. package/Materials/Node/Blocks/trigonometryBlock.js +2 -2
  253. package/Materials/Node/Blocks/trigonometryBlock.js.map +1 -1
  254. package/Materials/Node/Blocks/vectorMergerBlock.js +22 -22
  255. package/Materials/Node/Blocks/vectorMergerBlock.js.map +1 -1
  256. package/Materials/Node/Blocks/vectorSplitterBlock.js +8 -8
  257. package/Materials/Node/Blocks/vectorSplitterBlock.js.map +1 -1
  258. package/Materials/Node/Blocks/viewDirectionBlock.js +1 -1
  259. package/Materials/Node/Blocks/viewDirectionBlock.js.map +1 -1
  260. package/Materials/Node/Blocks/voronoiNoiseBlock.js +5 -5
  261. package/Materials/Node/Blocks/voronoiNoiseBlock.js.map +1 -1
  262. package/Materials/Node/Blocks/waveBlock.js +3 -3
  263. package/Materials/Node/Blocks/waveBlock.js.map +1 -1
  264. package/Materials/Node/Blocks/worleyNoise3DBlock.js +5 -5
  265. package/Materials/Node/Blocks/worleyNoise3DBlock.js.map +1 -1
  266. package/Materials/Node/Enums/nodeMaterialSystemValues.d.ts +3 -1
  267. package/Materials/Node/Enums/nodeMaterialSystemValues.js +2 -0
  268. package/Materials/Node/Enums/nodeMaterialSystemValues.js.map +1 -1
  269. package/Materials/Node/nodeMaterial.d.ts +4 -0
  270. package/Materials/Node/nodeMaterial.js +20 -10
  271. package/Materials/Node/nodeMaterial.js.map +1 -1
  272. package/Materials/Node/nodeMaterialBlock.js +12 -12
  273. package/Materials/Node/nodeMaterialBlock.js.map +1 -1
  274. package/Materials/Node/nodeMaterialBuildState.js +24 -24
  275. package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
  276. package/Materials/Node/nodeMaterialBuildStateSharedData.js +1 -1
  277. package/Materials/Node/nodeMaterialBuildStateSharedData.js.map +1 -1
  278. package/Materials/PBR/pbrBaseMaterial.js +2 -2
  279. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  280. package/Materials/PBR/pbrMaterial.js +1 -2
  281. package/Materials/PBR/pbrMaterial.js.map +1 -1
  282. package/Materials/Textures/Loaders/ktxTextureLoader.js +1 -1
  283. package/Materials/Textures/Loaders/ktxTextureLoader.js.map +1 -1
  284. package/Materials/Textures/MultiviewRenderTarget.d.ts +1 -0
  285. package/Materials/Textures/MultiviewRenderTarget.js +10 -2
  286. package/Materials/Textures/MultiviewRenderTarget.js.map +1 -1
  287. package/Materials/Textures/Procedurals/proceduralTexture.js +1 -1
  288. package/Materials/Textures/Procedurals/proceduralTexture.js.map +1 -1
  289. package/Materials/Textures/equiRectangularCubeTexture.js +1 -1
  290. package/Materials/Textures/equiRectangularCubeTexture.js.map +1 -1
  291. package/Materials/Textures/mirrorTexture.js +2 -2
  292. package/Materials/Textures/mirrorTexture.js.map +1 -1
  293. package/Materials/Textures/renderTargetTexture.js +2 -2
  294. package/Materials/Textures/renderTargetTexture.js.map +1 -1
  295. package/Materials/Textures/videoTexture.js +1 -0
  296. package/Materials/Textures/videoTexture.js.map +1 -1
  297. package/Materials/effect.js +3 -3
  298. package/Materials/effect.js.map +1 -1
  299. package/Materials/material.d.ts +2 -0
  300. package/Materials/material.js +4 -1
  301. package/Materials/material.js.map +1 -1
  302. package/Materials/materialHelper.js +1 -1
  303. package/Materials/materialHelper.js.map +1 -1
  304. package/Materials/materialPluginManager.js +3 -3
  305. package/Materials/materialPluginManager.js.map +1 -1
  306. package/Materials/multiMaterial.d.ts +2 -0
  307. package/Materials/multiMaterial.js +12 -10
  308. package/Materials/multiMaterial.js.map +1 -1
  309. package/Materials/shaderMaterial.js +1 -1
  310. package/Materials/shaderMaterial.js.map +1 -1
  311. package/Materials/shadowDepthWrapper.js +1 -1
  312. package/Materials/shadowDepthWrapper.js.map +1 -1
  313. package/Materials/standardMaterial.d.ts +0 -5
  314. package/Materials/standardMaterial.js +1 -10
  315. package/Materials/standardMaterial.js.map +1 -1
  316. package/Maths/math.size.js +1 -1
  317. package/Maths/math.size.js.map +1 -1
  318. package/Maths/math.vector.js +4 -4
  319. package/Maths/math.vector.js.map +1 -1
  320. package/Meshes/Builders/cylinderBuilder.d.ts +1 -1
  321. package/Meshes/Builders/cylinderBuilder.js +1 -1
  322. package/Meshes/Builders/cylinderBuilder.js.map +1 -1
  323. package/Meshes/Builders/linesBuilder.js.map +1 -1
  324. package/Meshes/Compression/dracoCompression.d.ts +3 -0
  325. package/Meshes/Compression/dracoCompression.js +23 -7
  326. package/Meshes/Compression/dracoCompression.js.map +1 -1
  327. package/Meshes/abstractMesh.d.ts +2 -0
  328. package/Meshes/abstractMesh.js +2 -0
  329. package/Meshes/abstractMesh.js.map +1 -1
  330. package/Meshes/mesh.js +8 -6
  331. package/Meshes/mesh.js.map +1 -1
  332. package/Meshes/mesh.lts.d.ts +1 -1
  333. package/Meshes/mesh.lts.js.map +1 -1
  334. package/Meshes/mesh.vertexData.d.ts +1 -1
  335. package/Meshes/mesh.vertexData.js +2 -2
  336. package/Meshes/mesh.vertexData.js.map +1 -1
  337. package/Misc/PerformanceViewer/performanceViewerCollector.js +6 -6
  338. package/Misc/PerformanceViewer/performanceViewerCollector.js.map +1 -1
  339. package/Misc/assetsManager.d.ts +1 -0
  340. package/Misc/assetsManager.js +13 -0
  341. package/Misc/assetsManager.js.map +1 -1
  342. package/Misc/basis.js +1 -1
  343. package/Misc/basis.js.map +1 -1
  344. package/Misc/devTools.js +1 -1
  345. package/Misc/devTools.js.map +1 -1
  346. package/Misc/environmentTextureTools.js +2 -2
  347. package/Misc/environmentTextureTools.js.map +1 -1
  348. package/Misc/fileTools.js +3 -3
  349. package/Misc/fileTools.js.map +1 -1
  350. package/Misc/khronosTextureContainer2.js +4 -3
  351. package/Misc/khronosTextureContainer2.js.map +1 -1
  352. package/Misc/reflector.js +6 -6
  353. package/Misc/reflector.js.map +1 -1
  354. package/Misc/tools.js +15 -13
  355. package/Misc/tools.js.map +1 -1
  356. package/Misc/uniqueIdGenerator.js +1 -1
  357. package/Misc/uniqueIdGenerator.js.map +1 -1
  358. package/Offline/database.js +1 -1
  359. package/Offline/database.js.map +1 -1
  360. package/Particles/baseParticleSystem.d.ts +4 -1
  361. package/Particles/baseParticleSystem.js +20 -5
  362. package/Particles/baseParticleSystem.js.map +1 -1
  363. package/Particles/particleHelper.js +2 -2
  364. package/Particles/particleHelper.js.map +1 -1
  365. package/Physics/Plugins/ammoJSPlugin.js +4 -4
  366. package/Physics/Plugins/ammoJSPlugin.js.map +1 -1
  367. package/Physics/physicsImpostor.d.ts +2 -2
  368. package/Physics/physicsImpostor.js.map +1 -1
  369. package/PostProcesses/blurPostProcess.js +5 -5
  370. package/PostProcesses/blurPostProcess.js.map +1 -1
  371. package/PostProcesses/imageProcessingPostProcess.js +1 -1
  372. package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
  373. package/PostProcesses/postProcess.js +1 -1
  374. package/PostProcesses/postProcess.js.map +1 -1
  375. package/PostProcesses/postProcessManager.js +2 -2
  376. package/PostProcesses/postProcessManager.js.map +1 -1
  377. package/Probes/reflectionProbe.js +2 -2
  378. package/Probes/reflectionProbe.js.map +1 -1
  379. package/Rendering/depthPeelingRenderer.js +3 -3
  380. package/Rendering/depthPeelingRenderer.js.map +1 -1
  381. package/Rendering/geometryBufferRenderer.js +8 -8
  382. package/Rendering/geometryBufferRenderer.js.map +1 -1
  383. package/Rendering/outlineRenderer.js +1 -1
  384. package/Rendering/outlineRenderer.js.map +1 -1
  385. package/Rendering/utilityLayerRenderer.js +4 -0
  386. package/Rendering/utilityLayerRenderer.js.map +1 -1
  387. package/Shaders/ShadersInclude/prePassVertex.js +1 -1
  388. package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
  389. package/ShadersWGSL/gpuUpdateParticles.compute.js +1 -1
  390. package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
  391. package/Sprites/spriteManager.js +5 -6
  392. package/Sprites/spriteManager.js.map +1 -1
  393. package/Sprites/spriteMap.js +2 -2
  394. package/Sprites/spriteMap.js.map +1 -1
  395. package/Sprites/spriteRenderer.js +1 -1
  396. package/Sprites/spriteRenderer.js.map +1 -1
  397. package/XR/features/WebXRDOMOverlay.js +1 -1
  398. package/XR/features/WebXRDOMOverlay.js.map +1 -1
  399. package/XR/features/WebXRHandTracking.js +27 -27
  400. package/XR/features/WebXRHandTracking.js.map +1 -1
  401. package/XR/features/WebXRImageTracking.js +2 -2
  402. package/XR/features/WebXRImageTracking.js.map +1 -1
  403. package/XR/features/WebXRLayers.d.ts +28 -5
  404. package/XR/features/WebXRLayers.js +54 -20
  405. package/XR/features/WebXRLayers.js.map +1 -1
  406. package/XR/features/WebXRNearInteraction.d.ts +35 -3
  407. package/XR/features/WebXRNearInteraction.js +201 -40
  408. package/XR/features/WebXRNearInteraction.js.map +1 -1
  409. package/XR/motionController/webXRAbstractMotionController.js +1 -1
  410. package/XR/motionController/webXRAbstractMotionController.js.map +1 -1
  411. package/XR/motionController/webXRMotionControllerManager.js +2 -2
  412. package/XR/motionController/webXRMotionControllerManager.js.map +1 -1
  413. package/XR/motionController/webXRProfiledMotionController.js +1 -1
  414. package/XR/motionController/webXRProfiledMotionController.js.map +1 -1
  415. package/XR/webXRCamera.js +17 -4
  416. package/XR/webXRCamera.js.map +1 -1
  417. package/XR/webXREnterExitUI.js +2 -2
  418. package/XR/webXREnterExitUI.js.map +1 -1
  419. package/XR/webXRFeaturesManager.js +6 -6
  420. package/XR/webXRFeaturesManager.js.map +1 -1
  421. package/XR/webXRInputSource.js +3 -3
  422. package/XR/webXRInputSource.js.map +1 -1
  423. package/XR/webXRRenderTargetTextureProvider.d.ts +3 -2
  424. package/XR/webXRRenderTargetTextureProvider.js +37 -18
  425. package/XR/webXRRenderTargetTextureProvider.js.map +1 -1
  426. package/node.d.ts +1 -1
  427. package/node.js.map +1 -1
  428. package/package.json +7 -1
  429. package/scene.d.ts +3 -1
  430. package/scene.js +28 -4
  431. package/scene.js.map +1 -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;