Repository navigation
Releases
PrusaSlicer 3.0.0-alpha14
This is another alpha release of PrusaSlicer 3.0.0. It fixes crashes when adding or selecting MMU printers and missing geometry
when slicing merged parts, both introduced in 3.0.0-alpha13, and several other issues. Please read change logs of 3.0.0-alpha11, 3.0.0-alpha12 and 3.0.0-alpha13 for more detailed description of the new features with respect to 2.9.7.
To let you enjoy the alpha without worries, the alpha builds save their profiles into the PrusaSlicer3-dev directory, so you may use the alpha side by side with the current release without ruining your production configuration. The configuration folder is different from what PrusaSlicer 2.x is using, meaning that PrusaSlicer 2.x and 3.x can run alongside each other without any conflicts.
Changes with respect to 3.0.0-alpha13
- Fixed a crash when selecting a Prusa Connect printer with an MMU, caused by missing feeder information in the hardware configuration (#16210).
- Fixed a crash when adding an MK4S MMU3 printer after updating profiles from 1.0.20 to 1.0.21.
- The "Extruder Assignment" button in the right panel now behaves like the "Print Goals" button: it toggles the Extruder Assignment dialog, appears checked while the dialog is open, and is highlighted when extruder assignment options are modified.
- Editable combo boxes in the right panel (e.g. Fill density) now show the "mixed" state when several objects with different values are selected. Previously, the value of the first object was shown.
- The Legend window in G-code Preview now has a minimum size, so it can no longer become too small to use (#15916).
- Fixed missing geometry when slicing merged parts that do not touch each other: only one of the parts was sliced (#16214).
- CLI: fixed applying per-tool setting overrides when slicing for a single-tool printer. Slicing errors reported by the CLI are now more readable.
- Objects with an empty outline are no longer silently skipped during arrange, so they are correctly reported when arranging finishes.
- Fixed right mouse button clicks that were sometimes ignored, for example after a small camera movement. Right-clicking the bed no longer clears the selection of objects.
- Fixed a crash after switching from a multi-tool printer to a printer with fewer material slots, when a filament other than the first one was selected (Material database).
- Improved security of plugin installation. The plugin ID is now validated before it is used as an install path, the plugin marketplace is locked to its origin, and the plugin ID and version of the downloaded bundle must match what was requested. Thanks to Leonardo Alfonso Maier for participating in our responsible disclosure program.
- Localization: updated the POT file and the list of files with translatable strings. Format strings are now marked as
c++-format, so translators get warnings about broken placeholders. Community dictionaries were merged with the new POT.
PrusaSlicer 2.9.7
This is final release of PrusaSlicer 2.9.7. This is a small maintenance release fixing several security vulnerabilities.
Changes with respect to 2.9.6.
- Fixed an out-of-bounds write when loading a 3MF with a negative bed index.
- Fixed a stack buffer overflow in the
digits()/zdigits()placeholder functions. - Fixed several issues in the downloader from Printables.
- Fixed couple of potencionally exploitable vulnerabilities in
libbgcodelibrary when loading malformed binary G-code files.
Special thanks to @5un9hun for participating in our responsible disclosure program.
PrusaSlicer 3.0.0-alpha13
Summary
This is the third public alpha release of PrusaSlicer 3.0.0.
To let you enjoy the alpha without worries, the alpha builds save their profiles into the PrusaSlicer3-dev directory, so you may use the alpha side by side with the current release without ruining your production configuration. The configuration folder is different from what PrusaSlicer 2.x is using, meaning that PrusaSlicer 2.x and 3.x can run alongside each other without any conflicts.
Restructured 'Add printer' workflow
The whole workflow related to adding printers was redesigned (the "favorites" system presented in the first two 3.x alphas was a temporary solution from the beginning). In this release, the user has to add every printer which they want to use - there is a dedicated "Add printer" button in the printer selection dialog (#15676). The button opens a wizard-like dialog where the user can select a printer and create a named local profile (#15603).
When adding a printer, one can also configure it as "physical" printer (add an IP address, etc.) in the same dialog. Therefore, the locally added printer has a name, configuration (nozzles and sheet) and optionally the "physical" data. Selection of the printer preset itself is now separate from selection of the hardware configuration, and it got a dedicated drop-down in the right panel. See the following screenshot:
Furthermore, there is a new tab in printer configuration dialog, which shows current state of printer connected to Prusa Connect. Selecting a printer from this list uses live configuration of the printer and selects an appropriate configuration and compatible printer preset. (Changing the nozzle to one which is not currently installed is not possible at this point.)
Note that this is still not the final state of how the synchronization with the printer will look, so stay tuned.
Known issue
Under certain circumstances, users of the previous alphas may run into a known and harmless UI glitch, shown in the picture - a "nameless" printer shown on the first start. The changes we did are not completely compatible with configuration left behind by the previous alpha, and while we strive to maintain compatibility between stable releases as much as reasonably possible, handling these edge cases on alphas when features are still under development is not always meaningful way of spending time. If you run into this issue, you can safely ignore it.
Material database support
The Filament selector dialog has a new tab, which allows to select a filament from MDB instead of selecting a logical profile. When PrusaSlicer is connected to Prusa Account, it shows which materials are tagged as favorites in Prusa Connect and allows to filter the view accordingly. Material database is now bundled with the application, it does not not auto-update currently.
SLA printing
Prusa SL1 and SL1S SPEED profiles are restored, SLA slicing and export works from the UI and the CLI, and the SLA support points and hollowing tools were ported to the new UI. Note that current state is equivalent to PrusaSlicer 2.9.4 - the performance improvements introduced in 2.9.5 are yet to be ported.
3D mouse support (#15784)
Support for 3D mouse is now ported from PrusaSlicer 2.x, including free camera rotation. The 3D mouse settings are now in Preferences. On Linux, spacenavd is used when installed (also versions older than 1.0). While the functionality was already present in PrusaSlicer 2.x, it is not just ported - several things were slightly changed (mostly regarding the flexibility of configuration).
Print Goals
The new Print Goals dialog lets the user declare a single intention of what they want to print. This works as a shortcut for setting many different configuration options. It does not modify the underlying slicer configuration; it only overrides it as long as the selected goal is active.
In this alpha we provide print goals for vase mode, soluble supports, and breakaway supports. Vase mode is available for all printers; soluble and breakaway supports require a multi-material printer.
For example, turning on vase mode overrides the perimeter count to 1, sets top layers to 0, and so on. Unlike in PrusaSlicer 2.x, these changes are not permanent and can be reverted simply by disabling the print goal.
The print goals are user-configurable and implemented as Lua plugins, so it is possible to create and share your own print goal configurations. It also means that the override values can be calculated dynamically from the current configuration, which opens the door to many more possibilities.
The Print modes are Lua plugins internally, which opens door to further customizations of the idea.
Plugin marketplace
PrusaSlicer 3.0.0-alpha11 introduced Lua-based plugin system. We now introduce Plugin Marketplace - an online catalogue of plugins you can browse right inside the application (Menu -> Plugins -> Plugin Marketplace). Any plugin can be installed with a single click, and the marketplace shows which plugins you already have and when an update is available. Anyone can download an use a plugin, publishing requires signing in using a Prusa Account.
Every plugin bundle is cryptographically signed and its signature and checksums are verified before installation. Note that the plugin API is still experimental and may change between alpha releases. There are currently just two plugin interfaces, but more will come in future.
The marketplace is now first released to the public and it is therefore empty - we hope that you will not leave it at that for too long. The marketplace contains documentation on how to create a new plugin. Signing is done conveniently using PrusaSlicer CLI options, publishing is handled using the marketplace interface. Note that plugins go through a basic review before being published, to avoid publishing a malicious plugin. While Lua itself is reasonably well sand-boxed, an extra layer of security does definitely not hurt.
"Extruder Assignment" table
While PrusaSlicer allowed to assign extruders to individual features for a long time, the options were buried in Print Settings and were difficult to discover and use. There is now a new dedicated dialog that allows quick and easy access to these options. You can find it in the right panel and we hope that it will make setting up a multi material project much easier.
Window transparency can now be adjusted
There is a new option in Preferences which allows to set the Object list and right panel partially transparent. This may be helpful when working with big projects where keeping track of all the beds and objects can be difficult.
Other improvements with respect to 3.0.0-alpha12
- Loading and saving of 3MF projects and preset files is faster thanks to switching to libdeflate-based compression.
- The internal web view is more robust: its data is isolated and pruned, and initialization failures are handled better.
- G-code Preview: visibility of the toolbar options (travels, wipes, seams, etc.) is now saved and restored between sessions (#15616).
- Color mix dialog: virtual extruders are labelled with filament names, tooltips were replaced with inline descriptions, and filament ratios are now ensured to sum up to 100%.
- Color dropdowns now show the extruder icon with all colors of a multicolor (virtual) extruder.
- Filament Settings: the Material & Temperature page was reorganized so that all temperatures fit without scrolling. Cost, density and spool weight moved into a new "Cost & Weight" group (#15887).
- Preset updater: update checks only download small index archives, which makes them much faster. Full vendor data is downloaded only when a vendor is installed, and installation is more robust (staging on the same volume, atomic renames, version validation, cleanup of leftovers).
- Preset updater: update checks now also run periodically in the background.
- Preset updater: more specific error reporting when an operation fails, improved progress reporting and cleanup of leftover directories.
- The Purging volumes (wiping) dialog was ported to the new UI.
- Debug and trace logging can now be enabled in release builds.
- Object list: parts (volumes) can be reordered by drag and drop within an object.
- Profiles: print preset features are now available as variables in preset conditions.
- Painting tools: the minimum brush radius was lowered to 0.1 mm, and the seam and fuzzy skin painting tools gained the "Height range" fill (e.g. to paint the first layer only).
- Object list: added context menus for objects and parts, including a new "Re...
PrusaSlicer 3.0.0-alpha12
Summary
This is the second public alpha release of PrusaSlicer 3.0.0. This release fixes the most annoying bugs and most frequent crashes found in 3.0.0-alpha11, and also brings several smaller improvements.
To let you enjoy the alpha without worries, the alpha builds save their profiles into the PrusaSlicer3-dev directory, so you may use the alpha side by side with the current release without ruining your production configuration. The configuration folder is different from what PrusaSlicer 2.x is using, meaning that PrusaSlicer 2.x and 3.x can run alongside each other without any conflicts.
Improvements with respect to 3.0.0-alpha11
- The last selected print destination (USB/SD, Connect, physical printer) is now remembered and restored after restarting the app.
- Toggling 'Hide sidebars' now closes all open windows and the choice persists between restarts.
- Background worker threads now crash on an unknown exception instead of silently continuing, improving the odds of getting a usable Sentry report.
- Added an Orthographic/Perspective camera projection switch to Preferences; the setting is persisted and kept in sync between Prepare and Preview screens, and between all projects.
- G-code placeholder parser: added a
ceilfunction andsheet_typeandbed_namevariables. - G-code: emit a
toolchange_countplaceholder variable into the toolchange G-code, for custom filament-change scripts. - 3MF import: when importing into an already-open project, only geometry is imported now (this includes import from Printables).
- Physical Printer editor: restored the "Test" connection button (known from 2.x) and added a CA file browse option (#15618).
- Preset Updater dialog updates: added UI for removing installed preset vendors and other improvements.
- Configuration options
only_one_perimeter_first_layer,top_one_perimeter_typeandfirst_layer_heightare now per-tool (per-extruder) settings rather than global. - Improved behavior while working in Multi-Extruder Print settings dialog
- Cylinder primitive shape is now finer.
Bugfixes
- Changes in Print Settings were not correctly mirrored in Favorites for config options set differently per each tool.
- Fixed a crash when browsing per-object settings.
- Invalid settings warning when incompatible nozzles are selected was not refreshed on configuration update.
- Windows specific: 'Recover project' window would open in a second instance of PrusaSlicer, even though the first one was still open.
- Fixed a startup crash on Linux caused by an invalid/unavailable system locale, by safely constructing a minimal fallback locale (#15747).
- Fixed PrusaSlicer's window stealing OS focus whenever the mouse hovered over the 3D scene — e.g. covering a just-opened "Open Folder" window (#15609).
- Fixed the selected printer's state getting lost when toggling the "Favorites" filter in the printer list.
- Fixed the Welcome dialog, which was impossible to finish when sync with Connect failed. Also improved error reporting. There was also a matching issue when using 'Set as current' feature from the embedded Connect page - that was fixed too. #15597
- Fixed a crash in the Height Range Modifier when the entered range was invalid. #15632
- Fixed a crash when pasting (Ctrl+V) copied volumes back into their source object.
- Fixed loading of project file (integer values were skipped when being loaded into floating-point fields (#15692).
- Fixed several crashes when the scene changed during an in-progress object drag/transform (Select All, undo of a deleted object, bed deletion, object deletion mid-drag).
- Fixed rare crash in
end_filament_gcodeprocessing. - Fixed swapped Int/Float parameter input controls in the Lua plugin dialog (#15611).
- Fixed the UI font size not being saved / resetting to default after restart (#15614).
- Fixed the camera continuing to rotate around the previous printer's bed center after switching to a printer preset with a different bed size.
- Fixed lagging scrolling in some of the UI controls (#15680, #15786).
- Fixed false detection of seams in the Preview (caused by "FLUSH" toolchange block).
- Fixed crashes when switching gizmos mid-interaction - e.g. pressing P while painting the seam (#15633).
- Fixed a crash when splitting a painted object into parts, by clearing painting state before the operation.
- Fixed a crash opening the Text tool from the object list.
- Fixed incorrect position of embossed text volumes loaded from legacy (2.x) 3MF projects (#15805 and #15694).
- Fixed a tooltip/button incorrectly reading "Extruder Settings" instead of "Printer Settings" (#15635).
- Dialogs now default to a maximum size of 100% of the viewport, fixing windows that were cut off with no way to scroll (#15725).
- Fixed hyperlink-suppression settings not working; replaced the two boolean settings with a HyperlinkPolicy (Ask / Always open / Never open) for clearer control, while critical links (e.g. sign-in) always open regardless of policy.
- Fixed arrange transformation application when object rotation was involved (#15606).
- macOS specific: Fixed a bug where native menu bar shortcuts (e.g. Shift+A for Arrange) fired while typing into a text field (#15792). The commands in macOS native menu bar are now disabled while a text input is focused.
- Fixed passing of incorrect bed name to the placeholder parser.
- Fixed occasional crashes on application close caused by lifecycle-related issues.
- Fixed duplicate printers appearing when a local (user) preset file failed to load: system-vendor preset loading is now transactional (all-or-nothing per vendor), while user presets stay on a per-file basis.
- Fixed emitting an M104 preheat command for a tool that does not exist (#15768).
- Linux specific: PrusaAccount login through external browser would open a new (unauthenticated) PrusaSlicer instance.
- Linux specific: Fixed fractional DPI scaling on Linux via custom wxGTK-based scaling (#15675, #15723).
- Improved error handling in cases when the internal webview failed to initialize (#15598).
- Fixed a crash when saving a preset derived from a legacy 3MF project (#15644).
- Fixed Lua TempTower plugin text placement to cope with different fonts being available (#15636).
- Lua API:
emboss_textnow correctly passes the depth and font attribute (#15793). - Lua API: added missing
BedInstRef:printer_config()documentation stub for theHwPrinterConfigclass (#15759). - Linux specific: Fixed a crash caused by an invalid/empty font descriptor when loading fonts for the Emboss/Text tool (#15730). Thanks to @nevesenin (PR #15765).
- Fixed a latent bug in the rendering pipeline (thanks to @darkdi, PR #15640)
Others
PrusaSlicer 3.0.0-alpha11
Summary
This is the first public alpha release of PrusaSlicer 3.0.0. This release comes with completely redesigned internal architecture, new UI, new print profile system, full support of multiple beds and multiple projects and other improvements and bugfixes.
To let you enjoy the alpha without worries, the alpha builds save their profiles into the PrusaSlicer3-dev directory, so you may use the alpha side by side with the current release without ruining your production configuration. The configuration folder is different from what PrusaSlicer 2.x is using, meaning that PrusaSlicer 2.x and 3.x can run alongside each other without any conflicts.
Important note for Linux users: We are now using Flathub as the only official distribution channel of PrusaSlicer on Linux. This alpha version is available in flathub-beta repository.
A detailed change log follows. You can also read the respective article on our blog for a more concise version.
Before we start
While PrusaSlicer alpha builds are generally well polished and almost production ready, it is NOT the case this time. The amount of changes and the need for early feedback has forced us to release an actual alpha, which is expected to be unstable and not polished. What you are seeing is not a production build, this is an unfinished alpha which aims to present the general direction we are taking.
It is also worth noting that the alpha build is not feature complete (when compared to 2.9.6). We are still working on porting various things from PrusaSlicer 2.x and sadly, some of them have to wait for later releases to be fully ready. While we understand that this is a nuisance, a large part of the application was rewritten from scratch and reimplementing everything takes time and effort - PrusaSlicer has surprisingly many features.
You can find the list of unfinished features at the end of this change log.
Congratulations, PrusaSlicer!
Let us now congratulate PrusaSlicer - it is its birthday. Exactly 15 years have passed since Alessandro Ranellucci (@alranel) authored the first commit of this repository. To quote from the README which was a part of that commit:
Slic3r is (er, will be) an STL-to-GCODE translator for RepRap 3D printers, like Enrique's Skeinforge or RevK's E3D.
Notice the future tense. Given what Slic3r was capable of at the time, it was a bold statement. But it turned out that Alessandro was exactly right. What he and other contributors created has later become the core of one of the most widely used family of slicing applications. Let us wish PrusaSlicer all the best for the upcoming years and appreciate the time and effort that people thanklessly sacrificed to make it possible.
Internal architecture refactoring
We can continue with the history lesson. The project originally started in Perl and was later rewritten into C++ in several steps. This alone led to architectural compromises. In addition, the application originally did not support multiextruder printers, SLA printers, wipe tower, multiple beds, filament overrides and other cool features. As PrusaSlicer outgrew the original scope, many of these features were later added (as well as many others), and the project gradually became quite large. However, the architecture of the application was not ready for these big changes. Especially in the last couple of years, it was apparent that implementing anything is becoming more and more difficult because of various hacks which have piled up over time. PrusaSlicer showed classic signs of architectural decay, and it slowed the development down significantly. When we got to a phase where we would decide to rather not fix an obvious bug with the reasoning that the bug is better than what the fix would likely cause, we understood that it got way too far.
Therefore, we have decided to take the long postponed big leap and refactor the internals around current requirements. The amount of technical debt was so large that we made a hard decision to rewrite most of the UI code from scratch (despite knowing that developers usually regret it in the end). The new architecture is designed with carefully defined responsibilities, interfaces and data flow, it is better covered by tests, etc. The architecture of the slicing backend was kept (although substantial changes in the backend code were done as well). We have also improved our internal processes as we went. We are hoping that all this will untie our hands again and allow us to speedily deliver more new features.
As much as we understand that users don't have a reason to care about internals of the software, this is the most important change and it is what made the following improvements possible (and also others which are coming soon).
Multiple beds with different configs
We have introduced multiple beds feature in PrusaSlicer 2.9.0, although the implementation was purposefully minimal - especially regarding 3MF projects. We knew at the time that we were going to do a bigger update, so we decided to not save the bed data into 3MFs, and instead to infer the beds from positions of the objects. This was done so we wouldn't have to break forward compatibility of our projects twice, but only once.
Because the new internals are built around the idea of multiple beds, it is now possible to have multiple beds with different configurations in one project. It is even possible to mix different printers in one project (#13619, #13729, #13858, #13877). We have also removed the limit of 9 beds per project, which was applied in PrusaSlicer 2.9.x for technical reasons (#13866, #14381).
Multiple projects
Thanks to the big overhaul we did, it is now possible to open multiple different projects in one PrusaSlicer instance (#3882, #11007, #12690). The individual projects can be switched using tabs in the top toolbar. The projects share very little context - open dialogs, active tools, etc. are kept per project.
Redesigned UI
While UI changes are always a controversial topic, we have decided that it is time to do a complete overhaul. The UI of PrusaSlicer 2.x was generally a bit intimidating for new users, and many features were hidden. The new UI strives to be more user friendly, but still provide easy access even to the more advanced features - although not everything that we have planned is finished as of this first public alpha.
Let’s take a quick tour!
First of all, there is a new sidebar at the very left, where you can switch between Slicing, Connect and Printables (#13927). The panel also allows access to application Preferences and houses the PrusaAccount login button. (The online features are not mandatory and if you are only interested in slicing, you can opt out from all of them - more on that later.)
Let's further look into the UI on the 'Slicing' tab, which is where most of the work typically happens. We have decided to stop misusing the object list for various things such as object-specific settings, layer range settings, etc. Instead, you now see the object list on the left-hand side, and it serves as an overview of what your project contains, which beds are sliced and similar. The panel grows so it does not obscure more of the scene than necessary, and it is also collapsible when the user does not want to see it at all.
The right panel contains controls related to the currently selected item. When a bed is selected, it allows you to change profiles and settings. When an object is selected, object-specific settings are shown instead. When a tool like Variable Layer Height or Paint-on supports is opened, the right panel is the place where its controls are (PrusaSlicer 2.x used in-scene dialogs, which were a bit intrusive).
The right panel still allows the user to tweak some of the most frequently used configuration options, but unlike in PrusaSlicer 2.x, the list is now configurable. You can add any config option into “favorites” (by checking a star icon in settings) which makes it appear in the right panel. This was long requested by the community (e.g. #1267, #8320, #11105, #12690) and we believe that many non-power users will now have no reason to open the “big” settings at all.
There are many smaller improvements: For example, it is now possible to filter profiles based on filament type or even using fuzzy search (#9303, #11494, #14264). We have modernized 3D rendering to use a PBR-like material render pipeline with ambient occlusion and cast shadows (this is configurable in Preferences and it can be turned off when graphics resources are limited, or if someone simply does not like it). We have also added a "View cube" control to rotate the camera (#4410, #13096), which you can find it in the bottom-left corner (the reason were hesitant about adding it sooner was our fear of possible copyright infringement - we did it now after receiving an explicit approve from the copyright holder).
Both Light and Dark UI modes are supported. Unlike PrusaSlicer 2.x, the styling is now applied even to in-scene dialogs (which had a common look before) and it is generally much more consistent across all three supported platforms. The mode can be switched manually in the Preferences dialog (automatic detection fr...
PrusaSlicer 2.9.6
This is final release of PrusaSlicer 2.9.6, introducing ColorMix feature. Please, read change logs of 2.9.6-beta1 and 2.9.6-rc1 for more detailed description of the new features with respect to 2.9.5.
Changes with respect to 2.9.6-rc1.
- Toolpath moves between
FLUSH_STARTandFLUSH_ENDtags are now not shown in the G-code preview. - Fan speed was incorrectly being restored to the value belonging to wrong filament when toolchange command was prepended by whitespace.
Please note that profiles for INDX printer are not bundled with the application, they will be released through an online update (Configuration -> Configuration Wizard).
PrusaSlicer 2.9.6-rc1
Summary
This is the first release candidate of PrusaSlicer 2.9.6. Read the change log of 2.9.6-beta1 to see complete list of changes compared to 2.9.5.
The release candidate saves its profiles into the regular PrusaSlicer configuration directory. When you first run it, it will search for all configurations produced by alpha or beta versions and offer to create a copy of the latest one.
Improvements with respect to 2.9.6-beta1
- Use area-dominant extruder instead of the default one when applying "Maximum width of a segmented region".
Incorporatefilament_load_timeandfilament_unload_timeinto cooling slowdown logic. - Fan speed is restored to the speed used before a custom toolchange g-code.
- There are new custom G-Code tags
;EXCLUDE_E_STARTand;EXCLUDE_E_ENDallowing to define sections that aren't incorporated into filament consumption. - There are new custom G-Code tags
;FLUSH_STARTand;FLUSH_ENDallowing to define a section for nozzle cleaning. Filament consumption inside this section is shown in the right panel as flush. - Track flush and wipe tower filament consumption per extruder and display per-extruder weight in the right sidebar.
Bug fixes with respect to 2.9.6-beta1
- Fix missing total toolchanges in binary G-code metadata.
- Fix early line wrapping in the ColorMix dialog.
- Fix rendering artifacts in the ColorMix dialog.
- Fix insufficient bridge anchoring in some cases.
- Fix excessive cooling slowdown in multi-tool prints.
- Fix toolchange time added to wrong layer in the layer time visualization in some cases.
- Fix ignoring custom G-Code tags if there is white space before semicolon.
Translations
- Updated POT.
- Update CS, DE, ES, FR, IT, PL dictionaries.
- Updated SLO dictionary (PR#15364, thanks to @jernejp21).
PrusaSlicer 2.9.6-beta1
Summary
This is the first beta release of PrusaSlicer 2.9.6. This release introduces ColorMix - our variation of FullSpectrum, which is a community feature that "mixes" different filaments colors by alternating materials between layers.
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.
Note that Linux builds are distributed through Flatpak only (flathub-beta), and that their release is couple of hours delayed compared to the github release.
ColorMix
The complete story is beyond the scope of this change log and it is described in a separate blog post and there is also a dedicated video.
The idea of creating illusion of color by alternating different-colored filaments was prototyped by community in the recent months, most notably in ratdoux's fork of OrcaSlicer. Other PrusaSlicer forks like BambuStudio and OrcaSlicer have also taken up the idea. We now bring our own implementation into PrusaSlicer.
When using a multicolor printer, there is now a new button in the right panel, just below Filament dropdowns. This button opens a dialog where you can add virtual extruders, each corresponding to a mix of existing extruders in specified ratios. Once virtual extruders exist, you can use them like normal extruder - assign them to volumes and use them in multimaterial painting. The slicing backend takes care of the rest. Most of the implementation is completely new, except for several fragments of the UI code which were taken from BambuStudio.
We spent quite a lot of time and effort on the color-mixing model, because we were not happy with present implementation. The result is available as a separate MIT-licenced module prusa-fdm-mixer, so anyone can keep building on top of it, just like we did.
PrusaSlicer 2.9.5
This is final release of PrusaSlicer 2.9.5, introducing substantial improvements in SLA slicing pipeline. Please, read change logs of 2.9.5-beta2 and 2.9.5-rc1 for more detailed description of the new features with respect to 2.9.4.
Bugfixes with respect to 2.9.5-rc1.
- macOS specific: Fixed a crash when logging out of Prusa Account.
Translations
- Updated ES dictionary.
PrusaSlicer 2.9.5-rc1
Summary
This is the first release candidate of PrusaSlicer 2.9.5. Read the change log of 2.9.5-beta2 to see complete list of changes compared to 2.9.4.
The release candidate saves its profiles into the regular PrusaSlicer configuration directory. When you first run it, it will search for all configurations produced by alpha or beta versions and offer to create a copy of the latest one.
Improvements with respect to 2.9.5-beta2
-
Configurable toolchange ordering: There is a new config option in
Print Settings -> Multiple Extruders -> Advanced -> Toolchange Ordering. It configures whether the number of toolchanges should be optimized by starting each layer with the same tool that the previous layer ended with (which is how it worked before), or whether the sequence of toolchanges on adjacent layers should be exactly the same (if possible). The latter means there are more toolchanges, but multicolor models generally look better because previous layer has time to cool before being printed on. -
Moved couple of SLA parameters to Expert mode.
Translations
- Updated POT.
- Update CS, DE, ES, FR, IT, JA, PL dictionaries.