diff --git a/code/def_files/data/effects/main-g.sdr b/code/def_files/data/effects/main-g.sdr index 2e20791ff81..6904e113ed3 100644 --- a/code/def_files/data/effects/main-g.sdr +++ b/code/def_files/data/effects/main-g.sdr @@ -163,9 +163,6 @@ out VertexOutput { gl_Position = shadow_proj_matrix[instanceID] * gl_in[vert].gl_Position; #prereplace ENDIF_FLAG //MODEL_SDR_FLAG_TRANSFORM - if(gl_Position.z < -1.0) - gl_Position.z = -1.0; - vertOut.position = gl_in[vert].gl_Position; vertOut.normal = vertIn[vert].normal; vertOut.texCoord = vertIn[vert].texCoord; diff --git a/code/graphics/opengl/gropengltnl.cpp b/code/graphics/opengl/gropengltnl.cpp index 0c259cdde9d..9ed9f6d6a8c 100644 --- a/code/graphics/opengl/gropengltnl.cpp +++ b/code/graphics/opengl/gropengltnl.cpp @@ -697,6 +697,8 @@ void gr_opengl_shadow_map_start(matrix4 *shadow_view_matrix, const matrix *light glClearColor(0.0f, 0.0f, 0.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + glEnable(GL_DEPTH_CLAMP); + Rendering_to_shadow_map = true; Glowpoint_override_save = Glowpoint_override; Glowpoint_override = true; @@ -715,6 +717,8 @@ void gr_opengl_shadow_map_end() if(!Rendering_to_shadow_map) return; + glDisable(GL_DEPTH_CLAMP); + gr_end_view_matrix(); Rendering_to_shadow_map = false;