Solution

Files changed (2) hide show
  1. lab6-shadowmaps/shading.frag +1 -1
  2. lab6-shadowmaps/shading.vert +3 -0
lab6-shadowmaps/shading.frag CHANGED
@@ -42,6 +42,7 @@ uniform float point_light_intensity_multiplier = 50.0;
42
42
  in vec2 texCoord;
43
43
  in vec3 viewSpaceNormal;
44
44
  in vec3 viewSpacePosition;
45
+ in vec4 shadowMapCoord;
45
46
 
46
47
  ///////////////////////////////////////////////////////////////////////////////
47
48
  // Input uniform variables
@@ -135,7 +136,6 @@ void main()
135
136
  float visibility = 1.0;
136
137
  float attenuation = 1.0;
137
138
 
138
- vec4 shadowMapCoord = lightMatrix * vec4(viewSpacePosition, 1.0);
139
139
  #if SOLUTION_USE_BUILTIN_SHADOW_TEST // SOLUTION_CODE >= 8
140
140
  visibility = textureProj(shadowMapTex, shadowMapCoord);
141
141
  #else
lab6-shadowmaps/shading.vert CHANGED
@@ -12,6 +12,7 @@ layout(location = 2) in vec2 texCoordIn;
12
12
  uniform mat4 normalMatrix;
13
13
  uniform mat4 modelViewMatrix;
14
14
  uniform mat4 modelViewProjectionMatrix;
15
+ uniform mat4 lightMatrix;
15
16
 
16
17
  ///////////////////////////////////////////////////////////////////////////////
17
18
  // Output to fragment shader
@@ -19,6 +20,7 @@ uniform mat4 modelViewProjectionMatrix;
19
20
  out vec2 texCoord;
20
21
  out vec3 viewSpaceNormal;
21
22
  out vec3 viewSpacePosition;
23
+ out vec4 shadowMapCoord;
22
24
 
23
25
  void main()
24
26
  {
@@ -26,4 +28,5 @@ void main()
26
28
  texCoord = texCoordIn;
27
29
  viewSpaceNormal = (normalMatrix * vec4(normalIn, 0.0)).xyz;
28
30
  viewSpacePosition = (modelViewMatrix * vec4(position, 1.0)).xyz;
31
+ shadowMapCoord = lightMatrix * vec4(viewSpacePosition, 1.0);
29
32
  }