From 40205eb181eb56c32fb1c4a3a32d106bfe35668d Mon Sep 17 00:00:00 2001 From: Ian McInerney Date: Tue, 3 Mar 2026 18:53:00 +0000 Subject: [PATCH] Remove extra DNP condition in FP rendering path DNP footprints have a control layer for if they should be shown, which is handled by the IsFootprintShown() method, so we shouldn't gate them unconditionally just because of their DNP property. Fixes https://gitlab.com/kicad/code/kicad/-/issues/23316 --- 3d-viewer/3d_rendering/opengl/render_3d_opengl.cpp | 4 ---- 3d-viewer/3d_rendering/raytracing/create_scene.cpp | 4 ---- 2 files changed, 8 deletions(-) diff --git a/3d-viewer/3d_rendering/opengl/render_3d_opengl.cpp b/3d-viewer/3d_rendering/opengl/render_3d_opengl.cpp index 2391de9508..2679123ed2 100644 --- a/3d-viewer/3d_rendering/opengl/render_3d_opengl.cpp +++ b/3d-viewer/3d_rendering/opengl/render_3d_opengl.cpp @@ -1070,10 +1070,6 @@ void RENDER_3D_OPENGL::get3dModelsSelected( std::list &aDstRender { if( m_boardAdapter.IsFootprintShown( fp ) ) { - // Skip 3D models for footprints that are DNP in the current variant - if( fp->GetDNPForVariant( currentVariant ) ) - continue; - const bool isFlipped = fp->IsFlipped(); if( aGetTop == !isFlipped || aGetBot == isFlipped ) diff --git a/3d-viewer/3d_rendering/raytracing/create_scene.cpp b/3d-viewer/3d_rendering/raytracing/create_scene.cpp index 6f1a751b62..9f78f23bc3 100644 --- a/3d-viewer/3d_rendering/raytracing/create_scene.cpp +++ b/3d-viewer/3d_rendering/raytracing/create_scene.cpp @@ -1931,10 +1931,6 @@ void RENDER_3D_RAYTRACE_BASE::load3DModels( CONTAINER_3D& aDstContainer, if( !fp->Models().empty() && m_boardAdapter.IsFootprintShown( fp ) ) { - // Skip 3D models for footprints that are DNP in the current variant - if( fp->GetDNPForVariant( currentVariant ) ) - continue; - double zpos = m_boardAdapter.GetFootprintZPos( fp->IsFlipped() ); VECTOR2I pos = fp->GetPosition();