Skip to content

PrusaSlicer 2.4.0-beta1

Compare
Choose a tag to compare
@lukasmatena lukasmatena released this 25 Oct 14:44
· 7142 commits to master since this release

PrusaSlicer PrusaSlicer 2.4.0-beta1

Summary

This is the first beta release of PrusaSlicer 2.4.0, following 2.4.0-alpha1, 2.4.0-alpha2 and 2.4.0-alpha3. This beta mostly fixes bugs found in alpha3. For new features in the 2.4.0 series, please read the release logs of the 2.4.0 alphas.

To let you enjoy the beta without worries, the beta builds save their profiles into PrusaSlicer-beta directory, so you may use the beta side by side with the current release without ruining your production configuration. If upgrading from any of the PrusaSlicer 2.4.0 alpha release, you may consider to rename your PrusaSlicer-alpha directory to PrusaSlicer-beta.

Send system info

In order to focus our future effort, we decided to optionally collect some general information about the systems PrusaSlicer is commonly executed on. Such system information will help us to deprecate support of obsolete platforms in order to concentrate on up to date hardware and operating systems to reduce maintenance cost, improve PrusaSlicer performance and to bring up new features. Please help us by submitting your system configuration to us, otherwise it may happen that we will deprecate support of some old or not so common systems too early.

The system configuration data collected is strictly anonymous and the full content of the data collected is available to the user for review from the new "Send system info" dialog. A unique system identifier is generated for the machine submitting the system configuration to identify duplicate records submitted multiple times by the same machine. The unique system identifier is anonymized by hashing with MD5 and salted with a "salt", which is unique to the "system info" service. We believe our method is sufficiently anonymous, however we are certainly open to suggestions by the security experts.

When connected to internet, a dedicated dialog will open on application start up (or second application startup, if Configuration Wizard is opened on first start-up), showing exactly what information PrusaSlicer collects. When confirmed, the data is sent to our server using a secure channel (SSL) and the dialog no more shows up at the following application start-ups. No other data than those presented by the "Send system info" dialog are submitted, and it is not possible to trace one's identity based on the data submitted. One can of course decline to submit the system information data.

FDM support improvements with respect to PrusaSlicer 2.4.0-alpha3

FDM supports were improved significantly in PrusaSlicer 2.4.0 alphas. In beta1, the FDM supports were improved further.

A conventional FDM support generator generates support towers based on the differences between successive object layers and PrusaSlicer's support generator is not different. Such a local algorithm often either produces excessive supports, or it does not support long thin features at all. While we are working on a smarter algorithm that takes global geometry of an object into account, it will take us some time to make it ship shape. In the meantime, we made some adjustments to the current local algorithm. Namely, the FDM support generator algorithm was designed before introduction of the support blockers / enforcers and paint-on supports, thus it tried to be smart about not introducing too much supports while not missing supports below thin features, however such algorithm behaved unintuitively. Thus in this release, we switched off some of the unintuitive filtering steps and we rather rely on the user giving hints to the support generator using the support blockers / enforcers and paint-on supports.

We are still fine tuning our print profiles for the new "snug" supports. The "snug" supports behave differently than the old "grid" supports. You may want to experiment with different gaps between object and support interfaces, also the "snug" supports may require more interface layers than the "grid" supports to produce wide enough regions to be printable FDM technology.

  • Disabled enhancement of thin long overhangs to be supported. The enhancement produced supports at object corners, which were difficult to explain #3094.
  • Disabled filtering step that removed support towers in case the support contact island supporting an overhang was completely trimmed by the support / object XY separation distance. Such filtering made sense to reduce excessive supports before introduction of support blockers and paint-on supports, however the filtering step was the reason of PrusaSlicer support generator seemingly not respecting the support overhang threshold and support enforcers #1324.
  • Fixed missing interface layers for snug supports by propagating full overhangs before trimming by the support / object XY separation distance when generating interface layers. This change together with the previous topic significantly improves #6058 #6902.
  • Rounding / merging of snug supports using the closing radius parameter is now smoother, it does not produce sharp corners.
  • When calculating snug support interfaces below support contacts, the projected support contact areas are expanded to produce wider, printable and more stable interfaces. This fixes some missing snug support interfaces.
  • For grid supports, supports supporting steep overhangs are not covered with dense support interfaces, because steep overhangs are mostly self supporting. However this strategy did not work well for the snug supports with narrow towers, thus overhangs with all angles are newly covered with support interfaces #6331.
  • For snug supports the interface layers are newly angled at 45 degrees from the base supports and they alternate their direction by 90 degrees, making the interfaces cohesive.
  • Fixed planning of support interface layers with rafts and larger Z gap for supports than for the raft.
  • Regression to PrusaSlicer 2.4.0-alpha1: Some of the support interfaces were not supported by the sparse support again #7014.
  • Fixed soluble interface support interfaces / non soluble base for support enforcers, where base support was supporting an object without interface layers #2849.

Improvements of painting gizmos

  • 'Smart fill' and 'Pointer' brush types introduced recently into multi material painting gizmo are now available at FDM support and Seam painting gizmos as well.
  • The FDM paint-on supports gizmo newly allows limiting the brush strokes to triangles highlighted by "Highlight by angle" slider. One may let PrusaSlicer highlight the overhangs and one can quickly mark only those highlighted areas that are essential to the success of the print while masking out the non-overhang areas.
  • With clipping plane enabled, the areas clipped by the clipping plane are no more painted.

Seam improvements

When possible, PrusaSlicer newly places seams on internal perimeters close to external seams, reducing travel moves and retractions. For leaky extruders, bowden setups and leaky materials (PET, PVA) reducing travel between perimeters reduces gaps at their starts. The seams between the nested perimeters are not aligned exactly, but they are staggered by a short distance to reduce bulge of the outer most seam #6790, #6400, #6741, #6494, #6186, #5149.

Other improvements with respect to PrusaSlicer 2.4.0-alpha3

  • Circular print beds are newly fully supported: Objects pulled out of circular print beds turn blue and print paths outside of a circular bed are detected. Convex print beds are partially supported: The part of an object outside of the print bed volume is not yet highlighted with blue color. No collision detection is performed for non-convex print beds #5388 #6460.
  • Notifications about new PrusaSlicer versions available for download are newly available for prerelease versions (alphas and betas) as well. Notifications on new alphas and betas can be enabled / disabled in Preferences.
  • Several more improvements regarding notifications (new icons, adjusted timeouts, minimal time notification stays on screen, no focus on hover).
  • Windows specific: After a model is repaired by Netfabb successfully, a notification is shown instead of a modal dialog #7067.
  • Modifiers, support blockers and support enforcers are newly rendered transparent #7076.
  • The mesh simplification tool newly initiates calculation of the preview of the simplified model automatically, the "calculate preview" button is gone. The calculation can be stopped by pressing Esc key.
  • PrusaSlicer highlights toolbar items and print preset options with red blinking arrows after they are selected by the search dialog or when clicking on a hyperlink of a "Tip of the day" notification. The red blinking arrow is newly newly supported by the Preferences dialog as well. For example, clicking the "cog wheel" icon of the "Tip of the day" notification opens the Preferences dialog and a red arrow blinks next to the "enable / disable tip of the day" checkbox.
  • Models with zero volume (for example an STL with one polygon) are no more loaded. Previous versions of PrusaSlicer loaded such files, but these objects did not show on Plater, which was confusing.
  • Reporting of repaired and / or corrupted models has been improved. PrusaSlicer newly distinguishes between three states: 1) Model is fine, 2) model was broken, but it is now fixed, 3) model is still broken. The three states are reflected by the "warning" icon at the side panel: If the model is still broken, red "exclamation" icon is shown. If a mesh was broken but repaired successfully, white "warning" icon is shown.
  • If a mesh was repaired during import into PrusaSlicer, the number of errors fixed is newly saved into 3MF, so that the status of an imported model is not lost.
  • New default shapes were added into the Shape Gallery.
  • Context menu is newly available for custom shapes of the Shape Gallery, which allows to delete a custom shape or to modify its thumbnail. The dialog also newly accepts the Del key.
  • Windows 11 specific: Fixed implicit setting of the dark mode.
  • Travel paths planned by the "avoid crossing perimeters" algorithm no more follow the outermost perimeter, but the 2nd outermost perimeter if possible. This should improve the print surface quality and reduce re-heating of overhangs.
  • Hollowing gizmo newly allows drilling larger holes for inserting magnets #6101, thanks @h-2.
  • "Copy to clipboard" at the "System info" dialog newly encloses the lengthy OpenGL extensions details into a <details> tag, thus helping to make the github issues easier to read #6830.

Bugs fixed

  • Fixed dimples sometimes appearing on multi-material painted objects, often happening on cylindrical objects #7104.
  • Improved detection of seams and their visualization by the G-code viewer. Some of the seam points were missed #6895.
  • Fixed incorrect default context menu if the right mouse button was clicked on empty space in 3D scene when several objects were selected.
  • Fixed some issues due to the recent admesh eradication in PrusaSlicer 2.4.0-alpha3: Fixed import of multi-material AMF files, calculation of mesh volume in the right panel after applying a transformation and flipped normals when importing some 3MFs.
  • Implemented processing of M109 G-code (set hot end temperature and wait) by the G-code viewer #7050 #7099.
  • Save (CTRL+S) is newly enabled for unnamed projects, it is equivalent to Save As #7054.
  • Fix by Netfabb is again available for all models, even those reported as manifold #7063.
  • Numeric inputs in 3D scene newly accept localized decimal separator. For example, one may enter decimal comma into the Cut by plane clipping plane height #7056.
  • Multipart objects are not supported in SLA mode, thus when a new SLA printer is added through the Configuration Wizard, it is only activated if there are no multipart objects on the Plater.
  • Mesh simplification tool did not work correctly when applied on a model volume or a modifier mesh.
  • Object transformation values at the side panel were barely readable with both dark mode and colored background of the coordinate text boxes enabled #7012.
  • Modifier context menu at the side panel was made consistent with the modifier context menu in the 3D scene.
  • With background processing enabled, background processing did not restart after Undo / Redo #7040.
  • Windows specific: Tooltips on "Slice now" and "Send to OctoPrint" buttons were getting in the way when clicking the buttons.
  • Fixed crash when turning on shells visibility in preview with background processing active.
  • Added automatic update of legend when switching on/off travel visibility in preview #7068.
  • Fixed non-uniform scaling of a volume using the part manipulation panel #6380.
  • Windows specific: Dark mode config option is now available in standalone G-Code Viewer.
  • Modifiers added to an object from the Shape Gallery are newly centered first before calculating their initial position relative to the object.
  • Fixed regression wrt. PrusaSlicer 2.4.0-alpha3 due to G-code export parallelization: Standalone G-Code Viewer was again changing timestamp of the imported G-code #7005.
  • Fixed another regression due to G-code export parallelization: M106 (fan speed) was exported on every layer #7094.
  • Fixed crashes with some models on SLA hole drilling.
  • Fixed "out of print bed" indication for objects partly below the print bed.
  • Disabled acceleration control if default_acceleration parameter is zero. The user interface already suggested this condition by graying out the per feature acceleration parameter fields with default_acceleration zeroed, but the G-code generator did not respect that #3409, #6743 thanks @jschuh.
  • Improved fuzzy skin options wording ("walls" instead of "perimeters") #7082, #7083, thanks @nsheridan.
  • Fixed confusing cooling hint when min and max fan speed are equal #3270.
  • Fixed variable layer editing disabled with raft enabled, this was a regression wrt. PrusaSlicer 2.4.0-alpha1 #6999.
  • Fixed paint on supports showing through model in certain orientations #5050.
  • Multi-material painting tool: Fixed incorrect propagation of bottom surfaces with objects partially below print bed #7107.
  • Fixed spurious "Supports print better with detect bridging perimeters" enabled on application start-up #6814.
  • Fixed incorrect estimated print time on G-code horizontal slider for MMU prints #7110.

Build, infrastructure

  • Updated documentation about building on Windows (thanks @jschuh, #6867)

What is in the working

  • Windows 10 / 11 dark mode support. There is no official dark mode support for Win32 controls by Microsoft. We worked hard to skin Win32 controls to simulate dark mode, however the skinning did not quite work for some controls and some of the skinning is now broken again on Windows 11. It seems we will be able to apply some of the hacks discovered by the Notepad++ team to improve the dark mode.