LightCube.vert 632 B

12345678910111213141516171819202122232425262728
  1. varying vec3 normal;
  2. varying vec3 worldNormal;
  3. varying vec4 pos;
  4. varying vec4 rawpos;
  5. varying vec4 vertexColor;
  6. uniform mat4 modelMatrix;
  7. mat3 mat3_emu(mat4 m4) {
  8. return mat3(
  9. m4[0][0], m4[0][1], m4[0][2],
  10. m4[1][0], m4[1][1], m4[1][2],
  11. m4[2][0], m4[2][1], m4[2][2]);
  12. }
  13. void main() {
  14. normal = gl_NormalMatrix * gl_Normal;
  15. mat3 rotN = mat3_emu(modelMatrix);
  16. worldNormal = rotN * gl_Normal;
  17. worldNormal = normalize(worldNormal);
  18. gl_Position = ftransform();
  19. pos = gl_ModelViewMatrix * gl_Vertex;
  20. rawpos = gl_Vertex;
  21. vertexColor = gl_Color;
  22. gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0;
  23. }