From 29356e2bf76682cbf1d33ffcd0691cf1cd707213 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Wed, 20 Nov 2024 18:25:54 +0100 Subject: [PATCH] Fix: Overlay-Next: Loose edges is drawn with less intensity when selected This was caused by the fresnel effect darkening the selection color when there was no normal attribute available. Now default to no darkening when no attribute is available. --- .../draw/engines/overlay/shaders/overlay_wireframe_vert.glsl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/blender/draw/engines/overlay/shaders/overlay_wireframe_vert.glsl b/source/blender/draw/engines/overlay/shaders/overlay_wireframe_vert.glsl index 799213d9657..aaf0933b4db 100644 --- a/source/blender/draw/engines/overlay/shaders/overlay_wireframe_vert.glsl +++ b/source/blender/draw/engines/overlay/shaders/overlay_wireframe_vert.glsl @@ -95,7 +95,9 @@ void main() /* Noop */ #else bool no_attr = all(equal(nor, vec3(0))); - vec3 wnor = no_attr ? drw_view.viewinv[2].xyz : normalize(normal_object_to_world(nor)); + /* If no attribute is available, use a direction perpendicular + * to the view to have full brightness. */ + vec3 wnor = no_attr ? drw_view.viewinv[1].xyz : normalize(normal_object_to_world(nor)); if (isHair) { mat4 obmat = hairDupliMatrix;