From 65724841b6878041e61d43ae49a5be9e4b3fcd28 Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 2 Jan 2018 15:13:07 +0000 Subject: [PATCH] Shader discard doesn't seem to work well on mobile, remove it * Instead we write transparent black when out of bounds. This only works when we're blending, but the cases that we don't blend are when we do a blit to a precisely sized output target with no offset, so it shouldn't cause a problem. --- renderdoc/data/glsl/texdisplay.frag | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/renderdoc/data/glsl/texdisplay.frag b/renderdoc/data/glsl/texdisplay.frag index b3cf0dea4..3fb03fbd0 100644 --- a/renderdoc/data/glsl/texdisplay.frag +++ b/renderdoc/data/glsl/texdisplay.frag @@ -92,14 +92,18 @@ void main(void) { // by convention display 1D textures as 100 high if(scr2.x < 0.0f || scr2.x > 1.0f || scr2.y < 0.0f || scr2.y > 100.0f) - discard; + { + color_out = vec4(0, 0, 0, 0); + return; + } } else { if(scr2.x < 0.0f || scr2.y < 0.0f || scr2.x > 1.0f || scr2.y > 1.0f) { - discard; + color_out = vec4(0, 0, 0, 0); + return; } }