diff --git a/plugins/SimulationView/SimulationPass.py b/plugins/SimulationView/SimulationPass.py index 080b02bd9e..436d5b8723 100644 --- a/plugins/SimulationView/SimulationPass.py +++ b/plugins/SimulationView/SimulationPass.py @@ -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())) - 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()) - 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) + for shader in [self._layer_shader, self._layer_shadow_shader]: + if self._layer_view: + 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 + 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"))