depth.vertex.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. // Do not edit.
  2. import { ShaderStore } from "../Engines/shaderStore.js";
  3. import "./ShadersInclude/bonesDeclaration.js";
  4. import "./ShadersInclude/bakedVertexAnimationDeclaration.js";
  5. import "./ShadersInclude/morphTargetsVertexGlobalDeclaration.js";
  6. import "./ShadersInclude/morphTargetsVertexDeclaration.js";
  7. import "./ShadersInclude/clipPlaneVertexDeclaration.js";
  8. import "./ShadersInclude/instancesDeclaration.js";
  9. import "./ShadersInclude/pointCloudVertexDeclaration.js";
  10. import "./ShadersInclude/morphTargetsVertexGlobal.js";
  11. import "./ShadersInclude/morphTargetsVertex.js";
  12. import "./ShadersInclude/instancesVertex.js";
  13. import "./ShadersInclude/bonesVertex.js";
  14. import "./ShadersInclude/bakedVertexAnimation.js";
  15. import "./ShadersInclude/clipPlaneVertex.js";
  16. import "./ShadersInclude/pointCloudVertex.js";
  17. const name = "depthVertexShader";
  18. const shader = `attribute vec3 position;
  19. #include<bonesDeclaration>
  20. #include<bakedVertexAnimationDeclaration>
  21. #include<morphTargetsVertexGlobalDeclaration>
  22. #include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]
  23. #include<clipPlaneVertexDeclaration>
  24. #include<instancesDeclaration>
  25. uniform mat4 viewProjection;uniform vec2 depthValues;
  26. #if defined(ALPHATEST) || defined(NEED_UV)
  27. varying vec2 vUV;uniform mat4 diffuseMatrix;
  28. #ifdef UV1
  29. attribute vec2 uv;
  30. #endif
  31. #ifdef UV2
  32. attribute vec2 uv2;
  33. #endif
  34. #endif
  35. #ifdef STORE_CAMERASPACE_Z
  36. uniform mat4 view;varying vec4 vViewPos;
  37. #endif
  38. #include<pointCloudVertexDeclaration>
  39. varying float vDepthMetric;
  40. #define CUSTOM_VERTEX_DEFINITIONS
  41. void main(void)
  42. {vec3 positionUpdated=position;
  43. #ifdef UV1
  44. vec2 uvUpdated=uv;
  45. #endif
  46. #include<morphTargetsVertexGlobal>
  47. #include<morphTargetsVertex>[0..maxSimultaneousMorphTargets]
  48. #include<instancesVertex>
  49. #include<bonesVertex>
  50. #include<bakedVertexAnimation>
  51. vec4 worldPos=finalWorld*vec4(positionUpdated,1.0);
  52. #include<clipPlaneVertex>
  53. gl_Position=viewProjection*worldPos;
  54. #ifdef STORE_CAMERASPACE_Z
  55. vViewPos=view*worldPos;
  56. #else
  57. #ifdef USE_REVERSE_DEPTHBUFFER
  58. vDepthMetric=((-gl_Position.z+depthValues.x)/(depthValues.y));
  59. #else
  60. vDepthMetric=((gl_Position.z+depthValues.x)/(depthValues.y));
  61. #endif
  62. #endif
  63. #if defined(ALPHATEST) || defined(BASIC_RENDER)
  64. #ifdef UV1
  65. vUV=vec2(diffuseMatrix*vec4(uvUpdated,1.0,0.0));
  66. #endif
  67. #ifdef UV2
  68. vUV=vec2(diffuseMatrix*vec4(uv2,1.0,0.0));
  69. #endif
  70. #endif
  71. #include<pointCloudVertex>
  72. }
  73. `;
  74. // Sideeffect
  75. ShaderStore.ShadersStore[name] = shader;
  76. /** @internal */
  77. export const depthVertexShader = { name, shader };
  78. //# sourceMappingURL=depth.vertex.js.map