With the holidays around the corner, we prepared an early gift for you – the final version of PrusaSlicer 2.4! With multi-material painting, improved supports, shape gallery… the list of new features is once again nearly endless! Big thanks go to all testers of the alpha, beta, and release candidate versions, your feedback is much appreciated.
What’s New In PrusaSlicer 2.4
Before we jump into a detailed description of new features, here’s a quick overview of the biggest additions:
- Multi-material painting
- Improved supports and bridging
- Shape gallery
- Fuzzy skin
- Windows dark mode
- Brim for individual objects
- Negative volumes
- Automatic color change for logos and signs
- Tip of the day notifications
- Model simplification
- Support for 3DLabPrint airplane models
- New 3rd party printer profiles
- …and more!
You can download PrusaSlicer for all Windows, Mac, Linux and we even provide 64bit ARM builds for devices such as Raspberry Pi and ARM Chromebooks.
We also keep expanding the PrusaSlicer documentation, where you can read a detailed description of its functions with examples of their use.
Preparing models for multi-material FDM prints used to be a complicated and time-consuming process. With this release of PrusaSlicer, coloring an object requires just a handful of clicks with the smart fill and brushstroke operations!
In PrusaSlicer 2.3, we introduced paint-on supports and seams. Seeing the painting tools in PrusaSlicer, many of you asked for similar tools to help with multi-material printing. An easy way to paint models was something we wanted to do for years, ever since we released the first Multi Material upgrade. But this problem is significantly more complex than it may initially seem. First of all, a regular brush tool we implemented for painting supports and seams would make this just partially easier. You would still have to tediously trace edges with every color. And second, the color can’t be applied just on the surface, it needs to extend inwards. Otherwise, the two polymers would not bind together well and it would be easy to peel the colors off.
To make coloring quick and easy, we implemented the Smart fill and Bucket fill tools. With the Smart fill tool selected, as you hover the mouse above the model, you get a real-time preview of the automatically detected region to paint. The paint fills a region below the mouse cursor up to a sharp edge, with the threshold angle adjustable. You can also quickly swap continuous patches of color with the Bucket fill tool. Of course, you can also zoom in and use the Brush tool to paint manually. It will automatically split big triangles into smaller ones, so you’ll have enough resolution for your masterpieces. 🙂 During slicing, the painted regions are cleverly extended inwards, giving the different colors/polymers the best chance of binding together.
Improved FDM Supports and New Bridging Mode
One of the most frequent (and rightful) complaints from the community is about PrusaSlicer’s supports. With this release, we have redesigned supports and significantly improved them. We are very well aware of the many requests for Tree supports and we’re planning to add them in the future. But with our new supports, you might find your craving for tree supports significantly lower. 🙂
The default grid supports have a very well-defined minimum area, making them very stable. However, they tend to leak out of regions they support along the walls of the object. We introduce a new type of “Snug” supports. These supports maintain the shape of the overhang, so they do not leak to the walls. The trade-off is the possibility of lower stability of tall and thin support pillars. We are leaving the grid supports as the default, for now, so make sure you switch them manually if you want to try them.
You can now set the support contact distance on the top and bottom independently. If you enable “Support on build plate only”, the support columns will be trimmed to not land on top of the object. The expansion of the first layer is now configurable (very common request). Prints on top of a raft now look better. When you use support enforcers (paint-on or modifier shapes), they will take over “supports on build plate only” and over “don’t support bridges”. And there are many other small improvements.
You can highlight overhangs when painting supports. Using a new checkbox you can limit the brush strokes only to the highlighted overhanging triangles. Lastly, the “Smart fill” tool is also available when painting supports.
New Bridging Mode
For historic reasons (explained in detail in the changelog), PrusaSlicer used to print bridges with extremely thick lines. This makes bridging very reliable and lets you bridge longer distances, but they didn’t look very good. The new default behavior uses your current layer height for bridging, making bridging reliable for shorter distances, but looking significantly better. This is the strategy that most modern slicers use. You can switch to the old behavior by enabling the “Thick bridges” option. Since the first solid layer above supports uses the bridging settings, this change also has a big impact on how supported overhangs look.
Overall, supports should now be easier to remove, more customizable and the supported areas should look better. We will continue tweaking their settings in our automatically updating profiles.
The new built-in shape gallery provides a quick and easy way to access your most used models, whether you use them as modifiers or to be placed on the platter and printed. The default shapes include basic primitives (cube, cylinder, sphere…) as well as other useful objects, such as a helper disk or a recycling symbol. You can expand the library with your own models. This could be your company logo, a modifier shape that you use often, or just a model you print over and over again. If you add a model, it will get an automatically generated thumbnail. However, you can replace the generated PNG thumbnail with your own image.
We plan to expand the shape gallery functionality in future releases. We’ll likely add a folder/tab system, so you can organize the shapes. We’re also planning to add a text generator. And we’ll expand the library of the default shapes. If you have a suggestion for a model that should be included by default, let us know!
Fuzzy skin lets you create a rough fiber-like texture on the sides of your models by randomly offsetting the perimeter points. It produces surprisingly nice results suitable for tool handles or just to give the print surface a new interesting look. Or to hide print imprecisions. You can also use modifiers to apply fuzzy skin only to a portion of your model.
We have ported this popular feature from Cura. So a big thanks goes to the Cura team for keeping it open-source!
2-4× Faster G-code Generation
We have parallelized and optimized the G-Code export. This results in significant improvement of performance. The total slicing time is now 2× to 4× faster, with higher speed up achieved on high-end CPUs with many cores and threads.
Windows Dark Mode
PrusaSlicer already supported dark mode on OSX and Linux, based on popular demand, we implemented dark mode for Windows as well. This took significantly more effort than we expected. Unlike OSX and Linux, Windows has no official dark mode for Win32 controls, which our multi-platform GUI library (wxWidgets) uses. So we embarked on a journey to implement it ourselves. We started skinning the existing Win32 components and implementing replacements for those, which were not skinnable. Luckily, we discovered Notepad++! As far as we’re aware, Notepad++ is the only Win32 open-source application that implements Dark Mode to a reasonable extent. We ended up using some of the source code from Notepad++ interfacing with the unpublished Dark Mode API, which is based on this project.
More Awesome Features
Brim For Individual Objects, Inner Brim
Brim settings are now object-specific. That means you can turn on brim just for some of the objects, use different brim widths for individual objects, etc. This seemingly small change required a surprisingly significant change of PrusaSlicer’s code. You can now also select to generate outer brim, inner brim, or both.
In previous versions, elephant foot compensation (EFC) was applied on the first layer of the object, while the brim was left as if no EFC was applied. This leads to a small gap between the object and the brim. When printing, this gap should be filled due to the elephant foot effect. However, this made the actual sticking of the brim quite sensitive to the adjustment of first layer calibration. And sometimes it led to inadequate attachment of the brim to the object. Starting with this release, the brim is generated after EFC of the object, without the gap. But the offset of the brim can be adjusted with a new configuration parameter “brim_separation”.
The negative volume lets you subtract one mesh from another. Similarly how boolean operators work in other 3D programs. That way you can, for example, create easily resizable holes directly in PrusaSlicer. Or you can load one of the objects from the new Shape gallery as the negative volume.
Automatic color change for logos and signs
When PrusaSlicer detects the model looks like a logo or a sign, a notification will offer you to automatically add color changes to the correct heights. This feature was proposed by Richard Horne, thank you for the suggestion! It saves you time and removes the guesswork from inserting the color changes at the right height.
Tip Of The Day Notifications
As is evident from this long article, PrusaSlicer grows more powerful every day. Offering many unique features not found in other slicers. The downside of adding new features is the ever-increasing complexity of the program. To streamline everyday slicing, many features are accessible through hotkeys and keyboard modifiers (Ctrl / Alt + mouse key). In version 2.3, we added the search function. Now, we present “Did you know” hints inside a notification, often providing a hyperlink to highlight a user interface element (toolbar button, configuration parameter) or to open the documentation in a web browser. Every time you launch PrusaSlicer, one hint notification is displayed, presented by our trusty Clippy Jo. You can even print him! 🙂 We did our best to fill the tips with actual useful information and little-known features, described in short, digestible bits. But of course, you can disable them in preferences.
3D scans and sculpted models often have a huge number of triangles, making them difficult to work with. These files can slow PrusaSlicer down, take a very long time to slice and even slow down FDM 3d printers, due to the huge number of short toolpaths generated. You can reduce the number of triangles in a mesh using the new Simplify mesh feature. Right-click the model and pick Simplify model from the context menu. You can limit the simplification either by detail level or by the ratio of triangles to remove.
This feature can also be used to create the “Low-poly effect” directly in PrusaSlicer.
Support For 3DLabPrint Airplane Models
PrusaSlicer newly supports slicing of 3DLabPrint airplane models. These 3DLabPrint models were designed to be sliced with Simplify3D with a single perimeter and no infill to produce a lightweight wing reinforced by single perimeter ribs. From the solid geometry point of view, these models contain overlapping bodies and are not valid solid models. But because the models were designed specifically for Simplify3D and the way it evaluates such objects, the exported G-code was correct. To allow slicing the 3DLabPrint models, PrusaSlicer implements a new “Slicing Mode” option, allowing one to switch between the “Positive” (default) and “Even / Odd” fill rule. Use the “Even / Odd” option to slice 3DLabPrint airplanes correctly. Yet another new “Slicing Mode” option “Close Holes” makes PrusaSlicer fill in all internal structures.
When you upload the G-code via the network, a new progress bar is displayed as a special notification. And the existing “Print Host Upload Queue” dialog newly supports sorting by columns and a file size column has been added.
Sequential Print Collision Zone Visualization
When you enable sequential printing, there is always a risk that the print head will hit some of the completed objects while printing another object. PrusaSlicer can check for such collisions and warn you. In the past versions, users were sometimes confused why they’re getting the warning. Thinking they have enough clearance around each object. In PrusaSlicer 2.4, the clearance areas are now visualized in the scene when moving objects and in case of a collision. This makes it very easy to spot the problem.
SLA Auto Orientation
For a few versions now, PrusaSlicer has had a feature that automatically optimizes the orientation of a model for printing on (M)SLA printers. In PrusaSlicer 2.3 we have changed the SLA auto-orientation algorithm, but some users were not happy about the change. In PrusaSlicer 2.4 we newly let the user choose from 3 different auto-orientation algorithms:
- Best surface quality
- Reduced overhang slopes (minimum supports)
- Lowest Z height (lowest print time)
You can now easily compare the differences between 2 profiles with a special view. Enable it by selecting Window-Compare presets.
G-Code Text Viewer On The Side
When you drag the horizontal slider in the preview screen, you can inspect the order of moves in the current layer. Newly, we also display the generated G-code on the left side of the screen, including the line number. This can be used for advanced G-code analysis. You can, for example, find the perfect spot where to place a custom G-code using an external text editor.
Send System Info
In order to focus our future efforts, 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 bring up new features. The system configuration data collected are strictly anonymous and you can inspect the full content in the “Send system info” dialog. This prompt is only displayed once. We want to thank in advance everyone who decides to share their system configuration with us.
Moving The Object Below The Print Bed
Based on many requests, we are newly allowing an object to be moved below the print bed to print just the part of the object above the print bed. Arguably this was already doable with the “Cut” tool. But the new way is much simpler to use and very handy, for example, if you just need to flatten the bottom of an uneven object to be printable without a raft. There is also a new button “Drop to bed” at the object manipulation panel to move the object back to the print bed. The intersection of the model with the bed is visualized with a white outline. Moving objects below the print bed is not allowed in SLA mode, for now. It would make the placement of SLA supports confusing.
And even more news!
Thanks to the community contributions, we added more 3rd party printer profiles, including those for Voron printers. You can switch the “printable” property for multiple objects at once. When closing a project, you will now be warned about unsaved changes. Sliders now have a dedicated button to type-in an exact value. And the list goes on and on!
If you want to read the full changelog, check PrusaSlicer’s GitHub releases page. We suggest reading them chronologically, starting with the PrusaSlicer 2.4-alpha1 changelog.
What should we add next?
Do you have a feature in mind that you’d love to see in PrusaSlicer? Let us know in the comments, tag us (@Prusa3D) on Twitter or create a new GitHub issue. We have plenty of ideas on the to-do list already, but we shift our priorities based on your feedback!
Version after version, the PrusaSlicer team keeps pushing the limit of what you can do in a slicer and we are very proud of their work. Many new exciting features are already in the works but didn’t make the cut for the 2.4 stable version. We’re looking forward to showing them to you in 2022! 🙂