DefaultShaderShadows.vert 777 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #ifdef GL_ES
  2. precision mediump float;
  3. #endif
  4. attribute vec4 position;
  5. attribute vec3 normal;
  6. attribute vec2 texCoord;
  7. uniform mat4 modelMatrix;
  8. uniform mat4 viewMatrix;
  9. uniform mat4 projectionMatrix;
  10. varying vec2 texCoordVar;
  11. varying vec3 varNormal;
  12. varying vec4 varPosition;
  13. varying vec4 rawPosition;
  14. mat3 mat3_emu(mat4 m4) {
  15. return mat3(
  16. m4[0][0], m4[0][1], m4[0][2],
  17. m4[1][0], m4[1][1], m4[1][2],
  18. m4[2][0], m4[2][1], m4[2][2]);
  19. }
  20. void main()
  21. {
  22. mat4 modelViewMatrix = viewMatrix * modelMatrix;
  23. vec4 p = modelViewMatrix * position;
  24. mat3 rotN = mat3_emu(modelViewMatrix);
  25. varNormal = normalize(rotN * normal);
  26. rawPosition = position;
  27. varPosition = modelViewMatrix * position;
  28. gl_Position = projectionMatrix * p;
  29. texCoordVar = texCoord;
  30. }