From e92dc96767260d1d98655ba4d2e13fc656c5fb07 Mon Sep 17 00:00:00 2001 From: Mario Luzeiro Date: Wed, 21 Apr 2021 23:56:11 +0100 Subject: [PATCH] 3D-Viewer: fix issue with solder mask Fixes https://gitlab.com/kicad/code/kicad/issues/8272 --- 3d-viewer/3d_rendering/legacy/layer_triangles.cpp | 4 +--- 3d-viewer/3d_rendering/legacy/render_3d_legacy.cpp | 6 +----- 3d-viewer/common_ogl/ogl_utils.cpp | 6 +++--- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/3d-viewer/3d_rendering/legacy/layer_triangles.cpp b/3d-viewer/3d_rendering/legacy/layer_triangles.cpp index 42ea3a9711..3ea7909b49 100644 --- a/3d-viewer/3d_rendering/legacy/layer_triangles.cpp +++ b/3d-viewer/3d_rendering/legacy/layer_triangles.cpp @@ -648,9 +648,7 @@ GLuint OPENGL_RENDER_LIST::generate_top_or_bot_seg_ends( glEnable( GL_TEXTURE_2D ); glBindTexture( GL_TEXTURE_2D, aTextureId ); - setBlendfunction(); - - glAlphaFunc( GL_GREATER, 0.98f ); + glAlphaFunc( GL_GREATER, 0.2f ); glEnable( GL_ALPHA_TEST ); glNormal3f( 0.0f, 0.0f, aIsNormalUp?1.0f:-1.0f ); diff --git a/3d-viewer/3d_rendering/legacy/render_3d_legacy.cpp b/3d-viewer/3d_rendering/legacy/render_3d_legacy.cpp index 2799d79ede..1df068ed08 100644 --- a/3d-viewer/3d_rendering/legacy/render_3d_legacy.cpp +++ b/3d-viewer/3d_rendering/legacy/render_3d_legacy.cpp @@ -982,7 +982,7 @@ bool RENDER_3D_LEGACY::initializeOpenGL() if( !circleImage ) return false; - unsigned int circleRadius = ( SIZE_OF_CIRCLE_TEXTURE / 2 ) - 0; + unsigned int circleRadius = ( SIZE_OF_CIRCLE_TEXTURE / 2 ) - 4; circleImage->CircleFilled( ( SIZE_OF_CIRCLE_TEXTURE / 2 ) - 0, ( SIZE_OF_CIRCLE_TEXTURE / 2 ) - 0, @@ -993,10 +993,6 @@ bool RENDER_3D_LEGACY::initializeOpenGL() circleImageBlured->EfxFilter_SkipCenter( circleImage, IMAGE_FILTER::GAUSSIAN_BLUR, circleRadius - 8 ); - circleImage->EfxFilter_SkipCenter( circleImageBlured, IMAGE_FILTER::GAUSSIAN_BLUR, circleRadius - 8 ); - - circleImageBlured->EfxFilter_SkipCenter( circleImage, IMAGE_FILTER::GAUSSIAN_BLUR, circleRadius - 8 ); - m_circleTexture = OglLoadTexture( *circleImageBlured ); delete circleImageBlured; diff --git a/3d-viewer/common_ogl/ogl_utils.cpp b/3d-viewer/common_ogl/ogl_utils.cpp index ee66be4890..0628acfef5 100644 --- a/3d-viewer/common_ogl/ogl_utils.cpp +++ b/3d-viewer/common_ogl/ogl_utils.cpp @@ -81,9 +81,9 @@ GLuint OglLoadTexture( const IMAGE& aImage ) ori++; - dst[0] = v; - dst[1] = v; - dst[2] = v; + dst[0] = 255; + dst[1] = 255; + dst[2] = 255; dst[3] = v; dst+= 4; }