Merge pull request #20372 from Ultimaker/CURA-12272_fnfill-visible-in-preview-layer-but-disabled

Fix visibility settings not being applied for lower layers
This commit is contained in:
HellAholic 2025-03-10 16:13:53 +01:00 committed by GitHub
commit 3227f68611
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -67,39 +67,40 @@ class SimulationPass(RenderPass):
if not self._compatibility_mode:
self._layer_shader.setUniformValue("u_starts_color", Color(*Application.getInstance().getTheme().getColor("layerview_starts").getRgb()))
for shader in [self._layer_shader, self._layer_shadow_shader]:
if self._layer_view:
self._layer_shader.setUniformValue("u_max_feedrate", self._layer_view.getMaxFeedrate())
self._layer_shader.setUniformValue("u_min_feedrate", self._layer_view.getMinFeedrate())
self._layer_shader.setUniformValue("u_max_thickness", self._layer_view.getMaxThickness())
self._layer_shader.setUniformValue("u_min_thickness", self._layer_view.getMinThickness())
self._layer_shader.setUniformValue("u_max_line_width", self._layer_view.getMaxLineWidth())
self._layer_shader.setUniformValue("u_min_line_width", self._layer_view.getMinLineWidth())
self._layer_shader.setUniformValue("u_max_flow_rate", self._layer_view.getMaxFlowRate())
self._layer_shader.setUniformValue("u_min_flow_rate", self._layer_view.getMinFlowRate())
self._layer_shader.setUniformValue("u_layer_view_type", self._layer_view.getSimulationViewType())
self._layer_shader.setUniformValue("u_extruder_opacity", self._layer_view.getExtruderOpacities())
self._layer_shader.setUniformValue("u_show_travel_moves", self._layer_view.getShowTravelMoves())
self._layer_shader.setUniformValue("u_show_helpers", self._layer_view.getShowHelpers())
self._layer_shader.setUniformValue("u_show_skin", self._layer_view.getShowSkin())
self._layer_shader.setUniformValue("u_show_infill", self._layer_view.getShowInfill())
self._layer_shader.setUniformValue("u_show_starts", self._layer_view.getShowStarts())
shader.setUniformValue("u_max_feedrate", self._layer_view.getMaxFeedrate())
shader.setUniformValue("u_min_feedrate", self._layer_view.getMinFeedrate())
shader.setUniformValue("u_max_thickness", self._layer_view.getMaxThickness())
shader.setUniformValue("u_min_thickness", self._layer_view.getMinThickness())
shader.setUniformValue("u_max_line_width", self._layer_view.getMaxLineWidth())
shader.setUniformValue("u_min_line_width", self._layer_view.getMinLineWidth())
shader.setUniformValue("u_max_flow_rate", self._layer_view.getMaxFlowRate())
shader.setUniformValue("u_min_flow_rate", self._layer_view.getMinFlowRate())
shader.setUniformValue("u_layer_view_type", self._layer_view.getSimulationViewType())
shader.setUniformValue("u_extruder_opacity", self._layer_view.getExtruderOpacities())
shader.setUniformValue("u_show_travel_moves", self._layer_view.getShowTravelMoves())
shader.setUniformValue("u_show_helpers", self._layer_view.getShowHelpers())
shader.setUniformValue("u_show_skin", self._layer_view.getShowSkin())
shader.setUniformValue("u_show_infill", self._layer_view.getShowInfill())
shader.setUniformValue("u_show_starts", self._layer_view.getShowStarts())
else:
#defaults
self._layer_shader.setUniformValue("u_max_feedrate", 1)
self._layer_shader.setUniformValue("u_min_feedrate", 0)
self._layer_shader.setUniformValue("u_max_thickness", 1)
self._layer_shader.setUniformValue("u_min_thickness", 0)
self._layer_shader.setUniformValue("u_max_flow_rate", 1)
self._layer_shader.setUniformValue("u_min_flow_rate", 0)
self._layer_shader.setUniformValue("u_max_line_width", 1)
self._layer_shader.setUniformValue("u_min_line_width", 0)
self._layer_shader.setUniformValue("u_layer_view_type", 1)
self._layer_shader.setUniformValue("u_extruder_opacity", [[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]])
self._layer_shader.setUniformValue("u_show_travel_moves", 0)
self._layer_shader.setUniformValue("u_show_helpers", 1)
self._layer_shader.setUniformValue("u_show_skin", 1)
self._layer_shader.setUniformValue("u_show_infill", 1)
self._layer_shader.setUniformValue("u_show_starts", 1)
shader.setUniformValue("u_max_feedrate", 1)
shader.setUniformValue("u_min_feedrate", 0)
shader.setUniformValue("u_max_thickness", 1)
shader.setUniformValue("u_min_thickness", 0)
shader.setUniformValue("u_max_flow_rate", 1)
shader.setUniformValue("u_min_flow_rate", 0)
shader.setUniformValue("u_max_line_width", 1)
shader.setUniformValue("u_min_line_width", 0)
shader.setUniformValue("u_layer_view_type", 1)
shader.setUniformValue("u_extruder_opacity", [[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]])
shader.setUniformValue("u_show_travel_moves", 0)
shader.setUniformValue("u_show_helpers", 1)
shader.setUniformValue("u_show_skin", 1)
shader.setUniformValue("u_show_infill", 1)
shader.setUniformValue("u_show_starts", 1)
if not self._tool_handle_shader:
self._tool_handle_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "toolhandle.shader"))