[Bf-blender-cvs] [d35e525d10a] blender2.8: GPUTexture: Change default comparison mode to GL_NONE.

Clément Foucault noreply at git.blender.org
Thu Jul 6 17:02:25 CEST 2017


Commit: d35e525d10a572250e3bf52c18739812cb012aa0
Author: Clément Foucault
Date:   Thu Jul 6 17:02:16 2017 +0200
Branches: blender2.8
https://developer.blender.org/rBd35e525d10a572250e3bf52c18739812cb012aa0

GPUTexture: Change default comparison mode to GL_NONE.

This default will prevent more errors in the future.
Also compare mode is less used nowadays.

Fixes T51904

===================================================================

M	source/blender/gpu/intern/gpu_lamp.c
M	source/blender/gpu/intern/gpu_texture.c

===================================================================

diff --git a/source/blender/gpu/intern/gpu_lamp.c b/source/blender/gpu/intern/gpu_lamp.c
index 86c40baf5cc..12b9eaf22f8 100644
--- a/source/blender/gpu/intern/gpu_lamp.c
+++ b/source/blender/gpu/intern/gpu_lamp.c
@@ -281,6 +281,10 @@ GPULamp *GPU_lamp_from_blender(Scene *scene, Object *ob, Object *par)
 				return lamp;
 			}
 
+			GPU_texture_bind(lamp->depthtex, 0);
+			GPU_texture_compare_mode(lamp->depthtex, true);
+			GPU_texture_unbind(lamp->depthtex);
+
 			if (!GPU_framebuffer_texture_attach(lamp->fb, lamp->depthtex, 0, 0)) {
 				gpu_lamp_shadow_free(lamp);
 				return lamp;
@@ -338,6 +342,10 @@ GPULamp *GPU_lamp_from_blender(Scene *scene, Object *ob, Object *par)
 				return lamp;
 			}
 
+			GPU_texture_bind(lamp->tex, 0);
+			GPU_texture_compare_mode(lamp->tex, true);
+			GPU_texture_unbind(lamp->tex);
+
 			if (!GPU_framebuffer_texture_attach(lamp->fb, lamp->tex, 0, 0)) {
 				gpu_lamp_shadow_free(lamp);
 				return lamp;
diff --git a/source/blender/gpu/intern/gpu_texture.c b/source/blender/gpu/intern/gpu_texture.c
index a8d0dccb896..48ed3fc1de1 100644
--- a/source/blender/gpu/intern/gpu_texture.c
+++ b/source/blender/gpu/intern/gpu_texture.c
@@ -428,7 +428,7 @@ static GPUTexture *GPU_texture_create_nD(
 	if (tex->depth) {
 		glTexParameteri(tex->target_base, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
 		glTexParameteri(tex->target_base, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
-		glTexParameteri(tex->target_base, GL_TEXTURE_COMPARE_MODE, GL_COMPARE_R_TO_TEXTURE);
+		glTexParameteri(tex->target_base, GL_TEXTURE_COMPARE_MODE, GL_NONE);
 		glTexParameteri(tex->target_base, GL_TEXTURE_COMPARE_FUNC, GL_LEQUAL);
 	}
 	else {
@@ -506,7 +506,7 @@ static GPUTexture *GPU_texture_cube_create(
 	if (tex->depth) {
 		glTexParameteri(tex->target_base, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
 		glTexParameteri(tex->target_base, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
-		glTexParameteri(tex->target_base, GL_TEXTURE_COMPARE_MODE, GL_COMPARE_R_TO_TEXTURE);
+		glTexParameteri(tex->target_base, GL_TEXTURE_COMPARE_MODE, GL_NONE);
 		glTexParameteri(tex->target_base, GL_TEXTURE_COMPARE_FUNC, GL_LEQUAL);
 	}
 	else {




More information about the Bf-blender-cvs mailing list