Josef Průša

Vydáváme PrusaSlicer 2.0 s hromadou novinek!

20. 05. 2019 | by josefprusa

celé tři roky běží náš in-house vývoj naší verze Slic3ru, ke které jsme pak pro lepší rozlišení přidali přízvisko PE – Prusa Edition. Podařilo se nám do ni narvat neskutečné množství funkcí, jenže komunita má tendenci názvy Slic3r (původní program) a Slic3r PE (naše verze) často zaměňovat – s dalším přívalem novinek tedy nastal ideální čas pro přejmenování! Pojďme se podívat na to, co můžete od PrusaSliceru 2.0 očekávat.

V současné době se o vývoj PrusaSliceru stará přímo u nás ve firmě sedm lidí. Jedním z jejich největších úspěchů je mimo jiné to, že se jim podařilo kompletně se zbavit kódu, který byl psaný v Perlu a už nám delší dobu nevyhovoval. Mimochodem, vývojem jsme strávili přes 21440 hodin, vytvořili jsme 5769 commitů a vydali 61 verzí!

A nyní v Prusa Research otevíráme novou kapitolu vývoje našeho sliceru. Jednou z prvních velkých změn, kterých si po spuštění PrusaSliceru 2.0.0 všimnete, je přepracované uživatelské rozhraní a podpora pro MSLA 3D tiskárny. Ale rozhodně to není vše – v následujícím textu si posvítíme na nejzásadnější změny a novinky.

AKTUALIZACE: Hned na začátku bych chtěl uživatele upozornit, že PrusaSlicer 2.0 NEMAŽE profily ze Slic3ru PE.

Přenos tiskových profilů

Máte vlastní profily? Nebojte se o jejich ztrátu. Profily lze exportovat ze starého Slic3r PE a znovu importovat do PrusaSliceru.

Uživatelům doporučujeme exportovat konfigurační balík ze Slic3ru PE ještě před instalací PrusaSliceru. Otevřete Slic3r PE a vyberte z menu: Soubor -> Exportovat Konfigurační Balík…
Nainstalujte balíček Drivers & Apps ((Využít můžete i tento přímý link na soubor nebo si stáhnout PrusaSlicer přímo z Githubu.), který obsahuje nový PrusaSlicer. Otevřete PrusaSlicer a vyberte z menu: Soubor -> Importovat -> Importovat figurační Balík… a vaše profily budou importovány.

Varianta číslo 2 je pak ruční přesun: Konfigurační soubory ve Windows najdete v adresáři [DISK]:\Users\[PROFILE_NAME]\AppData\Roaming\Slic3rPE nebo Slic3rPE-alpha nebo Slic3rPE-beta v závislosti na předchozí verzi. Najdete zde tři podsložky: filament, print, printer. Zkopírujte jejich obsah do odpovídajících složek do [DISK]:\Users\[PROFILE_NAME]\AppData\Roaming\PrusaSlicer a restartujte PrusaSlicer. Vaše profily by nyní měly být k dispozici. Na MacOS jsou soubory v umístění: [DISK]⁩ ▸ ⁨Users⁩ ▸ [USERNAME]⁩ ▸ ⁨Library⁩ ▸ ⁨Application Support⁩ ▸ ⁨PrusaSlicer.

Pokud se už ale nemůžete dočkat, vyzkoušejte si nový PrusaSlicer klidně hnedstáhnout si jej můžete v novém balíčku Drivers & Apps (Využít můžete i tento přímý link na soubor nebo si stáhnout PrusaSlicer přímo z Githubu.).

Obsah

Změna názvu

Vzhledem k tomu, že nejnovější vydání našeho sliceru obsahuje obrovské množství změn, novinek a oprav, rozhodli jsme se jej přejmenovat na PrusaSlicer. Máme k tomu i další důvody.

V první řadě je třeba podotknout, že původní název, Slic3r PE, byl poněkud matoucí. Na sociálních sítích docházelo k tomu, že na základě rady „Stáhni si nový Slic3r“ si uživatelé zkrátka stáhli původní program a dumali nad tím, proč v něm chybí nastavení pro naše tiskárny. Dokonce i nám samotným se občas stalo, že jsme občas pro ulehčení práce uvedli jen „Slic3r“, byť jsme samozřejmě měli na mysli naši verzi Slic3r PE. Navíc jsme se neustálým zdokonalováním aplikace čím dál tím víc vzdalovali původnímu kódu. Vše psané v Perlu jsme totiž přepsali do C++. Celkově vzato, nyní byla zkrátka ideální příležitost k přejmenování celé aplikace – ale nemějte strach, stále je open-source a veškeré zdrojáky najdete na GitHubu. Nezapomínáme ani na odkaz původního Slic3ru, který vyvinul Alessandro Ranellucci, bez kterého by náš slicer jen tak nevznikl, proto v titulku aplikace najdete název „PrusaSlicer 2.0.0 založený na Slic3ru“.

Nové uživatelské rozhraní

Snad vždy platilo, že Slic3r je neuvěřitelně robustní nástroj plný pokročilých a expertních funkcí – jenže tyto funkce byly často skryty za nepříliš přívětivým uživatelským rozhraním, takže bylo nutno některé položky složitě dohledávat. Dali jsme si hodně složitý úkol: vytáhnout pokročilé funkce na světlo, přičemž jsme ale chtěli uživatelské rozhraní zpřehlednit, zjednodušit a zmodernizovat. Můžete sami posoudit, jak se nám to povedlo…

Jednoduchý / Pokročilý / Expertní mód

Pokud jste ve slicování úplným nováčkem, máme pro vás přichystaný nový Jednoduchý mód aplikace. Ten svým vzhledem připomíná PrusaControl (u kterého už před časem skončila podpora) a má za úkol zpřístupnit vám jen to nejnutnější minimum nástrojů, které potřebujete k úspěšnému tisku. Pokročilé funkce, jako například instancování nebo selektivní vynucování podpěr, zůstávají skryty.

Zkušení uživatelé si mohou zapnout pokročilý mód, kde se odkryjí výše zmíněné funkce – a řada dalších, například mezní úhel převisu, zajištění vertikální tloušťky stěn a další. Expertní mód pak obsahuje opravdu jen ty nejpokročilejší funkce, které využijete většinou jen v případě, že vytváříte profil pro novou tiskárnu apod. Většina uživatelů si tedy naprosto v pohodě vystačí s jednoduchým a pokročilým módem.

Pro snazší odlišení jednotlivých stupňů „obtížnosti“ jsme se rozhodli zařadit barevné kódy.

  • Zelená – Může bez problémů upravovat i naprostý začátečník
  • Žlutá – Nastavení pro pokročilého uživatele
  • Červená – Expertní nastavení, které využijete jen v hrstce příkladů (např. tvorba profilu pro novou tiskárnu)

Nová menu, ikony a zkratky

Přepracovali jsme horní i postranní panely, všechny ikony jsou nové a navíc vektorové, takže si teoreticky poradí s jakýmkoliv rozlišením. Všechny nástroje mají i své klávesové zkratky pro snazší přepínání a práci v programu. Kompletní seznam můžete zobrazit prostřednictvím menu Pomoc – Klávesové zkratky. A i tahle funkce má svoji zkratku, Shift+?.

Všechno v hlavním okně

Možná ještě používáte verzi Slic3ru PE, kde se vám po dvojkliku na importovaný objekt otevřelo separátní okno, ve kterém bylo možno provádět některé pokročilé funkce. To už je minulostí – nyní je vše přehledně zobrazeno vždy jen v hlavním okně. A malá třešnička na závěr – v náhledu je vidět i 3D model podložky zvolené tiskárny.

Nástroje pro manipulaci s objektem

V PrusaSliceru 2.0 můžete využít užitečné nástroje pro snadnou manipulaci s objektem. Lze je navíc kombinovat s funkčními klávesami, čímž dochází ke změně výchozího chování. Pár rychlých tipů:

  • S nástrojem Otočit (R) lze objektem otáčet ve všech třech rovinách buď po 5 nebo 45 stupních
  • Pokud používáte nástroj Přesunout (M), podržením klávesy Shift posouváte objektem po 1mm krocích
  • Při používání nástroje Měřítko (S) lze podržením klávesy Shift přepnout na škálování po 5° krocích
  • Více objektů vyberete tak, že podržíte Shift + levé tlačítko myši a nakreslíte kolem objektů obdélník
  • Všechny objekty ve scéně vyberete kombinací CTRL+A
  • Podržte ALT + levé tlačítko myši a nakreslete obdélní kolem objektů, které chce odstranit z výběru

Dále je například možné zobrazit si koordináty objektu ve formátu lokálních i světových souřadnic.

Seznam objektů, hierarchie scény a instance

V pokročilém a expertním módu se v pravé části obrazovky zobrazuje hierarchie objektů, jejich instance, parametry, objemy a modifikátory. Díky tomu máte kompletní přehled o struktuře aktuálního projektu a parametrech jednotlivých objektů ve scéně.

Pokud je u modelu ikonka s vykřičníkem, znamená to, že PrusaSlicer detekoval chyby v geometrii objektu – takový objekt je lepší před tiskem ještě opravit. Na Windows 10 je tato funkce přímo součástí systému, tudíž stačí na výstražnou ikonu klepnout pravým tlačítkem a služba Netfabb poškozený objekt automaticky opraví.

Instance objektů mohou být jednoduše převedeny na separátní (samostatné) objekty, a to buď skrz kontextové menu (pravé tlačítko) nebo jednoduchým přetažením mimo „rodičovský“ objekt. Tato akce vám dovolí například volně měnit rozměry objektu.

Nové instance objektů lze vytvářet i klávesovou kombinací CTRL+C a CTRL+V.

Nastavitelné podpory

Občas se setkáváme s názorem, že to Slic3r PE s podporami přeháněl – byl pro to ale dobrý důvod. Díky tendenci generovat větší množství podpor mohli snadno připravovat modely i úplní začátečníci. Pokročilí uživatelé si pak nastavení upravili dle svých preferencí.

Právě pro pokročilé uživatele tu máme další užitečné nástroje: blokování a vynucování podpěr. Stačí pravým tlačítkem kliknout na daný objekt v seznamu objektů a zvolit požadovanou funkci. Selektivní blokování podpěr se hodí pro případy, kdy jste si jistí, že jistá část modelu podpěry nepotřebuje, ale PrusaSlicer je stejně má tendenci generovat.

Vynucování podpěr má přesně opačný efekt – stačí tedy vypnout automatické generování podpor a ručně si nastavit místa, která mají být podepřená.

Slicování pro MSLA 3D tiskárny

Protože jsme už začali rozesílat naši novou tiskárnu Original Prusa SL1 prvním zákazníkům, má nový PrusaSlicer plnou podporu pro slicování pro MSLA 3D tiskárny, stává se tak prvním plnohodnotným open-source slicerem pro MSLA tisk. Možná se vám může zdát, že se od sebe 3D tiskárny zas až tak neliší, ale opak je pravdou. V případě SLA technologie se sice stále jedná o aditivní výrobní proces (jako u FFF/FDM), ale tam v podstatě podobnost končí. Ano, i tentokrát se objekt krájí na tenké vrstvy, ty se ale vysvěcují pomocí UV světla jako celé plochy, není tu tedy žádný extruder, který by se pohyboval po vypočítané trajektorii. Vše si podrobně popíšeme v připravovaném článku, takže nyní jen telegraficky:

  • Automatické generování stromových podpěr a podložky (Pad)
  • Manuální editace stromových podpěr
  • Nastavení pro SLA tisk, materiály a tiskárny
  • Rasterizace vrstev do PNG obrázků s využitím knihovny Anti-Grain Geometry
  • 3D anti-aliasing (vyhlazování hran)
  • Náhled vrstvy (včetně řezu objektem)
  • Zipování a odesílání vygenerovaného archivu do tiskárny přes místní síť
  • Upload firmwaru
  • Vysoce přesný odhad tiskového času
  • Export STL souborů se zachováním vygenerovaných podpěr

Změna barev pomocí ColorPrint

ColorPrint byl nejprve k dispozici jako desktopová aplikace, následně jsme uživatelům doporučovali používat online verzi – a teď máme něco mnohem lepšího! ColorPrint je totiž kompletně integrován do PrusaSliceru, což znamená, že lze v preview okně zvolit, kde má docházet k výměně materiálu (lze samozřejmě nastavit více změn), tím pádem se vždy trefíte na vrstvu přesně a výsledek si ještě před tiskem zkontrolujete. Určitě nemusíme vysvětlovat, že kolikrát o výsledku rozhoduje jedna jediná vrstva. Teď budete mít vše plně pod kontrolou.

Perl byl nahrazen C++

Slic3r byl původně napsán ve skriptovacím jazyce Perl. Perl je dozajista výkonný programovací jazyk, díky němuž se navíc podařilo celý projekt odlepit od země. Jenže v dnešní době se mnoho programátorů přiklání spíše k Pythonu nebo Ruby, takže je čím dál tím těžší najít vhodné lidi. Navíc je debugování kombinace Perlu s C++ dost složité a neexistuje ani binding pro knihovnu wxWidgets UI, kterou Slic3r používá. Abychom se mohli posouvat dál, rozhodli jsme se Perl zcela vyřadit a kompletně jej nahradit jazykem C++. Vedlejším efektem je to, že prozatím nefungují služby jako tisk přes sériové spojení (USB) a náhled 2D cesty (2D toolpath preview) – stále je ale možné přepnout kameru do top-down pohledu pomocí klávesy 1. Zároveň ale existuje varianta, že se tyto nástroje do PrusaSliceru jednoho dne vrátí. Je to jen malá daň za výrazné ulehčení vývojového procesu.

Projektové soubory

Pro uložení celé scény doporučujeme používat výchozí formát 3MF. Jednoduše vyberte Soubor – Uložit projekt a celá scéna, včetně všech objektů, modifikátorů, parametrů a nastavení se uloží do jediného souboru. Když pak 3MF soubor otevřete na jiném počítači a scénu slicnete, výsledkem by měl být zcela identický G-code jako na původním počítači. Rozhodli jsme se upřednostnit 3MF formát (namísto AMF), a to z toho důvodu, že se jedná o moderní formát podporovaný i v programech jako Microsoft 3D Builder a Cura. Dále však podporujeme import AMF. Ano, tato funkce již ve starších Slic3rech byla, ovšem tak trochu schovaná pod položkou Exportovat jako 3MF/AMF.

Další novinky a změny

Textu už je tady habaděj, takže alespoň ve zkratce:

  • Podpora pro vysoká rozlišení (High DPI) – uživatelské rozhraní se nyní škáluje správně
  • Výpočet odhadovaného času a spotřeby materiálu se zobrazuje ještě před exportem
  • Zpracování na pozadí – přepracováno pro dosažení vyšší spolehlivosti, nyní se přeslicují pouze části, kde došlo k uživatelskému zásahu
  • Vylepšení pro multi-materiálový tisk – snazší přiřazování barev apod.
  • Rozdělení nastavení pro horní/spodní infill – děkujeme @supermerill
  • Nahrávací fronta pro Octoprint – odesílání dat do Octoprintu v předchozích verzích blokovalo interface
  • Tlačítka „Slicovat“ a „Export“ byla sloučena do jednoho
  • Přidány zkratky vedle menu s volbou jednotlivých profilů (podobně jako v upstream Slic3ru, děkujeme @alexrj)
  • Zpracování v příkazové řádce – upstream kód od @alexrj a @lordofhyphens
  • Podpora pro Cancelobject plugin (Octoprint) – děkujeme @supermerill
  • Anisotropní škálování objektů – pokud budete držet CTRL a zatáhnete za gizmo nástroje Měřítko (ne za rohová), bude se objekt škálovat jedním směrem

PrusaControl končí

Bylo nám spolu krásně, ale je čas PrusaControl s definitivní platností uložit k ledu. Při vývoji PrusaControl jsme se naučili spoustu věcí a ty nejlepší jsme se rozhodli implementovat do PrusaSliceru – bavíme se především o uživatelském rozhraní, což by vám mělo usnadnit přechod na nový slicer (pokud z nějakého důvodu ještě PrusaControl používáte). Díky tomu je PrusaSlicer perfektní volbou pro nováčky i pokročilé, navíc si můžete být jisti, že program i tiskové profily budou pravidelně aktualizovány pro dosažení nejlepších tiskových výsledků.

Co se chystá?

Naše práce samozřejmě zdaleka nekončí. Spousta z vás si píše o funkci Zpět/Vpřed. Nebojte se, víme o tom, a máme ji zařazenou do Top 10 seznamu věcí, které je potřeba do PrusaSliceru přidat. Ještě stále řešíme, jak tuto funkci implementovat co nejlépe, ale snad už to nebude dlouho trvat. Dále chystáme věci jako například vydutění (hollowing) předmětů pro SLA tisk, díky čemuž se dá efektivně šetřit resin. A i současný FFF slicovací engine čekají do budoucna změny.

Dále jsme se rozhodli automaticky nastavovat PrusaSlicer jako defaultní aplikaci pro otvírání 3MF souborů – dejte nám vědět, jestli vám tenhle krok vyhovuje.

Z výše napsaných řádků je snad dostatečně jasné, že vývoj vlastního sliceru bereme hodně vážně a že se neustále snažíme aplikaci vylepšovat a obohacovat o nové prvky. Slic3r PE (čest jeho památce!) byl vždycky doslova naditý funkcemi, ale ne každý se k nim dokázal prokousat. Od PrusaSliceru si slibujeme, že tuhle situaci alespoň trochu změní. Doufám, že se vám nový design (i změny pod kapotou) líbí, a zároveň bych vás rád poprosil, abyste si vaše nápady, postřehy a podněty nenechávali pro sebe, ale podělili se o ně s námi. Jen s vaší pomocí může být PrusaSlicer ještě lepší.

Ale dost řečí – stáhněte si nový PrusaSlicer 2.0.0 v balíčku Drivers & Apps (Využít můžete i tento přímý link na soubor nebo si stáhnout PrusaSlicer přímo z Githubu.) a dejte nám vědět, jak se vám líbí!


Originální 3D tiskárna Prusa i3

Podívejte se na originální Prusa i3 MK3 3D tiskárnu!
Nejlevnější je už od 19 990 Kč

Průša 3D tiskárny na faceboku