Changeset f7d35da in opengl-game for color.frag


Ignore:
Timestamp:
Jun 10, 2018, 9:31:48 PM (8 years ago)
Author:
Dmitry Portnoy <dmp1488@…>
Branches:
feature/imgui-sdl, master, points-test
Children:
5c403fe
Parents:
0d5c100
Message:

Add a system to keep track of which keys are pressed or held down and add another light source to help illuminate the scene from different directions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • color.frag

    r0d5c100 rf7d35da  
    11#version 410
    22
    3 in vec3 position_eye, normal_eye, color, light_position_eye;
     3in vec3 position_eye, normal_eye, color, light_position_eye, light2_position_eye;
    44
    55out vec4 frag_color;
     
    2424
    2525  // diffuse intensity
    26   vec3 Id = Ls * color * dot_prod;
     26  vec3 Id = Ld * color * dot_prod;
     27
     28  vec3 direction_to_light2_eye = normalize(light2_position_eye - position_eye);
     29  float dot_prod2 = max(dot(direction_to_light2_eye, normal_eye), 0.0);
     30
     31  // diffuse intensity
     32  vec3 Id2 = Ld * color * dot_prod2;
     33
     34  vec3 surface_to_viewer_eye = normalize(-position_eye);
    2735
    2836  vec3 reflection_eye = reflect(-direction_to_light_eye, normal_eye);
    29   vec3 surface_to_viewer_eye = normalize(-position_eye);
    3037  float dot_prod_specular = max(dot(reflection_eye, surface_to_viewer_eye), 0.0);
    3138  float specular_factor = pow(dot_prod_specular, specular_exponent);
    3239
     40  vec3 reflection_eye2 = reflect(-direction_to_light2_eye, normal_eye);
     41  float dot_prod_specular2 = max(dot(reflection_eye2, surface_to_viewer_eye), 0.0);
     42  float specular_factor2 = pow(dot_prod_specular2, specular_exponent);
     43
    3344  // specular intensity
    3445  vec3 Is = Ls * Ks * specular_factor;
     46  vec3 Is2 = Ls * Ks * specular_factor2;
    3547
    36   frag_color = vec4(Is + Id + Ia, 1.0);
     48  frag_color = vec4(Is + Id + Ia + Is2 + Id2, 1.0);
    3749}
Note: See TracChangeset for help on using the changeset viewer.