La stampa 3D multicolore FFF/FDM è rimasta per anni legata a un limite implicito: il numero di filamenti fisici caricati nella macchina, tipicamente quattro canali su sistemi come Snapmaker U1, Bambu Lab con AMS o il modulo MMU di Prusa. In pratica questo significava poter combinare poche tinte a blocchi netti, con la classica torre di spurgo piena di sfumature indesiderate. Proprio osservando queste transizioni casuali, alcuni sviluppatori hanno iniziato a domandarsi se fosse possibile controllare intenzionalmente quel tipo di miscelazione per ottenere colori intermedi sfruttando solo la stratificazione in Z. Da questa intuizione – già discussa negli anni in community e issue tracker di progetti come SuperSlicer – nasce il lavoro di Ratdoux e il fork “Snapmaker Orca Full Spectrum” di Orca Slicer, che porta il concetto di “colori virtuali” dentro il flusso di slicing.
Cos’è Snapmaker Orca Full Spectrum e come si integra con Orca Slicer
Snapmaker Orca Full Spectrum è un fork di Orca Slicer sviluppato da Ratdoux e pubblicato come progetto open source su GitHub; sotto il cofano resta a tutti gli effetti Orca Slicer, ma con un modulo aggiuntivo dedicato alla definizione e gestione dei colori virtuali. Il fork nasce prendendo come “stampante zero” la Snapmaker U1, un sistema a quattro utensili indipendenti (toolchanger) che può cambiare filamento per ogni layer senza passare da procedure di purge lunghe e sprecone, ma l’idea è applicabile a qualsiasi stampante dotata di cambio filamento automatizzato. Il software è disponibile per Windows, macOS e Linux tramite installer dedicati; su macOS, trattandosi di un’app non firmata, l’utente deve esplicitamente autorizzare l’esecuzione nelle impostazioni di sicurezza.
Il principio fisico: trasmissione della luce e percezione del colore
La chiave di Full Spectrum è che la stampante non miscela realmente i polimeri dentro all’ugello: ogni toolhead continua a estrudere un solo filamento per volta e non esiste un hotend a camera di miscelazione interna. Ciò che cambia è la sequenza di layer lungo l’asse Z: alternando strati molto sottili di due o più materiali colorati, la luce attraversa più livelli prima di essere riflessa verso l’osservatore; se i filamenti sono abbastanza traslucidi e lo spessore di layer è contenuto, l’occhio umano non distingue più singole lamelle di colore, ma integra il contributo ottico dei diversi strati in un’unica tinta percepita. Ratdoux descrive questo concetto come “transmission distance”: la distanza di materiale attraversata dalla luce, in combinazione con opacità e colore dei filamenti, determina la resa cromatica finale, in modo analogo a quanto già avviene in progetti come HueForge per la stampa a rilievo multicolore.
Colori virtuali come “filamenti logici” e ricette di miscelazione
Nel modello di Full Spectrum ogni combinazione di colori viene trattata come se fosse un nuovo “filamento virtuale”, aggiunto logicamente alla lista dei materiali dopo i filamenti fisici reali. Ogni filamento virtuale conserva una ricetta esplicita, cioè l’elenco dei filamenti fisici coinvolti e il rapporto percentuale (o di “peso” in layer) con cui devono alternarsi lungo Z. Invece di partire da un valore RGB target e risalire a posteriori a una sequenza di layer, il fork memorizza per prima cosa la ricetta di slicing e genera due output diversi: da un lato il colore di anteprima a schermo per l’utente; dall’altro il pattern effettivo di layer che la macchina dovrà stampare. Di default il software propone miscele 50:50 per tutte le combinazioni possibili dei materiali caricati, con pulsanti rapidi per creare nuovi colori virtuali e per modificare i rapporti con cui i filamenti verranno alternati.
Interfaccia utente: gradienti, pattern e pannello dedicato
Dal punto di vista dell’interfaccia, Full Spectrum aggiunge in Orca Slicer un pannello intermedio tra i controlli dei filamenti e le impostazioni di stampa, dedicato alla miscelazione. L’utente può definire due livelli principali di complessità: un gradiente, cioè un mix relativamente semplice di due colori fisici con un rapporto regolabile (50:50, 70:30, ecc.), oppure un pattern, che consente di coinvolgere tre o più filamenti, controllando sia l’ordine di alternanza dei layer sia il peso di ciascun colore nella sequenza. Tutte le combinazioni, una volta definite, vengono rese disponibili nel tool di painting dei modelli di Orca, così da poter “dipingere” la mesh con colori virtuali a distribuzione fine, non limitati alle sole tinte dei filamenti realmente caricati in macchina.
Esempi di resa: dalla palette base a tonalità intermedie
Nei test descritti, Ratdoux e il team hanno utilizzato una palette base composta da filamenti nero, bianco, rosso e giallo, riuscendo a produrre un modello di “Ripper Mask” che presenta porzioni bianche, rosse, gialle, marroni e rosa partendo solo da quei quattro materiali. In alcuni casi il colore stampato si discosta visibilmente da quello mostrato in anteprima, per esempio nel tentativo di ottenere un rosa specifico, segno che le proprietà reali dei filamenti (tonalità del bianco, opacità, pigmentazione) incidono molto più del semplice valore RGB visualizzato dal software. Per questo gli autori sottolineano come parte essenziale del flusso di lavoro una fase di sperimentazione empirica su campioni, per costruire una “libreria” personale di ricette affidabili in base ai materiali utilizzati.
Limiti attuali: anteprima vs realtà e dipendenza dai materiali
Uno dei punti critici emersi nei test riguarda la differenza tra la rappresentazione grafica nel viewer di Orca e il risultato fisico: il software visualizza una sorta di media cromatica ideale, mentre la stampa vera è soggetta a variazioni dovute a pigmenti, traslucenza e finitura superficiale dei filamenti. Alcuni bianchi, per esempio, tendono a un avorio “naturale” che attenua le tonalità e rende più difficile raggiungere tinte molto sature, mentre filamenti molto opachi riducono profondamente l’effetto di miscelazione ottica. Ratdoux consiglia, per massimizzare il blending, di combinare layer molto sottili con materiali trasparenti o semi-trasparenti, mentre layer più spessi e opachi rendono evidente la struttura a strati e portano a una percezione segmentata del colore.
Vincoli geometrici: effetto Z-only e problemi sulle pendenze
Poiché la tecnica opera solo lungo l’asse Z, con alternanza di layer, l’effetto cromatico risulta più stabile e convincente sulle superfici quasi verticali, dove la sezione visibile comprende molti layer sovrapposti. Sulle pendenze accentuate, invece, emergono con facilità i colori di base, perché i layer vengono “tagliati” in modo da rendere più evidente la stratificazione. Un ulteriore problema riguarda i volumi interni: pareti interne di un colore dominante possono interferire con i mix più chiari o con gradienti applicati alle zone esterne, modificando l’interazione della luce e rendendo meno leggibile la sfumatura desiderata. Questo obbliga a prestare particolare attenzione al design del modello e all’assegnazione dei colori interni quando si vuole ottenere un certo tipo di effetto ottico in superficie.
Stampanti ideali: toolchanger e sistemi multi-materiale
Full Spectrum è stato ottimizzato partendo da Snapmaker U1, ma in linea teorica qualunque stampante dotata di sistema di cambio filamento – come Bambu Lab con AMS o Prusa con Prusa XL e MMU – può beneficiare della stessa logica di slicing. Il carico computazionale e meccanico aumentano in modo significativo, perché il sistema può arrivare a richiedere cambi di materiale a ogni singolo layer nelle aree dove è presente un colore virtuale, elemento che rende la tecnica particolarmente adatta a macchine con toolchanger multi-ugello, dove ogni materiale è sempre pronto all’uso senza ritrazioni lunghe e purge massicci. Con questi sistemi si riducono tanto i tempi morti quanto lo spreco di materiale, avvicinando la stampa multicolore a un flusso di lavoro più efficiente anche per pezzi artistici o di design a palette ampia.
Stato del progetto e roadmap: local Z-dithering e test hardware
Ratdoux descrive lo stato attuale del fork come “basilare ma già utilizzabile”, sottolineando che il lavoro proseguirà soprattutto su due fronti: la correzione di bug e l’introduzione del local Z-dithering. Quest’ultima funzione dovrebbe consentire al slicer di variare localmente l’altezza dei layer nelle zone miscelate, così da ottenere proporzioni di materiale più precise in verticale (per esempio garantendo a un filamento uno spessore di layer maggiore rispetto agli altri nel mix). In termini pratici, questo dovrebbe permettere un controllo più accurato del colore percepito, riducendo il divario tra anteprima e risultato reale. Sebbene il progetto sia nato come esercizio teorico senza test hardware diretti, Snapmaker ha inviato a Ratdoux una Snapmaker U1 per supportare lo sviluppo, segno di un interesse concreto dell’azienda verso l’integrazione di queste funzionalità nel proprio ecosistema.
Origini nella community: dalla discussione Reddit alla collaborazione con Snapmaker
L’idea di alternare layer di colore per generare nuove tonalità è stata più volte discussa nei forum della community, ma un momento chiave è stato un thread dell’utente Aceman11100 su Reddit, che presentava un approccio slicer-agnostico e printer-agnostico allo stesso problema. A differenza del fork di Ratdoux, quella soluzione punta a un’implementazione indipendente dal software specifico, con un livello di “polish” ancora in sviluppo. Il lavoro su Full Spectrum, invece, ha beneficiato della base solida di Orca Slicer e del supporto diretto di Snapmaker, accelerando sia il rilascio pubblico sia i test sul campo, al punto che si comincia a parlare della possibilità che la logica di color-mixing possa in futuro risalire verso i progetti upstream, raggiungendo altri slicer compatibili.
Installazione e primi passi per maker e professionisti
Per chi vuole sperimentare oggi, il percorso pratico consiste nel download dell’installer appropriato dal repository di Ratdoux, seguito da una configurazione analoga a quella di Orca Slicer standard, importando profili stampante e materiali. Su Windows l’installazione è lineare; su macOS occorre concedere un’eccezione di sicurezza, mentre su Linux si seguono le consuete procedure per i pacchetti forniti. Il consiglio è partire con modelli di test semplici – come torri o piccoli oggetti geometrici – in cui assegnare zone distinte a colori virtuali diversi, tenendo lo spessore layer molto basso e annotando sistematicamente le combinazioni di filamento e i rapporti che danno le rese cromatiche più soddisfacenti.
Implicazioni per la stampa multicolore e possibili sviluppi futuri
Se dovesse essere integrata in modo stabile nei principali slicer open source, la logica dei colori virtuali potrebbe cambiare sensibilmente il ruolo dei sistemi multi-materiale nel desktop 3D printing, portandoli da un semplice “selettore di tinte” a uno strumento capace di creare palette estese con pochi filamenti ben scelti. In ambito artistico e di product design, questo consentirebbe di avvicinare la stampa FFF a un linguaggio cromatico più vicino alla grafica o alla pittura digitale, pur mantenendo i vincoli geometrici tipici della tecnologia. Dal lato industriale, l’interesse maggiore potrebbe concentrarsi su prototipazione estetica e segnaletica, dove la possibilità di rendere gradienti e sfumature con singoli materiali standard – anziché ricorrere a processi inkjet complessi – apre scenari interessanti, soprattutto se i produttori come Snapmaker, Bambu Lab o Prusa decideranno di collaborare per ottimizzare layer height, percorsi utensile e gestione colore in modo coordinato.
