__shdBulbHardShadows.vsh 462 B

123456789101112131415161718
  1. precision highp float;
  2. #define MAX_LENGTH 500.0
  3. attribute vec3 in_Position;
  4. attribute vec3 in_Normal;
  5. uniform vec2 u_vLight;
  6. uniform float u_fNormalCoeff;
  7. void main()
  8. {
  9. vec2 delta = in_Position.xy - u_vLight;
  10. float finalLength = MAX_LENGTH*step(u_fNormalCoeff*dot(delta, in_Normal.xy), 0.0);
  11. gl_Position = gm_Matrices[MATRIX_WORLD_VIEW_PROJECTION]*vec4(in_Position.xy + in_Position.z*finalLength*delta, 0.0, 1.0);
  12. gl_Position.z = 0.0;
  13. }