@babylonjs/materials 5.0.0-rc.7 → 5.0.1

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 (187) hide show
  1. package/cell/cell.fragment.d.ts +17 -17
  2. package/cell/cell.fragment.js +20 -20
  3. package/cell/cell.vertex.d.ts +18 -18
  4. package/cell/cell.vertex.js +21 -21
  5. package/cell/cellMaterial.d.ts +37 -37
  6. package/cell/cellMaterial.js +304 -304
  7. package/cell/cellMaterial.js.map +1 -1
  8. package/cell/index.d.ts +1 -1
  9. package/cell/index.js +1 -1
  10. package/custom/customMaterial.d.ts +69 -69
  11. package/custom/customMaterial.js +216 -216
  12. package/custom/customMaterial.js.map +1 -1
  13. package/custom/index.d.ts +2 -2
  14. package/custom/index.js +2 -2
  15. package/custom/pbrCustomMaterial.d.ts +71 -71
  16. package/custom/pbrCustomMaterial.js +241 -241
  17. package/custom/pbrCustomMaterial.js.map +1 -1
  18. package/fire/fire.fragment.d.ts +11 -11
  19. package/fire/fire.fragment.js +14 -14
  20. package/fire/fire.vertex.d.ts +15 -15
  21. package/fire/fire.vertex.js +18 -18
  22. package/fire/fireMaterial.d.ts +38 -38
  23. package/fire/fireMaterial.js +342 -342
  24. package/fire/fireMaterial.js.map +1 -1
  25. package/fire/index.d.ts +1 -1
  26. package/fire/index.js +1 -1
  27. package/fur/fur.fragment.d.ts +17 -17
  28. package/fur/fur.fragment.js +20 -20
  29. package/fur/fur.vertex.d.ts +18 -18
  30. package/fur/fur.vertex.js +21 -21
  31. package/fur/furMaterial.d.ts +57 -56
  32. package/fur/furMaterial.js +500 -500
  33. package/fur/furMaterial.js.map +1 -1
  34. package/fur/index.d.ts +1 -1
  35. package/fur/index.js +1 -1
  36. package/gradient/gradient.fragment.d.ts +17 -17
  37. package/gradient/gradient.fragment.js +20 -20
  38. package/gradient/gradient.vertex.d.ts +18 -18
  39. package/gradient/gradient.vertex.js +21 -21
  40. package/gradient/gradientMaterial.d.ts +37 -37
  41. package/gradient/gradientMaterial.js +275 -275
  42. package/gradient/gradientMaterial.js.map +1 -1
  43. package/gradient/index.d.ts +1 -1
  44. package/gradient/index.js +1 -1
  45. package/grid/grid.fragment.d.ts +8 -8
  46. package/grid/grid.fragment.js +11 -11
  47. package/grid/grid.vertex.d.ts +9 -9
  48. package/grid/grid.vertex.js +12 -12
  49. package/grid/gridMaterial.d.ts +78 -77
  50. package/grid/gridMaterial.js +276 -276
  51. package/grid/gridMaterial.js.map +1 -1
  52. package/grid/index.d.ts +1 -1
  53. package/grid/index.js +1 -1
  54. package/index.d.ts +15 -15
  55. package/index.js +16 -15
  56. package/index.js.map +1 -1
  57. package/lava/index.d.ts +1 -1
  58. package/lava/index.js +1 -1
  59. package/lava/lava.fragment.d.ts +17 -17
  60. package/lava/lava.fragment.js +20 -20
  61. package/lava/lava.vertex.d.ts +18 -18
  62. package/lava/lava.vertex.js +21 -21
  63. package/lava/lavaMaterial.d.ts +45 -45
  64. package/lava/lavaMaterial.js +394 -394
  65. package/lava/lavaMaterial.js.map +1 -1
  66. package/legacy/legacy-cell.d.ts +1 -1
  67. package/legacy/legacy-cell.js +13 -12
  68. package/legacy/legacy-cell.js.map +1 -1
  69. package/legacy/legacy-custom.d.ts +1 -1
  70. package/legacy/legacy-custom.js +13 -12
  71. package/legacy/legacy-custom.js.map +1 -1
  72. package/legacy/legacy-fire.d.ts +1 -1
  73. package/legacy/legacy-fire.js +13 -12
  74. package/legacy/legacy-fire.js.map +1 -1
  75. package/legacy/legacy-fur.d.ts +1 -1
  76. package/legacy/legacy-fur.js +13 -12
  77. package/legacy/legacy-fur.js.map +1 -1
  78. package/legacy/legacy-gradient.d.ts +1 -1
  79. package/legacy/legacy-gradient.js +13 -12
  80. package/legacy/legacy-gradient.js.map +1 -1
  81. package/legacy/legacy-grid.d.ts +1 -1
  82. package/legacy/legacy-grid.js +13 -12
  83. package/legacy/legacy-grid.js.map +1 -1
  84. package/legacy/legacy-lava.d.ts +1 -1
  85. package/legacy/legacy-lava.js +13 -12
  86. package/legacy/legacy-lava.js.map +1 -1
  87. package/legacy/legacy-mix.d.ts +1 -1
  88. package/legacy/legacy-mix.js +13 -12
  89. package/legacy/legacy-mix.js.map +1 -1
  90. package/legacy/legacy-normal.d.ts +1 -1
  91. package/legacy/legacy-normal.js +13 -12
  92. package/legacy/legacy-normal.js.map +1 -1
  93. package/legacy/legacy-shadowOnly.d.ts +1 -1
  94. package/legacy/legacy-shadowOnly.js +13 -12
  95. package/legacy/legacy-shadowOnly.js.map +1 -1
  96. package/legacy/legacy-simple.d.ts +1 -1
  97. package/legacy/legacy-simple.js +13 -12
  98. package/legacy/legacy-simple.js.map +1 -1
  99. package/legacy/legacy-sky.d.ts +1 -1
  100. package/legacy/legacy-sky.js +13 -12
  101. package/legacy/legacy-sky.js.map +1 -1
  102. package/legacy/legacy-terrain.d.ts +1 -1
  103. package/legacy/legacy-terrain.js +13 -12
  104. package/legacy/legacy-terrain.js.map +1 -1
  105. package/legacy/legacy-triPlanar.d.ts +1 -1
  106. package/legacy/legacy-triPlanar.js +13 -12
  107. package/legacy/legacy-triPlanar.js.map +1 -1
  108. package/legacy/legacy-water.d.ts +1 -1
  109. package/legacy/legacy-water.js +13 -12
  110. package/legacy/legacy-water.js.map +1 -1
  111. package/legacy/legacy.d.ts +1 -1
  112. package/legacy/legacy.js +16 -15
  113. package/legacy/legacy.js.map +1 -1
  114. package/license.md +71 -0
  115. package/mix/index.d.ts +1 -1
  116. package/mix/index.js +1 -1
  117. package/mix/mix.fragment.d.ts +17 -17
  118. package/mix/mix.fragment.js +20 -20
  119. package/mix/mix.vertex.d.ts +18 -18
  120. package/mix/mix.vertex.js +21 -21
  121. package/mix/mixMaterial.d.ts +65 -65
  122. package/mix/mixMaterial.js +510 -510
  123. package/mix/mixMaterial.js.map +1 -1
  124. package/normal/index.d.ts +1 -1
  125. package/normal/index.js +1 -1
  126. package/normal/normal.fragment.d.ts +17 -17
  127. package/normal/normal.fragment.js +20 -20
  128. package/normal/normal.vertex.d.ts +18 -18
  129. package/normal/normal.vertex.js +21 -21
  130. package/normal/normalMaterial.d.ts +36 -36
  131. package/normal/normalMaterial.js +336 -336
  132. package/normal/normalMaterial.js.map +1 -1
  133. package/package.json +24 -5
  134. package/shadowOnly/index.d.ts +1 -1
  135. package/shadowOnly/index.js +1 -1
  136. package/shadowOnly/shadowOnly.fragment.d.ts +16 -16
  137. package/shadowOnly/shadowOnly.fragment.js +19 -19
  138. package/shadowOnly/shadowOnly.vertex.d.ts +18 -18
  139. package/shadowOnly/shadowOnly.vertex.js +21 -21
  140. package/shadowOnly/shadowOnlyMaterial.d.ts +30 -30
  141. package/shadowOnly/shadowOnlyMaterial.js +254 -254
  142. package/shadowOnly/shadowOnlyMaterial.js.map +1 -1
  143. package/simple/index.d.ts +1 -1
  144. package/simple/index.js +1 -1
  145. package/simple/simple.fragment.d.ts +17 -17
  146. package/simple/simple.fragment.js +20 -20
  147. package/simple/simple.vertex.d.ts +18 -18
  148. package/simple/simple.vertex.js +21 -21
  149. package/simple/simpleMaterial.d.ts +35 -35
  150. package/simple/simpleMaterial.js +295 -295
  151. package/simple/simpleMaterial.js.map +1 -1
  152. package/sky/index.d.ts +1 -1
  153. package/sky/index.js +1 -1
  154. package/sky/sky.fragment.d.ts +10 -10
  155. package/sky/sky.fragment.js +13 -13
  156. package/sky/sky.vertex.d.ts +9 -9
  157. package/sky/sky.vertex.js +12 -12
  158. package/sky/skyMaterial.d.ts +147 -146
  159. package/sky/skyMaterial.js +359 -359
  160. package/sky/skyMaterial.js.map +1 -1
  161. package/terrain/index.d.ts +1 -1
  162. package/terrain/index.js +1 -1
  163. package/terrain/terrain.fragment.d.ts +17 -17
  164. package/terrain/terrain.fragment.js +20 -20
  165. package/terrain/terrain.vertex.d.ts +18 -18
  166. package/terrain/terrain.vertex.js +21 -21
  167. package/terrain/terrainMaterial.d.ts +50 -50
  168. package/terrain/terrainMaterial.js +426 -426
  169. package/terrain/terrainMaterial.js.map +1 -1
  170. package/triPlanar/index.d.ts +1 -1
  171. package/triPlanar/index.js +1 -1
  172. package/triPlanar/triPlanarMaterial.d.ts +49 -49
  173. package/triPlanar/triPlanarMaterial.js +403 -403
  174. package/triPlanar/triPlanarMaterial.js.map +1 -1
  175. package/triPlanar/triplanar.fragment.d.ts +17 -17
  176. package/triPlanar/triplanar.fragment.js +20 -20
  177. package/triPlanar/triplanar.vertex.d.ts +18 -18
  178. package/triPlanar/triplanar.vertex.js +21 -21
  179. package/water/index.d.ts +1 -1
  180. package/water/index.js +1 -1
  181. package/water/water.fragment.d.ts +19 -19
  182. package/water/water.fragment.js +22 -22
  183. package/water/water.vertex.d.ts +20 -20
  184. package/water/water.vertex.js +23 -23
  185. package/water/waterMaterial.d.ts +135 -135
  186. package/water/waterMaterial.js +736 -736
  187. package/water/waterMaterial.js.map +1 -1
@@ -1 +1 @@
1
- export * from "./gradientMaterial";
1
+ export * from "./gradientMaterial";
package/gradient/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export * from "./gradientMaterial.js";
1
+ export * from "./gradientMaterial.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1,8 +1,8 @@
1
- import "@babylonjs/core/Shaders/ShadersInclude/fogFragmentDeclaration.js";
2
- import "@babylonjs/core/Shaders/ShadersInclude/fogFragment.js";
3
- import "@babylonjs/core/Shaders/ShadersInclude/imageProcessingCompatibility.js";
4
- /** @hidden */
5
- export declare const gridPixelShader: {
6
- name: string;
7
- shader: string;
8
- };
1
+ import "@babylonjs/core/Shaders/ShadersInclude/fogFragmentDeclaration.js";
2
+ import "@babylonjs/core/Shaders/ShadersInclude/fogFragment.js";
3
+ import "@babylonjs/core/Shaders/ShadersInclude/imageProcessingCompatibility.js";
4
+ /** @hidden */
5
+ export declare const gridPixelShader: {
6
+ name: string;
7
+ shader: string;
8
+ };
@@ -1,12 +1,12 @@
1
- // Do not edit.
2
- import { ShaderStore } from "@babylonjs/core/Engines/shaderStore.js";
3
- import "@babylonjs/core/Shaders/ShadersInclude/fogFragmentDeclaration.js";
4
- import "@babylonjs/core/Shaders/ShadersInclude/fogFragment.js";
5
- import "@babylonjs/core/Shaders/ShadersInclude/imageProcessingCompatibility.js";
6
- var name = "gridPixelShader";
7
- var shader = "#extension GL_OES_standard_derivatives : enable\n#define SQRT2 1.41421356\n#define PI 3.14159\nprecision highp float;\nuniform float visibility;\nuniform vec3 mainColor;\nuniform vec3 lineColor;\nuniform vec4 gridControl;\nuniform vec3 gridOffset;\nvarying vec3 vPosition;\nvarying vec3 vNormal;\n#include<fogFragmentDeclaration>\n#ifdef OPACITY\nvarying vec2 vOpacityUV;\nuniform sampler2D opacitySampler;\nuniform vec2 vOpacityInfos;\n#endif\nfloat getDynamicVisibility(float position) {\nfloat majorGridFrequency=gridControl.y;\nif (floor(position+0.5)==floor(position/majorGridFrequency+0.5)*majorGridFrequency)\n{\nreturn 1.0;\n} \nreturn gridControl.z;\n}\nfloat getAnisotropicAttenuation(float differentialLength) {\nconst float maxNumberOfLines=10.0;\nreturn clamp(1.0/(differentialLength+1.0)-1.0/maxNumberOfLines,0.0,1.0);\n}\nfloat isPointOnLine(float position,float differentialLength) {\nfloat fractionPartOfPosition=position-floor(position+0.5); \nfractionPartOfPosition/=differentialLength; \nfractionPartOfPosition=clamp(fractionPartOfPosition,-1.,1.);\nfloat result=0.5+0.5*cos(fractionPartOfPosition*PI); \nreturn result; \n}\nfloat contributionOnAxis(float position) {\nfloat differentialLength=length(vec2(dFdx(position),dFdy(position)));\ndifferentialLength*=SQRT2; \nfloat result=isPointOnLine(position,differentialLength);\nfloat dynamicVisibility=getDynamicVisibility(position);\nresult*=dynamicVisibility;\nfloat anisotropicAttenuation=getAnisotropicAttenuation(differentialLength);\nresult*=anisotropicAttenuation;\nreturn result;\n}\nfloat normalImpactOnAxis(float x) {\nfloat normalImpact=clamp(1.0-3.0*abs(x*x*x),0.0,1.0);\nreturn normalImpact;\n}\n#define CUSTOM_FRAGMENT_DEFINITIONS\nvoid main(void) {\n#define CUSTOM_FRAGMENT_MAIN_BEGIN\nfloat gridRatio=gridControl.x;\nvec3 gridPos=(vPosition+gridOffset.xyz)/gridRatio;\nfloat x=contributionOnAxis(gridPos.x);\nfloat y=contributionOnAxis(gridPos.y);\nfloat z=contributionOnAxis(gridPos.z);\nvec3 normal=normalize(vNormal);\nx*=normalImpactOnAxis(normal.x);\ny*=normalImpactOnAxis(normal.y);\nz*=normalImpactOnAxis(normal.z);\n#ifdef MAX_LINE \nfloat grid=clamp(max(max(x,y),z),0.,1.);\n#else\nfloat grid=clamp(x+y+z,0.,1.);\n#endif\nvec3 color=mix(mainColor,lineColor,grid);\n#ifdef FOG\n#include<fogFragment>\n#endif\nfloat opacity=1.0;\n#ifdef TRANSPARENT\nopacity=clamp(grid,0.08,gridControl.w*grid);\n#endif \n#ifdef OPACITY\nopacity*=texture2D(opacitySampler,vOpacityUV).a;\n#endif \ngl_FragColor=vec4(color.rgb,opacity*visibility);\n#ifdef TRANSPARENT\n#ifdef PREMULTIPLYALPHA\ngl_FragColor.rgb*=opacity;\n#endif\n#else \n#endif\n#include<imageProcessingCompatibility>\n#define CUSTOM_FRAGMENT_MAIN_END\n}\n";
8
- // Sideeffect
9
- ShaderStore.ShadersStore[name] = shader;
10
- /** @hidden */
11
- export var gridPixelShader = { name: name, shader: shader };
1
+ // Do not edit.
2
+ import { ShaderStore } from "@babylonjs/core/Engines/shaderStore.js";
3
+ import "@babylonjs/core/Shaders/ShadersInclude/fogFragmentDeclaration.js";
4
+ import "@babylonjs/core/Shaders/ShadersInclude/fogFragment.js";
5
+ import "@babylonjs/core/Shaders/ShadersInclude/imageProcessingCompatibility.js";
6
+ var name = "gridPixelShader";
7
+ var shader = "#extension GL_OES_standard_derivatives : enable\n#define SQRT2 1.41421356\n#define PI 3.14159\nprecision highp float;\nuniform float visibility;\nuniform vec3 mainColor;\nuniform vec3 lineColor;\nuniform vec4 gridControl;\nuniform vec3 gridOffset;\nvarying vec3 vPosition;\nvarying vec3 vNormal;\n#include<fogFragmentDeclaration>\n#ifdef OPACITY\nvarying vec2 vOpacityUV;\nuniform sampler2D opacitySampler;\nuniform vec2 vOpacityInfos;\n#endif\nfloat getDynamicVisibility(float position) {\nfloat majorGridFrequency=gridControl.y;\nif (floor(position+0.5)==floor(position/majorGridFrequency+0.5)*majorGridFrequency)\n{\nreturn 1.0;\n} \nreturn gridControl.z;\n}\nfloat getAnisotropicAttenuation(float differentialLength) {\nconst float maxNumberOfLines=10.0;\nreturn clamp(1.0/(differentialLength+1.0)-1.0/maxNumberOfLines,0.0,1.0);\n}\nfloat isPointOnLine(float position,float differentialLength) {\nfloat fractionPartOfPosition=position-floor(position+0.5); \nfractionPartOfPosition/=differentialLength; \nfractionPartOfPosition=clamp(fractionPartOfPosition,-1.,1.);\nfloat result=0.5+0.5*cos(fractionPartOfPosition*PI); \nreturn result; \n}\nfloat contributionOnAxis(float position) {\nfloat differentialLength=length(vec2(dFdx(position),dFdy(position)));\ndifferentialLength*=SQRT2; \nfloat result=isPointOnLine(position,differentialLength);\nfloat dynamicVisibility=getDynamicVisibility(position);\nresult*=dynamicVisibility;\nfloat anisotropicAttenuation=getAnisotropicAttenuation(differentialLength);\nresult*=anisotropicAttenuation;\nreturn result;\n}\nfloat normalImpactOnAxis(float x) {\nfloat normalImpact=clamp(1.0-3.0*abs(x*x*x),0.0,1.0);\nreturn normalImpact;\n}\n#define CUSTOM_FRAGMENT_DEFINITIONS\nvoid main(void) {\n#define CUSTOM_FRAGMENT_MAIN_BEGIN\nfloat gridRatio=gridControl.x;\nvec3 gridPos=(vPosition+gridOffset.xyz)/gridRatio;\nfloat x=contributionOnAxis(gridPos.x);\nfloat y=contributionOnAxis(gridPos.y);\nfloat z=contributionOnAxis(gridPos.z);\nvec3 normal=normalize(vNormal);\nx*=normalImpactOnAxis(normal.x);\ny*=normalImpactOnAxis(normal.y);\nz*=normalImpactOnAxis(normal.z);\n#ifdef MAX_LINE \nfloat grid=clamp(max(max(x,y),z),0.,1.);\n#else\nfloat grid=clamp(x+y+z,0.,1.);\n#endif\nvec3 color=mix(mainColor,lineColor,grid);\n#ifdef FOG\n#include<fogFragment>\n#endif\nfloat opacity=1.0;\n#ifdef TRANSPARENT\nopacity=clamp(grid,0.08,gridControl.w*grid);\n#endif \n#ifdef OPACITY\nopacity*=texture2D(opacitySampler,vOpacityUV).a;\n#endif \ngl_FragColor=vec4(color.rgb,opacity*visibility);\n#ifdef TRANSPARENT\n#ifdef PREMULTIPLYALPHA\ngl_FragColor.rgb*=opacity;\n#endif\n#else \n#endif\n#include<imageProcessingCompatibility>\n#define CUSTOM_FRAGMENT_MAIN_END\n}\n";
8
+ // Sideeffect
9
+ ShaderStore.ShadersStore[name] = shader;
10
+ /** @hidden */
11
+ export var gridPixelShader = { name: name, shader: shader };
12
12
  //# sourceMappingURL=grid.fragment.js.map
@@ -1,9 +1,9 @@
1
- import "@babylonjs/core/Shaders/ShadersInclude/instancesDeclaration.js";
2
- import "@babylonjs/core/Shaders/ShadersInclude/fogVertexDeclaration.js";
3
- import "@babylonjs/core/Shaders/ShadersInclude/instancesVertex.js";
4
- import "@babylonjs/core/Shaders/ShadersInclude/fogVertex.js";
5
- /** @hidden */
6
- export declare const gridVertexShader: {
7
- name: string;
8
- shader: string;
9
- };
1
+ import "@babylonjs/core/Shaders/ShadersInclude/instancesDeclaration.js";
2
+ import "@babylonjs/core/Shaders/ShadersInclude/fogVertexDeclaration.js";
3
+ import "@babylonjs/core/Shaders/ShadersInclude/instancesVertex.js";
4
+ import "@babylonjs/core/Shaders/ShadersInclude/fogVertex.js";
5
+ /** @hidden */
6
+ export declare const gridVertexShader: {
7
+ name: string;
8
+ shader: string;
9
+ };
@@ -1,13 +1,13 @@
1
- // Do not edit.
2
- import { ShaderStore } from "@babylonjs/core/Engines/shaderStore.js";
3
- import "@babylonjs/core/Shaders/ShadersInclude/instancesDeclaration.js";
4
- import "@babylonjs/core/Shaders/ShadersInclude/fogVertexDeclaration.js";
5
- import "@babylonjs/core/Shaders/ShadersInclude/instancesVertex.js";
6
- import "@babylonjs/core/Shaders/ShadersInclude/fogVertex.js";
7
- var name = "gridVertexShader";
8
- var shader = "precision highp float;\nattribute vec3 position;\nattribute vec3 normal;\n#ifdef UV1\nattribute vec2 uv;\n#endif\n#ifdef UV2\nattribute vec2 uv2;\n#endif\n#include<instancesDeclaration>\nuniform mat4 projection;\nuniform mat4 view;\nvarying vec3 vPosition;\nvarying vec3 vNormal;\n#include<fogVertexDeclaration>\n#ifdef OPACITY\nvarying vec2 vOpacityUV;\nuniform mat4 opacityMatrix;\nuniform vec2 vOpacityInfos;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\nvoid main(void) {\n#define CUSTOM_VERTEX_MAIN_BEGIN\n#include<instancesVertex>\nvec4 worldPos=finalWorld*vec4(position,1.0);\n#include<fogVertex>\nvec4 cameraSpacePosition=view*worldPos;\ngl_Position=projection*cameraSpacePosition;\n#ifdef OPACITY\n#ifndef UV1\nvec2 uv=vec2(0.,0.);\n#endif\n#ifndef UV2\nvec2 uv2=vec2(0.,0.);\n#endif\nif (vOpacityInfos.x==0.)\n{\nvOpacityUV=vec2(opacityMatrix*vec4(uv,1.0,0.0));\n}\nelse\n{\nvOpacityUV=vec2(opacityMatrix*vec4(uv2,1.0,0.0));\n}\n#endif \nvPosition=position;\nvNormal=normal;\n#define CUSTOM_VERTEX_MAIN_END\n}";
9
- // Sideeffect
10
- ShaderStore.ShadersStore[name] = shader;
11
- /** @hidden */
12
- export var gridVertexShader = { name: name, shader: shader };
1
+ // Do not edit.
2
+ import { ShaderStore } from "@babylonjs/core/Engines/shaderStore.js";
3
+ import "@babylonjs/core/Shaders/ShadersInclude/instancesDeclaration.js";
4
+ import "@babylonjs/core/Shaders/ShadersInclude/fogVertexDeclaration.js";
5
+ import "@babylonjs/core/Shaders/ShadersInclude/instancesVertex.js";
6
+ import "@babylonjs/core/Shaders/ShadersInclude/fogVertex.js";
7
+ var name = "gridVertexShader";
8
+ var shader = "precision highp float;\nattribute vec3 position;\nattribute vec3 normal;\n#ifdef UV1\nattribute vec2 uv;\n#endif\n#ifdef UV2\nattribute vec2 uv2;\n#endif\n#include<instancesDeclaration>\nuniform mat4 projection;\nuniform mat4 view;\nvarying vec3 vPosition;\nvarying vec3 vNormal;\n#include<fogVertexDeclaration>\n#ifdef OPACITY\nvarying vec2 vOpacityUV;\nuniform mat4 opacityMatrix;\nuniform vec2 vOpacityInfos;\n#endif\n#define CUSTOM_VERTEX_DEFINITIONS\nvoid main(void) {\n#define CUSTOM_VERTEX_MAIN_BEGIN\n#include<instancesVertex>\nvec4 worldPos=finalWorld*vec4(position,1.0);\n#include<fogVertex>\nvec4 cameraSpacePosition=view*worldPos;\ngl_Position=projection*cameraSpacePosition;\n#ifdef OPACITY\n#ifndef UV1\nvec2 uv=vec2(0.,0.);\n#endif\n#ifndef UV2\nvec2 uv2=vec2(0.,0.);\n#endif\nif (vOpacityInfos.x==0.)\n{\nvOpacityUV=vec2(opacityMatrix*vec4(uv,1.0,0.0));\n}\nelse\n{\nvOpacityUV=vec2(opacityMatrix*vec4(uv2,1.0,0.0));\n}\n#endif \nvPosition=position;\nvNormal=normal;\n#define CUSTOM_VERTEX_MAIN_END\n}";
9
+ // Sideeffect
10
+ ShaderStore.ShadersStore[name] = shader;
11
+ /** @hidden */
12
+ export var gridVertexShader = { name: name, shader: shader };
13
13
  //# sourceMappingURL=grid.vertex.js.map
@@ -1,77 +1,78 @@
1
- import { Matrix, Vector3 } from "@babylonjs/core/Maths/math.vector.js";
2
- import { Color3 } from "@babylonjs/core/Maths/math.color.js";
3
- import { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture.js";
4
- import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
5
- import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
6
- import { SubMesh } from "@babylonjs/core/Meshes/subMesh.js";
7
- import { Mesh } from "@babylonjs/core/Meshes/mesh.js";
8
- import { Scene } from "@babylonjs/core/scene.js";
9
- import "./grid.fragment";
10
- import "./grid.vertex";
11
- /**
12
- * The grid materials allows you to wrap any shape with a grid.
13
- * Colors are customizable.
14
- */
15
- export declare class GridMaterial extends PushMaterial {
16
- /**
17
- * Main color of the grid (e.g. between lines)
18
- */
19
- mainColor: Color3;
20
- /**
21
- * Color of the grid lines.
22
- */
23
- lineColor: Color3;
24
- /**
25
- * The scale of the grid compared to unit.
26
- */
27
- gridRatio: number;
28
- /**
29
- * Allows setting an offset for the grid lines.
30
- */
31
- gridOffset: Vector3;
32
- /**
33
- * The frequency of thicker lines.
34
- */
35
- majorUnitFrequency: number;
36
- /**
37
- * The visibility of minor units in the grid.
38
- */
39
- minorUnitVisibility: number;
40
- /**
41
- * The grid opacity outside of the lines.
42
- */
43
- opacity: number;
44
- /**
45
- * Determine RBG output is premultiplied by alpha value.
46
- */
47
- preMultiplyAlpha: boolean;
48
- /**
49
- * Determines if the max line value will be used instead of the sum wherever grid lines intersect.
50
- */
51
- useMaxLine: boolean;
52
- private _opacityTexture;
53
- opacityTexture: BaseTexture;
54
- private _gridControl;
55
- /**
56
- * constructor
57
- * @param name The name given to the material in order to identify it afterwards.
58
- * @param scene The scene the material is used in.
59
- */
60
- constructor(name: string, scene?: Scene);
61
- /**
62
- * Returns whether or not the grid requires alpha blending.
63
- */
64
- needAlphaBlending(): boolean;
65
- needAlphaBlendingForMesh(mesh: AbstractMesh): boolean;
66
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
67
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
68
- /**
69
- * Dispose the material and its associated resources.
70
- * @param forceDisposeEffect will also dispose the used effect when true
71
- */
72
- dispose(forceDisposeEffect?: boolean): void;
73
- clone(name: string): GridMaterial;
74
- serialize(): any;
75
- getClassName(): string;
76
- static Parse(source: any, scene: Scene, rootUrl: string): GridMaterial;
77
- }
1
+ import type { Matrix } from "@babylonjs/core/Maths/math.vector.js";
2
+ import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
3
+ import { Color3 } from "@babylonjs/core/Maths/math.color.js";
4
+ import type { BaseTexture } from "@babylonjs/core/Materials/Textures/baseTexture.js";
5
+ import { PushMaterial } from "@babylonjs/core/Materials/pushMaterial.js";
6
+ import type { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
7
+ import type { SubMesh } from "@babylonjs/core/Meshes/subMesh.js";
8
+ import type { Mesh } from "@babylonjs/core/Meshes/mesh.js";
9
+ import type { Scene } from "@babylonjs/core/scene.js";
10
+ import "./grid.fragment";
11
+ import "./grid.vertex";
12
+ /**
13
+ * The grid materials allows you to wrap any shape with a grid.
14
+ * Colors are customizable.
15
+ */
16
+ export declare class GridMaterial extends PushMaterial {
17
+ /**
18
+ * Main color of the grid (e.g. between lines)
19
+ */
20
+ mainColor: Color3;
21
+ /**
22
+ * Color of the grid lines.
23
+ */
24
+ lineColor: Color3;
25
+ /**
26
+ * The scale of the grid compared to unit.
27
+ */
28
+ gridRatio: number;
29
+ /**
30
+ * Allows setting an offset for the grid lines.
31
+ */
32
+ gridOffset: Vector3;
33
+ /**
34
+ * The frequency of thicker lines.
35
+ */
36
+ majorUnitFrequency: number;
37
+ /**
38
+ * The visibility of minor units in the grid.
39
+ */
40
+ minorUnitVisibility: number;
41
+ /**
42
+ * The grid opacity outside of the lines.
43
+ */
44
+ opacity: number;
45
+ /**
46
+ * Determine RBG output is premultiplied by alpha value.
47
+ */
48
+ preMultiplyAlpha: boolean;
49
+ /**
50
+ * Determines if the max line value will be used instead of the sum wherever grid lines intersect.
51
+ */
52
+ useMaxLine: boolean;
53
+ private _opacityTexture;
54
+ opacityTexture: BaseTexture;
55
+ private _gridControl;
56
+ /**
57
+ * constructor
58
+ * @param name The name given to the material in order to identify it afterwards.
59
+ * @param scene The scene the material is used in.
60
+ */
61
+ constructor(name: string, scene?: Scene);
62
+ /**
63
+ * Returns whether or not the grid requires alpha blending.
64
+ */
65
+ needAlphaBlending(): boolean;
66
+ needAlphaBlendingForMesh(mesh: AbstractMesh): boolean;
67
+ isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
68
+ bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
69
+ /**
70
+ * Dispose the material and its associated resources.
71
+ * @param forceDisposeEffect will also dispose the used effect when true
72
+ */
73
+ dispose(forceDisposeEffect?: boolean): void;
74
+ clone(name: string): GridMaterial;
75
+ serialize(): any;
76
+ getClassName(): string;
77
+ static Parse(source: any, scene: Scene, rootUrl: string): GridMaterial;
78
+ }