
Grafica 3D per tutti
Dal disegno tecnico all’animazione, dall’arredamento alla modellazione. Le alternative ai programmi per Windows
(pagina 1 di 8)
E' ora di sfatare un mito una volta
per tutte: quello che vuole GNU/
Linux non adatto alla grafica 3D
o meglio, quello secondo il quale non
esistono programmi per svolgere questo
tipo di attivitĂ . Per quanto riguarda
la grafica 3D a livello “industriale”, non
ci sono problemi: gli effetti speciali di
numerosi film di successo elaborati
su piattaforma GNU/Linux ne sono la
prova. Ma noi abbiamo deciso di dimostrare
che è pronto anche per la grafica
3D professionale ma più “umana”, con
una vasta offerta di applicazioni gratuite
e commerciali che spaziano dall’animazione
all’arredamento. Si tratta perlopiù
di software capaci di garantire risultati
eccellenti con la possibilitĂ di allestire
una workstation interamente dedicata
alla grafica 3D. In alcuni casi si tratta
di programmi Open Source, o quasi, a
seconda delle necessitĂ . Nel prosieguo
dell’articolo comprenderemo il significato di quel “quasi”. Laddove possibile,
infatti, daremo l’assoluta precedenza al
software Open Source evitando, però,
di “chiudere” la strada a quei software
proprietari validi e che prevedono anche
una versione per GNU/Linux (gli
“integralismi” non ci piacciono, in tutte
le forme e colori). Data la vastità dell’argomento
non avremo la “presunzione”
di scrivere una schiera di tutorial da poter
applicare a specifiche circostanze:
l’obiettivo principale sarà quello di fornire
un’idea della attuale situazione della
grafica 3D in ambiente GNU/Linux. Tutto
questo per fornire agli utenti che decidono
di cimentarsi in questo “colorato”
campo con GNU/Linux, tutti gli elementi
per iniziare nel migliore dei modi.
I software utilizzati
L’offerta di programmi orientati alla grafica è molto ampia, pertanto abbiamo
cercato di prendere il meglio con la speranza
di non aver lasciato fuori qualche
“perla”, soprattutto Open Source. Naturalmente
un certo numero di programmi
rimarrĂ , per motivi di spazio, escluso da
questa rassegna, ma ciò non significa
assolutamente che le loro caratteristiche
non siamo idonee per i motivi per i quali
essi sono stati progettati anche perché la
scelta di ogni singolo programma nella “catena” grafica è funzione delle proprie
necessitĂ e del risultato finale che si vuole
conseguire. Gli utenti, per la maggior
parte dei casi, non sono dei programmatori
e il loro principale obiettivo è avere (o
provare) un programma per verificare (o
trovare) la soluzione piĂą adatta al proprio
progetto. Per poter creare oggetti tridimensionali
occorrono un certo numero
di passi e ci si può fermare solo quando
un risultato prossimo al nostro obiettivo
è stato raggiunto. Sinteticamente, possiamo
riassumere i passaggi che vanno
dalla creazione di un modello “scheletrico”
fino al file di uscita che può essere, a
seconda dei casi, un’immagine statica in
svariati formati oppure un’animazione (ad
esempio un film).
 |
Sunflow in quanto a realismo delle scene non è secondo a nessuno |
I “motori chiusi”
Le soluzioni proprietarie per GNU/Linux
Solo per citare i software piĂą famosi
abbiamo: 3Delight (www.3delight.com), Gelato,
specifico per le schede nVidia, (www.
nvidia.com/page/gz_home.html) e i “superbi”
Mental ray (www.mentalimages.com) e
Maxwell Render (www.maxwellrender.com),
il primo dei quali utilizzato da programmi
del calibro di Maya e Softimage|XSI.
Renderer,
Il “motore” grafico
Trattare tutti i motori di render nonché
riportarne le “rese grafiche” attraverso le
immagini è praticamente impossibile. Ci
limitiamo, allora, principalmente a progetti
Open Source e nel box “I motori chiusi”
ne illustreremo alcuni proprietari, anche
perché entrambi i gruppi sono utilizzabili
sia con programmi Open Source che
commerciali eseguibili su GNU/Linux.
Facciamo presente che alcuni programmi
di “categoria superiore” potrebbero
far uso di un proprio motore di rendering.
Abbiamo utilizzato il termine “categorie
superiori” perché, nella catena grafica, la
renderizzazione è l’ultimo anello e come
si può intuire è anche il processo più “intenso”
dal punto di vista computazionale
e per questo assistito anche dal processore
grafico della scheda video utilizzata
(GPU – Graphics Processing Unit).
Ogni motore basa il suo funzionamento
su particolari algoritmi e su un linguaggio
di descrizione delle scene che definisce
delle specifiche, alcune delle quali sono
lo stato dell’arte che dettano la creazione
per le scene 3D in ambiente cinematografico
(leggete il box “Algoritmi e specifiche”).
Senza voler assolutamente
entrare in dettagli di analisi matematica e
fisica ottica alla base di questi complessi
algoritmi di rendering, citiamo alcuni
dei motori Open Source piĂą noti e visto
che lo stato dell’arte è dettato dalle specifiche
RenderMan allora non possiamo
che riportare due motori In seguito ci
occuperemo di altri motori di rendering
in “azione”. A conclusione di questa prima
carrellata di programmi, vogliamo
segnalare una nota su POV-Ray. è definito come un programma Open Source
(vengono distribuiti anche i sorgenti), ma
l’uso di cui se ne fa è “vincolato” dalla licenza
“POV-Ray License”che vi invitiamo
a leggere prima di renderizzare le vostre
creazioni con questo motore (www.
povray.org/povlegal.html).
Strumenti per la modellazione
Un gradino sopra i motori di rendering ci
sono i programmi utilizzati per produrre
un modello 3D a partire da una sua definizione in due dimensioni. Anche per
programmi di questo tipo, diversamente
da quello che si potrebbe pensare, GNU/
Linux non è secondo a nessun altro sistema
operativo. Senza voler fare nomi
“eclatanti” (ad esempio commerciali), rimaniamo
in una categoria di programmi
più “abbordabili” in grado, però, di fornire
un modellatore 3D semplice da usare e
sufficientemente potente da garantire
modelli realistici. In questo ambito di programmi,
un riferimento di modellazione
3D per Microsoft Windows è il programma
AC3D della software house Invis (www.
inivis.com). Le sue principali caratteristiche
sono la compatibilitĂ con un elevato
numero di formati e il supporto a numerosi
motori di rendering. Poiché la Invis
rilascia anche la versione per GNU/Linux
(trial, in prova per 14 giorni), quest’ultima
capacità è, in verità poco utile, visto che
i motori di rendering supportati sono relativi
a programmi proprietari la maggior
parte dei quali non ha alcun porting per
GNU/Linux. Ad ogni modo è garantito il
supporto al motore POV-Ray ovvero ad
un tool a linea di comando che definisce
la scena utilizzando un linguaggio di
scripting nativo elaborandolo successivamente con l’algoritmo di Ray tracing
per la definizione grafica dell’ambiente.
Potrebbe essere “scomodo” per molte
persone descrivere un modello utilizzando
un linguaggio di programmazione ed
è per questo motivo che sono nati diversi
tool grafici attraverso i quali è possibile
editare complesse scene senza metter
mano ad una sola linea di codice. Fortunatamente
esistono ottime alternative anche
Open Source le quali appoggiandosi
ai diversi motori di rendering permettono
di disegnare modelli molto complessi.
Naturalmente il confronto tra i diversi programmi
(Open Source e non) non potrĂ
che avvenire sullo stesso motore di rendering
e in questo caso un ottimo tool,
oltremodo integrato nell’ambiente KDE, è
KpovModeler .
 |
KPovmodeler durante la fase di rendering di un progetto complesso |
Formati dei File
I piĂą noti e i software che li producono
La grafica 3D è entrata di prepotenza
nella pubblicitĂ , nei film e nella progettazione
e con essa sono nati numerosi
formati di file. Per citarne alcuni: dxf
(Data eXchange Format (porting dati tra
diversi programmi CAD), 3ds (3DS Max),
pov (POV-Ray), lwo (Lightwave), hpgl
e hpgl2 (plotting in tutte le dimensioni
in alta qualitĂ ), hrc (SoftImages|XSI),
ndo (Nendo), obj (Wavefront), ai (Adobe
Illutsrator), bvh (Biovision Hierarchy).