@babylonjs/core 5.46.0 → 5.47.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 (73) hide show
  1. package/Actions/actionManager.js +6 -1
  2. package/Actions/actionManager.js.map +1 -1
  3. package/Debug/physicsViewer.js +3 -3
  4. package/Debug/physicsViewer.js.map +1 -1
  5. package/DeviceInput/eventFactory.d.ts +1 -1
  6. package/DeviceInput/eventFactory.js +4 -4
  7. package/DeviceInput/eventFactory.js.map +1 -1
  8. package/DeviceInput/webDeviceInputSystem.js +2 -2
  9. package/DeviceInput/webDeviceInputSystem.js.map +1 -1
  10. package/Engines/Extensions/engine.alpha.js +7 -0
  11. package/Engines/Extensions/engine.alpha.js.map +1 -1
  12. package/Engines/WebGPU/Extensions/engine.alpha.js +8 -0
  13. package/Engines/WebGPU/Extensions/engine.alpha.js.map +1 -1
  14. package/Engines/engine.d.ts +1 -3
  15. package/Engines/engine.js +27 -33
  16. package/Engines/engine.js.map +1 -1
  17. package/Engines/thinEngine.d.ts +44 -30
  18. package/Engines/thinEngine.js +42 -57
  19. package/Engines/thinEngine.js.map +1 -1
  20. package/Engines/webgpuEngine.d.ts +10 -56
  21. package/Engines/webgpuEngine.js +15 -31
  22. package/Engines/webgpuEngine.js.map +1 -1
  23. package/Events/pointerEvents.js +1 -1
  24. package/Events/pointerEvents.js.map +1 -1
  25. package/Inputs/scene.inputManager.d.ts +4 -3
  26. package/Inputs/scene.inputManager.js +12 -11
  27. package/Inputs/scene.inputManager.js.map +1 -1
  28. package/Materials/PBR/pbrBaseMaterial.js +1 -3
  29. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  30. package/Materials/Textures/videoTexture.js +1 -1
  31. package/Materials/Textures/videoTexture.js.map +1 -1
  32. package/Maths/math.vector.d.ts +21 -0
  33. package/Maths/math.vector.js +27 -0
  34. package/Maths/math.vector.js.map +1 -1
  35. package/Meshes/mesh.js +1 -1
  36. package/Meshes/mesh.js.map +1 -1
  37. package/Particles/particleSystemComponent.js +5 -0
  38. package/Particles/particleSystemComponent.js.map +1 -1
  39. package/Physics/index.d.ts +1 -0
  40. package/Physics/index.js +1 -0
  41. package/Physics/index.js.map +1 -1
  42. package/Physics/v2/IPhysicsEnginePlugin.d.ts +12 -14
  43. package/Physics/v2/IPhysicsEnginePlugin.js +6 -5
  44. package/Physics/v2/IPhysicsEnginePlugin.js.map +1 -1
  45. package/Physics/v2/physicsBody.d.ts +14 -5
  46. package/Physics/v2/physicsBody.js +19 -7
  47. package/Physics/v2/physicsBody.js.map +1 -1
  48. package/Physics/v2/physicsConstraint.d.ts +139 -66
  49. package/Physics/v2/physicsConstraint.js +146 -79
  50. package/Physics/v2/physicsConstraint.js.map +1 -1
  51. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js +9 -1
  52. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
  53. package/Rendering/fluidRenderer/fluidRenderingObject.js +3 -0
  54. package/Rendering/fluidRenderer/fluidRenderingObject.js.map +1 -1
  55. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js +3 -0
  56. package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js.map +1 -1
  57. package/Rendering/geometryBufferRenderer.js +129 -124
  58. package/Rendering/geometryBufferRenderer.js.map +1 -1
  59. package/Shaders/ShadersInclude/pbrBlockClearcoat.js +1 -3
  60. package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
  61. package/Shaders/ShadersInclude/pbrBlockSubSurface.js +1 -1
  62. package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
  63. package/Shaders/fluidRenderingParticleDepth.fragment.js +5 -1
  64. package/Shaders/fluidRenderingParticleDepth.fragment.js.map +1 -1
  65. package/Shaders/fluidRenderingRender.fragment.js +7 -2
  66. package/Shaders/fluidRenderingRender.fragment.js.map +1 -1
  67. package/Shaders/geometry.fragment.d.ts +2 -0
  68. package/Shaders/geometry.fragment.js +5 -1
  69. package/Shaders/geometry.fragment.js.map +1 -1
  70. package/Shaders/geometry.vertex.d.ts +2 -0
  71. package/Shaders/geometry.vertex.js +8 -4
  72. package/Shaders/geometry.vertex.js.map +1 -1
  73. package/package.json +1 -1
@@ -1,9 +1,11 @@
1
1
  // Do not edit.
2
2
  import { ShaderStore } from "../Engines/shaderStore.js";
3
+ import "./ShadersInclude/clipPlaneFragmentDeclaration.js";
3
4
  import "./ShadersInclude/mrtFragmentDeclaration.js";
4
5
  import "./ShadersInclude/bumpFragmentMainFunctions.js";
5
6
  import "./ShadersInclude/bumpFragmentFunctions.js";
6
7
  import "./ShadersInclude/helperFunctions.js";
8
+ import "./ShadersInclude/clipPlaneFragment.js";
7
9
  import "./ShadersInclude/bumpFragment.js";
8
10
  const name = "geometryPixelShader";
9
11
  const shader = `#extension GL_EXT_draw_buffers : require
@@ -37,11 +39,13 @@ uniform float glossiness;
37
39
  #endif
38
40
  #ifdef ALPHATEST
39
41
  uniform sampler2D diffuseSampler;
42
+ #include<clipPlaneFragmentDeclaration>
40
43
  #include<mrtFragmentDeclaration>[RENDER_TARGET_COUNT]
41
44
  #include<bumpFragmentMainFunctions>
42
45
  #include<bumpFragmentFunctions>
43
46
  #include<helperFunctions>
44
- void main() {
47
+ void main() {
48
+ #ifdef ALPHATEST
45
49
  if (texture2D(diffuseSampler,vUV).a<0.4)
46
50
  vec3 normalOutput;
47
51
  vec3 normalW=normalize(vNormalW);
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.fragment.js","sourceRoot":"","sources":["../../../../lts/core/generated/Shaders/geometry.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,yCAAyC,CAAC;AACjD,OAAO,4CAA4C,CAAC;AACpD,OAAO,wCAAwC,CAAC;AAChD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,+BAA+B,CAAC;AAEvC,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoJd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/mrtFragmentDeclaration\";\nimport \"./ShadersInclude/bumpFragmentMainFunctions\";\nimport \"./ShadersInclude/bumpFragmentFunctions\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/bumpFragment\";\n\nconst name = \"geometryPixelShader\";\nconst shader = `#extension GL_EXT_draw_buffers : require\n#if defined(BUMP) || !defined(NORMAL)\n#extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\r#ifdef BUMP\nvarying mat4 vWorldView;\rvarying vec3 vNormalW;\r#else\nvarying vec3 vNormalV;\r#endif\nvarying vec4 vViewPos;\r#if defined(POSITION) || defined(BUMP)\nvarying vec3 vPositionW;\r#endif\n#ifdef VELOCITY\nvarying vec4 vCurrentPosition;\rvarying vec4 vPreviousPosition;\r#endif\n#ifdef NEED_UV\nvarying vec2 vUV;\r#endif\n#ifdef BUMP\nuniform vec3 vBumpInfos;\runiform vec2 vTangentSpaceParams;\r#endif\n#if defined(REFLECTIVITY)\n#if defined(ORMTEXTURE) || defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nuniform sampler2D reflectivitySampler;\rvarying vec2 vReflectivityUV;\r#endif\n#ifdef ALBEDOTEXTURE\nvarying vec2 vAlbedoUV;\runiform sampler2D albedoSampler;\r#endif\n#ifdef REFLECTIVITYCOLOR\nuniform vec3 reflectivityColor;\r#endif\n#ifdef ALBEDOCOLOR\nuniform vec3 albedoColor;\r#endif\n#ifdef METALLIC\nuniform float metallic;\r#endif\n#ifdef ROUGHNESS\nuniform float glossiness;\r#endif\n#endif\n#ifdef ALPHATEST\nuniform sampler2D diffuseSampler;\r#endif\n#include<mrtFragmentDeclaration>[RENDER_TARGET_COUNT]\n#include<bumpFragmentMainFunctions>\n#include<bumpFragmentFunctions>\n#include<helperFunctions>\nvoid main() {\r#ifdef ALPHATEST\nif (texture2D(diffuseSampler,vUV).a<0.4)\rdiscard;\r#endif\nvec3 normalOutput;\r#ifdef BUMP\nvec3 normalW=normalize(vNormalW);\r#include<bumpFragment>\nnormalOutput=normalize(vec3(vWorldView*vec4(normalW,0.0)));\r#else\nnormalOutput=normalize(vNormalV);\r#endif\n#ifdef PREPASS\n#ifdef PREPASS_DEPTH\ngl_FragData[DEPTH_INDEX]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);\r#endif\n#ifdef PREPASS_NORMAL\ngl_FragData[NORMAL_INDEX]=vec4(normalOutput,1.0);\r#endif\n#else\ngl_FragData[0]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);\rgl_FragData[1]=vec4(normalOutput,1.0);\r#endif\n#ifdef POSITION\ngl_FragData[POSITION_INDEX]=vec4(vPositionW,1.0);\r#endif\n#ifdef VELOCITY\nvec2 a=(vCurrentPosition.xy/vCurrentPosition.w)*0.5+0.5;\rvec2 b=(vPreviousPosition.xy/vPreviousPosition.w)*0.5+0.5;\rvec2 velocity=abs(a-b);\rvelocity=vec2(pow(velocity.x,1.0/3.0),pow(velocity.y,1.0/3.0))*sign(a-b)*0.5+0.5;\rgl_FragData[VELOCITY_INDEX]=vec4(velocity,0.0,1.0);\r#endif\n#ifdef REFLECTIVITY\nvec4 reflectivity=vec4(1.0,1.0,1.0,1.0);\r#ifdef METALLICWORKFLOW\nfloat metal=1.0;\rfloat roughness=1.0;\r#ifdef ORMTEXTURE\nmetal*=texture2D(reflectivitySampler,vReflectivityUV).b;\rroughness*=texture2D(reflectivitySampler,vReflectivityUV).g;\r#endif\n#ifdef METALLIC\nmetal*=metallic;\r#endif\n#ifdef ROUGHNESS\nroughness*=(1.0-glossiness); \r#endif\nreflectivity.a-=roughness;\rvec3 color=vec3(1.0);\r#ifdef ALBEDOTEXTURE\ncolor=texture2D(albedoSampler,vAlbedoUV).rgb;\r#ifdef GAMMAALBEDO\ncolor=toLinearSpace(color);\r#endif\n#endif\n#ifdef ALBEDOCOLOR\ncolor*=albedoColor.xyz;\r#endif\nreflectivity.rgb=mix(vec3(0.04),color,metal);\r#else\n#ifdef SPECULARGLOSSINESSTEXTURE\nreflectivity=texture2D(reflectivitySampler,vReflectivityUV);\r#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity.rgb=toLinearSpace(reflectivity.rgb);\r#endif\n#ifdef GLOSSINESSS\nreflectivity.a*=glossiness;\r#endif\n#else \n#ifdef REFLECTIVITYTEXTURE\nreflectivity.rbg=texture2D(reflectivitySampler,vReflectivityUV).rbg;\r#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity.rgb=toLinearSpace(reflectivity.rgb);\r#endif\n#else\n#ifdef REFLECTIVITYCOLOR\nreflectivity.rgb=reflectivityColor.xyz;\rreflectivity.a=1.0;\r#endif\n#endif \n#ifdef GLOSSINESSS\nreflectivity.a=glossiness; \r#else\nreflectivity.a=1.0; \r#endif\n#endif\n#endif\nreflectivity.rgb=toGammaSpace(reflectivity.rgb); \rgl_FragData[REFLECTIVITY_INDEX]=reflectivity;\r#endif\n}\r`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const geometryPixelShader = { name, shader };\n"]}
1
+ {"version":3,"file":"geometry.fragment.js","sourceRoot":"","sources":["../../../../lts/core/generated/Shaders/geometry.fragment.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,+CAA+C,CAAC;AACvD,OAAO,yCAAyC,CAAC;AACjD,OAAO,4CAA4C,CAAC;AACpD,OAAO,wCAAwC,CAAC;AAChD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,+BAA+B,CAAC;AAEvC,MAAM,IAAI,GAAG,qBAAqB,CAAC;AACnC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsJd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/clipPlaneFragmentDeclaration\";\nimport \"./ShadersInclude/mrtFragmentDeclaration\";\nimport \"./ShadersInclude/bumpFragmentMainFunctions\";\nimport \"./ShadersInclude/bumpFragmentFunctions\";\nimport \"./ShadersInclude/helperFunctions\";\nimport \"./ShadersInclude/clipPlaneFragment\";\nimport \"./ShadersInclude/bumpFragment\";\n\nconst name = \"geometryPixelShader\";\nconst shader = `#extension GL_EXT_draw_buffers : require\n#if defined(BUMP) || !defined(NORMAL)\n#extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\r#ifdef BUMP\nvarying mat4 vWorldView;\rvarying vec3 vNormalW;\r#else\nvarying vec3 vNormalV;\r#endif\nvarying vec4 vViewPos;\r#if defined(POSITION) || defined(BUMP)\nvarying vec3 vPositionW;\r#endif\n#ifdef VELOCITY\nvarying vec4 vCurrentPosition;\rvarying vec4 vPreviousPosition;\r#endif\n#ifdef NEED_UV\nvarying vec2 vUV;\r#endif\n#ifdef BUMP\nuniform vec3 vBumpInfos;\runiform vec2 vTangentSpaceParams;\r#endif\n#if defined(REFLECTIVITY)\n#if defined(ORMTEXTURE) || defined(SPECULARGLOSSINESSTEXTURE) || defined(REFLECTIVITYTEXTURE)\nuniform sampler2D reflectivitySampler;\rvarying vec2 vReflectivityUV;\r#endif\n#ifdef ALBEDOTEXTURE\nvarying vec2 vAlbedoUV;\runiform sampler2D albedoSampler;\r#endif\n#ifdef REFLECTIVITYCOLOR\nuniform vec3 reflectivityColor;\r#endif\n#ifdef ALBEDOCOLOR\nuniform vec3 albedoColor;\r#endif\n#ifdef METALLIC\nuniform float metallic;\r#endif\n#ifdef ROUGHNESS\nuniform float glossiness;\r#endif\n#endif\n#ifdef ALPHATEST\nuniform sampler2D diffuseSampler;\r#endif\n#include<clipPlaneFragmentDeclaration>\n#include<mrtFragmentDeclaration>[RENDER_TARGET_COUNT]\n#include<bumpFragmentMainFunctions>\n#include<bumpFragmentFunctions>\n#include<helperFunctions>\nvoid main() {\r#include<clipPlaneFragment>\n#ifdef ALPHATEST\nif (texture2D(diffuseSampler,vUV).a<0.4)\rdiscard;\r#endif\nvec3 normalOutput;\r#ifdef BUMP\nvec3 normalW=normalize(vNormalW);\r#include<bumpFragment>\nnormalOutput=normalize(vec3(vWorldView*vec4(normalW,0.0)));\r#else\nnormalOutput=normalize(vNormalV);\r#endif\n#ifdef PREPASS\n#ifdef PREPASS_DEPTH\ngl_FragData[DEPTH_INDEX]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);\r#endif\n#ifdef PREPASS_NORMAL\ngl_FragData[NORMAL_INDEX]=vec4(normalOutput,1.0);\r#endif\n#else\ngl_FragData[0]=vec4(vViewPos.z/vViewPos.w,0.0,0.0,1.0);\rgl_FragData[1]=vec4(normalOutput,1.0);\r#endif\n#ifdef POSITION\ngl_FragData[POSITION_INDEX]=vec4(vPositionW,1.0);\r#endif\n#ifdef VELOCITY\nvec2 a=(vCurrentPosition.xy/vCurrentPosition.w)*0.5+0.5;\rvec2 b=(vPreviousPosition.xy/vPreviousPosition.w)*0.5+0.5;\rvec2 velocity=abs(a-b);\rvelocity=vec2(pow(velocity.x,1.0/3.0),pow(velocity.y,1.0/3.0))*sign(a-b)*0.5+0.5;\rgl_FragData[VELOCITY_INDEX]=vec4(velocity,0.0,1.0);\r#endif\n#ifdef REFLECTIVITY\nvec4 reflectivity=vec4(1.0,1.0,1.0,1.0);\r#ifdef METALLICWORKFLOW\nfloat metal=1.0;\rfloat roughness=1.0;\r#ifdef ORMTEXTURE\nmetal*=texture2D(reflectivitySampler,vReflectivityUV).b;\rroughness*=texture2D(reflectivitySampler,vReflectivityUV).g;\r#endif\n#ifdef METALLIC\nmetal*=metallic;\r#endif\n#ifdef ROUGHNESS\nroughness*=(1.0-glossiness); \r#endif\nreflectivity.a-=roughness;\rvec3 color=vec3(1.0);\r#ifdef ALBEDOTEXTURE\ncolor=texture2D(albedoSampler,vAlbedoUV).rgb;\r#ifdef GAMMAALBEDO\ncolor=toLinearSpace(color);\r#endif\n#endif\n#ifdef ALBEDOCOLOR\ncolor*=albedoColor.xyz;\r#endif\nreflectivity.rgb=mix(vec3(0.04),color,metal);\r#else\n#ifdef SPECULARGLOSSINESSTEXTURE\nreflectivity=texture2D(reflectivitySampler,vReflectivityUV);\r#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity.rgb=toLinearSpace(reflectivity.rgb);\r#endif\n#ifdef GLOSSINESSS\nreflectivity.a*=glossiness;\r#endif\n#else \n#ifdef REFLECTIVITYTEXTURE\nreflectivity.rbg=texture2D(reflectivitySampler,vReflectivityUV).rbg;\r#ifdef GAMMAREFLECTIVITYTEXTURE\nreflectivity.rgb=toLinearSpace(reflectivity.rgb);\r#endif\n#else\n#ifdef REFLECTIVITYCOLOR\nreflectivity.rgb=reflectivityColor.xyz;\rreflectivity.a=1.0;\r#endif\n#endif \n#ifdef GLOSSINESSS\nreflectivity.a=glossiness; \r#else\nreflectivity.a=1.0; \r#endif\n#endif\n#endif\nreflectivity.rgb=toGammaSpace(reflectivity.rgb); \rgl_FragData[REFLECTIVITY_INDEX]=reflectivity;\r#endif\n}\r`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const geometryPixelShader = { name, shader };\n"]}
@@ -5,11 +5,13 @@ import "./ShadersInclude/morphTargetsVertexDeclaration";
5
5
  import "./ShadersInclude/instancesDeclaration";
6
6
  import "./ShadersInclude/geometryVertexDeclaration";
7
7
  import "./ShadersInclude/geometryUboDeclaration";
8
+ import "./ShadersInclude/clipPlaneVertexDeclaration";
8
9
  import "./ShadersInclude/morphTargetsVertexGlobal";
9
10
  import "./ShadersInclude/morphTargetsVertex";
10
11
  import "./ShadersInclude/instancesVertex";
11
12
  import "./ShadersInclude/bonesVertex";
12
13
  import "./ShadersInclude/bakedVertexAnimation";
14
+ import "./ShadersInclude/clipPlaneVertex";
13
15
  import "./ShadersInclude/bumpVertex";
14
16
  /** @internal */
15
17
  export declare const geometryVertexShader: {
@@ -7,11 +7,13 @@ import "./ShadersInclude/morphTargetsVertexDeclaration.js";
7
7
  import "./ShadersInclude/instancesDeclaration.js";
8
8
  import "./ShadersInclude/geometryVertexDeclaration.js";
9
9
  import "./ShadersInclude/geometryUboDeclaration.js";
10
+ import "./ShadersInclude/clipPlaneVertexDeclaration.js";
10
11
  import "./ShadersInclude/morphTargetsVertexGlobal.js";
11
12
  import "./ShadersInclude/morphTargetsVertex.js";
12
13
  import "./ShadersInclude/instancesVertex.js";
13
14
  import "./ShadersInclude/bonesVertex.js";
14
15
  import "./ShadersInclude/bakedVertexAnimation.js";
16
+ import "./ShadersInclude/clipPlaneVertex.js";
15
17
  import "./ShadersInclude/bumpVertex.js";
16
18
  const name = "geometryVertexShader";
17
19
  const shader = `precision highp float;
@@ -20,6 +22,7 @@ const shader = `precision highp float;
20
22
  #include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]
21
23
  #include<instancesDeclaration>
22
24
  #include<__decl__geometryVertex>
25
+ #include<clipPlaneVertexDeclaration>
23
26
  attribute vec3 position;
24
27
  varying vec2 vUV;
25
28
  uniform mat4 diffuseMatrix;
@@ -51,10 +54,10 @@ vec2 uvUpdated=uv;
51
54
  vCurrentPosition=viewProjection*finalWorld*vec4(positionUpdated,1.0);
52
55
  #include<bonesVertex>
53
56
  #include<bakedVertexAnimation>
54
- vec4 pos=vec4(finalWorld*vec4(positionUpdated,1.0));
57
+ vec4 worldPos=vec4(finalWorld*vec4(positionUpdated,1.0));
55
58
  vWorldView=view*finalWorld;
56
59
  vNormalV=normalize(vec3((view*finalWorld)*vec4(normalUpdated,0.0)));
57
- vViewPos=view*pos;
60
+ vViewPos=view*worldPos;
58
61
  vCurrentPosition=viewProjection*finalWorld*vec4(positionUpdated,1.0);
59
62
  mat4 previousInfluence;
60
63
  previousInfluence+=mPreviousBones[int(matricesIndices[1])]*matricesWeights[1];
@@ -74,8 +77,9 @@ vPreviousPosition=previousViewProjection*finalPreviousWorld*previousInfluence*ve
74
77
  vPreviousPosition=previousViewProjection*finalPreviousWorld*vec4(positionUpdated,1.0);
75
78
  #endif
76
79
  #if defined(POSITION) || defined(BUMP)
77
- vPositionW=pos.xyz/pos.w;
78
- gl_Position=viewProjection*finalWorld*vec4(positionUpdated,1.0);
80
+ vPositionW=worldPos.xyz/worldPos.w;
81
+ gl_Position=viewProjection*finalWorld*vec4(positionUpdated,1.0);
82
+ #ifdef NEED_UV
79
83
  #ifdef UV1
80
84
  #if defined(ALPHATEST) && defined(ALPHATEST_UV1)
81
85
  vUV=vec2(diffuseMatrix*vec4(uvUpdated,1.0,0.0));
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.vertex.js","sourceRoot":"","sources":["../../../../lts/core/generated/Shaders/geometry.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kDAAkD,CAAC;AAC1D,OAAO,sDAAsD,CAAC;AAC9D,OAAO,gDAAgD,CAAC;AACxD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,4CAA4C,CAAC;AACpD,OAAO,yCAAyC,CAAC;AACjD,OAAO,2CAA2C,CAAC;AACnD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,8BAA8B,CAAC;AACtC,OAAO,uCAAuC,CAAC;AAC/C,OAAO,6BAA6B,CAAC;AAErC,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgJd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/bonesDeclaration\";\nimport \"./ShadersInclude/bakedVertexAnimationDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobalDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexDeclaration\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/geometryVertexDeclaration\";\nimport \"./ShadersInclude/geometryUboDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobal\";\nimport \"./ShadersInclude/morphTargetsVertex\";\nimport \"./ShadersInclude/instancesVertex\";\nimport \"./ShadersInclude/bonesVertex\";\nimport \"./ShadersInclude/bakedVertexAnimation\";\nimport \"./ShadersInclude/bumpVertex\";\n\nconst name = \"geometryVertexShader\";\nconst shader = `precision highp float;\r#include<bonesDeclaration>\n#include<bakedVertexAnimationDeclaration>\n#include<morphTargetsVertexGlobalDeclaration>\n#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]\n#include<instancesDeclaration>\n#include<__decl__geometryVertex>\nattribute vec3 position;\rattribute vec3 normal;\r#ifdef NEED_UV\nvarying vec2 vUV;\r#ifdef ALPHATEST\nuniform mat4 diffuseMatrix;\r#endif\n#ifdef BUMP\nuniform mat4 bumpMatrix;\rvarying vec2 vBumpUV;\r#endif\n#ifdef REFLECTIVITY\nuniform mat4 reflectivityMatrix;\runiform mat4 albedoMatrix;\rvarying vec2 vReflectivityUV;\rvarying vec2 vAlbedoUV;\r#endif\n#ifdef UV1\nattribute vec2 uv;\r#endif\n#ifdef UV2\nattribute vec2 uv2;\r#endif\n#endif\n#ifdef BUMP\nvarying mat4 vWorldView;\r#endif\n#ifdef BUMP\nvarying vec3 vNormalW;\r#else\nvarying vec3 vNormalV;\r#endif\nvarying vec4 vViewPos;\r#if defined(POSITION) || defined(BUMP)\nvarying vec3 vPositionW;\r#endif\n#ifdef VELOCITY\nuniform mat4 previousViewProjection;\rvarying vec4 vCurrentPosition;\rvarying vec4 vPreviousPosition;\r#endif\n#define CUSTOM_VERTEX_DEFINITIONS\nvoid main(void)\r{\rvec3 positionUpdated=position;\rvec3 normalUpdated=normal;\r#ifdef UV1\nvec2 uvUpdated=uv;\r#endif\n#include<morphTargetsVertexGlobal>\n#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]\n#include<instancesVertex>\n#if defined(VELOCITY) && !defined(BONES_VELOCITY_ENABLED)\nvCurrentPosition=viewProjection*finalWorld*vec4(positionUpdated,1.0);\rvPreviousPosition=previousViewProjection*finalPreviousWorld*vec4(positionUpdated,1.0);\r#endif\n#include<bonesVertex>\n#include<bakedVertexAnimation>\nvec4 pos=vec4(finalWorld*vec4(positionUpdated,1.0));\r#ifdef BUMP\nvWorldView=view*finalWorld;\rvNormalW=normalUpdated;\r#else\nvNormalV=normalize(vec3((view*finalWorld)*vec4(normalUpdated,0.0)));\r#endif\nvViewPos=view*pos;\r#if defined(VELOCITY) && defined(BONES_VELOCITY_ENABLED)\nvCurrentPosition=viewProjection*finalWorld*vec4(positionUpdated,1.0);\r#if NUM_BONE_INFLUENCERS>0\nmat4 previousInfluence;\rpreviousInfluence=mPreviousBones[int(matricesIndices[0])]*matricesWeights[0];\r#if NUM_BONE_INFLUENCERS>1\npreviousInfluence+=mPreviousBones[int(matricesIndices[1])]*matricesWeights[1];\r#endif\n#if NUM_BONE_INFLUENCERS>2\npreviousInfluence+=mPreviousBones[int(matricesIndices[2])]*matricesWeights[2];\r#endif\n#if NUM_BONE_INFLUENCERS>3\npreviousInfluence+=mPreviousBones[int(matricesIndices[3])]*matricesWeights[3];\r#endif\n#if NUM_BONE_INFLUENCERS>4\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[0])]*matricesWeightsExtra[0];\r#endif\n#if NUM_BONE_INFLUENCERS>5\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[1])]*matricesWeightsExtra[1];\r#endif\n#if NUM_BONE_INFLUENCERS>6\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[2])]*matricesWeightsExtra[2];\r#endif\n#if NUM_BONE_INFLUENCERS>7\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[3])]*matricesWeightsExtra[3];\r#endif\nvPreviousPosition=previousViewProjection*finalPreviousWorld*previousInfluence*vec4(positionUpdated,1.0);\r#else\nvPreviousPosition=previousViewProjection*finalPreviousWorld*vec4(positionUpdated,1.0);\r#endif\n#endif\n#if defined(POSITION) || defined(BUMP)\nvPositionW=pos.xyz/pos.w;\r#endif\ngl_Position=viewProjection*finalWorld*vec4(positionUpdated,1.0);\r#ifdef NEED_UV\n#ifdef UV1\n#if defined(ALPHATEST) && defined(ALPHATEST_UV1)\nvUV=vec2(diffuseMatrix*vec4(uvUpdated,1.0,0.0));\r#else\nvUV=uv;\r#endif\n#ifdef BUMP_UV1\nvBumpUV=vec2(bumpMatrix*vec4(uvUpdated,1.0,0.0));\r#endif\n#ifdef REFLECTIVITY_UV1\nvReflectivityUV=vec2(reflectivityMatrix*vec4(uvUpdated,1.0,0.0));\r#endif\n#ifdef ALBEDO_UV1\nvAlbedoUV=vec2(albedoMatrix*vec4(uvUpdated,1.0,0.0));\r#endif\n#endif\n#ifdef UV2\n#if defined(ALPHATEST) && defined(ALPHATEST_UV2)\nvUV=vec2(diffuseMatrix*vec4(uv2,1.0,0.0));\r#else\nvUV=uv2;\r#endif\n#ifdef BUMP_UV2\nvBumpUV=vec2(bumpMatrix*vec4(uv2,1.0,0.0));\r#endif\n#ifdef REFLECTIVITY_UV2\nvReflectivityUV=vec2(reflectivityMatrix*vec4(uv2,1.0,0.0));\r#endif\n#ifdef ALBEDO_UV2\nvAlbedoUV=vec2(albedoMatrix*vec4(uv2,1.0,0.0));\r#endif\n#endif\n#endif\n#include<bumpVertex>\n}\r`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const geometryVertexShader = { name, shader };\n"]}
1
+ {"version":3,"file":"geometry.vertex.js","sourceRoot":"","sources":["../../../../lts/core/generated/Shaders/geometry.vertex.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,mCAAmC,CAAC;AAC3C,OAAO,kDAAkD,CAAC;AAC1D,OAAO,sDAAsD,CAAC;AAC9D,OAAO,gDAAgD,CAAC;AACxD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,4CAA4C,CAAC;AACpD,OAAO,yCAAyC,CAAC;AACjD,OAAO,6CAA6C,CAAC;AACrD,OAAO,2CAA2C,CAAC;AACnD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,8BAA8B,CAAC;AACtC,OAAO,uCAAuC,CAAC;AAC/C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,6BAA6B,CAAC;AAErC,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkJd,CAAC;AACF,aAAa;AACb,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACxC,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC","sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../Engines/shaderStore\";\nimport \"./ShadersInclude/bonesDeclaration\";\nimport \"./ShadersInclude/bakedVertexAnimationDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobalDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexDeclaration\";\nimport \"./ShadersInclude/instancesDeclaration\";\nimport \"./ShadersInclude/geometryVertexDeclaration\";\nimport \"./ShadersInclude/geometryUboDeclaration\";\nimport \"./ShadersInclude/clipPlaneVertexDeclaration\";\nimport \"./ShadersInclude/morphTargetsVertexGlobal\";\nimport \"./ShadersInclude/morphTargetsVertex\";\nimport \"./ShadersInclude/instancesVertex\";\nimport \"./ShadersInclude/bonesVertex\";\nimport \"./ShadersInclude/bakedVertexAnimation\";\nimport \"./ShadersInclude/clipPlaneVertex\";\nimport \"./ShadersInclude/bumpVertex\";\n\nconst name = \"geometryVertexShader\";\nconst shader = `precision highp float;\r#include<bonesDeclaration>\n#include<bakedVertexAnimationDeclaration>\n#include<morphTargetsVertexGlobalDeclaration>\n#include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]\n#include<instancesDeclaration>\n#include<__decl__geometryVertex>\n#include<clipPlaneVertexDeclaration>\nattribute vec3 position;\rattribute vec3 normal;\r#ifdef NEED_UV\nvarying vec2 vUV;\r#ifdef ALPHATEST\nuniform mat4 diffuseMatrix;\r#endif\n#ifdef BUMP\nuniform mat4 bumpMatrix;\rvarying vec2 vBumpUV;\r#endif\n#ifdef REFLECTIVITY\nuniform mat4 reflectivityMatrix;\runiform mat4 albedoMatrix;\rvarying vec2 vReflectivityUV;\rvarying vec2 vAlbedoUV;\r#endif\n#ifdef UV1\nattribute vec2 uv;\r#endif\n#ifdef UV2\nattribute vec2 uv2;\r#endif\n#endif\n#ifdef BUMP\nvarying mat4 vWorldView;\r#endif\n#ifdef BUMP\nvarying vec3 vNormalW;\r#else\nvarying vec3 vNormalV;\r#endif\nvarying vec4 vViewPos;\r#if defined(POSITION) || defined(BUMP)\nvarying vec3 vPositionW;\r#endif\n#ifdef VELOCITY\nuniform mat4 previousViewProjection;\rvarying vec4 vCurrentPosition;\rvarying vec4 vPreviousPosition;\r#endif\n#define CUSTOM_VERTEX_DEFINITIONS\nvoid main(void)\r{\rvec3 positionUpdated=position;\rvec3 normalUpdated=normal;\r#ifdef UV1\nvec2 uvUpdated=uv;\r#endif\n#include<morphTargetsVertexGlobal>\n#include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]\n#include<instancesVertex>\n#if defined(VELOCITY) && !defined(BONES_VELOCITY_ENABLED)\nvCurrentPosition=viewProjection*finalWorld*vec4(positionUpdated,1.0);\rvPreviousPosition=previousViewProjection*finalPreviousWorld*vec4(positionUpdated,1.0);\r#endif\n#include<bonesVertex>\n#include<bakedVertexAnimation>\nvec4 worldPos=vec4(finalWorld*vec4(positionUpdated,1.0));\r#ifdef BUMP\nvWorldView=view*finalWorld;\rvNormalW=normalUpdated;\r#else\nvNormalV=normalize(vec3((view*finalWorld)*vec4(normalUpdated,0.0)));\r#endif\nvViewPos=view*worldPos;\r#if defined(VELOCITY) && defined(BONES_VELOCITY_ENABLED)\nvCurrentPosition=viewProjection*finalWorld*vec4(positionUpdated,1.0);\r#if NUM_BONE_INFLUENCERS>0\nmat4 previousInfluence;\rpreviousInfluence=mPreviousBones[int(matricesIndices[0])]*matricesWeights[0];\r#if NUM_BONE_INFLUENCERS>1\npreviousInfluence+=mPreviousBones[int(matricesIndices[1])]*matricesWeights[1];\r#endif\n#if NUM_BONE_INFLUENCERS>2\npreviousInfluence+=mPreviousBones[int(matricesIndices[2])]*matricesWeights[2];\r#endif\n#if NUM_BONE_INFLUENCERS>3\npreviousInfluence+=mPreviousBones[int(matricesIndices[3])]*matricesWeights[3];\r#endif\n#if NUM_BONE_INFLUENCERS>4\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[0])]*matricesWeightsExtra[0];\r#endif\n#if NUM_BONE_INFLUENCERS>5\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[1])]*matricesWeightsExtra[1];\r#endif\n#if NUM_BONE_INFLUENCERS>6\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[2])]*matricesWeightsExtra[2];\r#endif\n#if NUM_BONE_INFLUENCERS>7\npreviousInfluence+=mPreviousBones[int(matricesIndicesExtra[3])]*matricesWeightsExtra[3];\r#endif\nvPreviousPosition=previousViewProjection*finalPreviousWorld*previousInfluence*vec4(positionUpdated,1.0);\r#else\nvPreviousPosition=previousViewProjection*finalPreviousWorld*vec4(positionUpdated,1.0);\r#endif\n#endif\n#if defined(POSITION) || defined(BUMP)\nvPositionW=worldPos.xyz/worldPos.w;\r#endif\ngl_Position=viewProjection*finalWorld*vec4(positionUpdated,1.0);\r#include<clipPlaneVertex>\n#ifdef NEED_UV\n#ifdef UV1\n#if defined(ALPHATEST) && defined(ALPHATEST_UV1)\nvUV=vec2(diffuseMatrix*vec4(uvUpdated,1.0,0.0));\r#else\nvUV=uv;\r#endif\n#ifdef BUMP_UV1\nvBumpUV=vec2(bumpMatrix*vec4(uvUpdated,1.0,0.0));\r#endif\n#ifdef REFLECTIVITY_UV1\nvReflectivityUV=vec2(reflectivityMatrix*vec4(uvUpdated,1.0,0.0));\r#endif\n#ifdef ALBEDO_UV1\nvAlbedoUV=vec2(albedoMatrix*vec4(uvUpdated,1.0,0.0));\r#endif\n#endif\n#ifdef UV2\n#if defined(ALPHATEST) && defined(ALPHATEST_UV2)\nvUV=vec2(diffuseMatrix*vec4(uv2,1.0,0.0));\r#else\nvUV=uv2;\r#endif\n#ifdef BUMP_UV2\nvBumpUV=vec2(bumpMatrix*vec4(uv2,1.0,0.0));\r#endif\n#ifdef REFLECTIVITY_UV2\nvReflectivityUV=vec2(reflectivityMatrix*vec4(uv2,1.0,0.0));\r#endif\n#ifdef ALBEDO_UV2\nvAlbedoUV=vec2(albedoMatrix*vec4(uv2,1.0,0.0));\r#endif\n#endif\n#endif\n#include<bumpVertex>\n}\r`;\n// Sideeffect\nShaderStore.ShadersStore[name] = shader;\n/** @internal */\nexport const geometryVertexShader = { name, shader };\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/core",
3
- "version": "5.46.0",
3
+ "version": "5.47.1",
4
4
  "main": "index.js",
5
5
  "module": "index.js",
6
6
  "types": "index.d.ts",