From b02ccbca9bfc15be9e35dc0b8821ed2f62005dcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cle=CC=81ment=20Foucault?= Date: Thu, 9 May 2024 12:04:49 +0200 Subject: [PATCH] DRW: Fix drw_print on metal Metal doesn't use the same Y direction for the point coordinate. Since this is only used for this shader, do a local fix. --- .../draw/intern/shaders/draw_debug_print_display_frag.glsl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/blender/draw/intern/shaders/draw_debug_print_display_frag.glsl b/source/blender/draw/intern/shaders/draw_debug_print_display_frag.glsl index 46674418fd5..518618aaa40 100644 --- a/source/blender/draw/intern/shaders/draw_debug_print_display_frag.glsl +++ b/source/blender/draw/intern/shaders/draw_debug_print_display_frag.glsl @@ -118,8 +118,10 @@ bool char_intersect(uvec2 bitmap_position) void main() { uvec2 bitmap_position = uvec2(gl_PointCoord.xy * 8.0); +#ifndef GPU_METAL /* Metal has different gl_PointCoord.y. */ /* Point coord start from top left corner. But layout is from bottom to top. */ bitmap_position.y = 7 - bitmap_position.y; +#endif if (char_intersect(bitmap_position)) { out_color = vec4(1);