grid.vertex.fx.ts 748 B

123456789101112131415161718192021222324252627282930313233343536
  1. import { Effect } from "babylonjs";
  2. let name = 'gridVertexShader';
  3. let shader = `precision highp float;
  4. attribute vec3 position;
  5. attribute vec3 normal;
  6. uniform mat4 projection;
  7. uniform mat4 world;
  8. uniform mat4 view;
  9. uniform mat4 worldView;
  10. #ifdef TRANSPARENT
  11. varying vec4 vCameraSpacePosition;
  12. #endif
  13. varying vec3 vPosition;
  14. varying vec3 vNormal;
  15. #include<fogVertexDeclaration>
  16. void main(void) {
  17. #ifdef FOG
  18. vec4 worldPos=world*vec4(position,1.0);
  19. #endif
  20. #include<fogVertex>
  21. vec4 cameraSpacePosition=worldView*vec4(position,1.0);
  22. gl_Position=projection*cameraSpacePosition;
  23. #ifdef TRANSPARENT
  24. vCameraSpacePosition=cameraSpacePosition;
  25. #endif
  26. vPosition=position;
  27. vNormal=normal;
  28. }`;
  29. Effect.ShadersStore[name] = shader;
  30. export { shader, name };