Advertisement
Guest User

Untitled

a guest
Aug 10th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 1.22 KB | None | 0 0
  1. diff --git a/drivers/gles3/shaders/canvas.glsl b/drivers/gles3/shaders/canvas.glsl
  2. index abc287bd4..5c9eb88bf 100644
  3. --- a/drivers/gles3/shaders/canvas.glsl
  4. +++ b/drivers/gles3/shaders/canvas.glsl
  5. @@ -513,7 +513,7 @@ FRAGMENT_SHADER_CODE
  6.  #ifdef USE_LIGHTING
  7.  
  8.         vec2 light_vec = transformed_light_uv;
  9. -       vec2 shadow_vec = light_uv_interp.zw;
  10. +       vec2 shadow_vec = transformed_light_uv;
  11.  
  12.         if (normal_used) {
  13.                 normal.xy = mat2(local_rot.xy, local_rot.zw) * normal.xy;
  14. @@ -561,6 +561,13 @@ FRAGMENT_SHADER_CODE
  15.  
  16.  #ifdef USE_SHADOWS
  17.  
  18. +               mat3 inverse_light_matrix = mat3(light_matrix);
  19. +               inverse_light_matrix[0] = normalize(inverse_light_matrix[0]);
  20. +               inverse_light_matrix[1] = normalize(inverse_light_matrix[1]);
  21. +               inverse_light_matrix[2] = normalize(inverse_light_matrix[2]);
  22. +
  23. +               shadow_vec = (inverse_light_matrix * vec3(shadow_vec, 0.0)).xy;
  24. +
  25.                 float angle_to_light = -atan(shadow_vec.x, shadow_vec.y);
  26.                 float PI = 3.14159265358979323846264;
  27.                 /*int i = int(mod(floor((angle_to_light+7.0*PI/6.0)/(4.0*PI/6.0))+1.0, 3.0)); // +1 pq os indices estao em ordem 2,0,1 nos arrays
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement