Real 3D 3.5
Oh, che bello! Il Pistone redazionale ha uscito dal
suo Cilindro magico uno specialone succuso e interessante dedicato ad uno dei
programmi 3D più noti... Ebbravo! E pensare che era uno di voi lettori... (ma
quando mai!!! ndPistone) (muto, che devo farmi pubblicità! ndPetty).
Questo programma di grafica 3D, originariamente scritto su di un Amiga 1000 da
due fratelli Finlandesi, e' stato il primo ad introdurre su Amiga funzioni presenti
solo su programmi per WorkStation Unix come la cinematica inversa,
animazione particellare con rilevamento delle collisioni e altre funzioni ad un
costo accessibile e senza l'uso di plug-in, che l'hanno portato dalle prime
versioni, nelle quali aveva un'interfaccia simile a quella di Sculpt 3D, alla forma
attuale attraverso il rilascio delle versioni 2 e 3 .
Attualmente il programma e' fermo alla versione 3.5 (3.53 per la versione
Windows), in attesa del rilascio della nuova versione 4 che comporterà grandi
cambiamenti nelle funzionalità e nel nome del programma, comunque per
qualche anticipazione sulla versione 4 vi rimando alla fine dell'articolo.
Alcune delle caratteristiche più
importanti di questo programma sono: [-->
|
- Modellazione solida tramite primitive CSG e modellazione basata su
spline
- Motore di rendering raytracing con simulazione realistica di rifrazioni e
trasparenze
- Architettura modulare che consente l'introduzione di plug-in e una quasi
totale ridefinizione dell'ambiente di lavoro
- Sistema di animazione avanzato che consente l'uso di scheletri,
rilevamento collisioni, cinematica inversa, animazione keyframe, animazioni
particellari
- Operazioni booleane tra solidi anche animate
- Generazione di alberi e terreni frattali
- Linguaggio di programmazione interno che consente di creare macro e
algoritmi di animazione o di creazione di oggetti
- Interfaccia zero wait state che consente di portare avanti diverse operazioni
contemporaneamente
- Simulazione di ombre morbide e effetti atmosferici
|
Prima di analizzare il programma nel dettaglio descriverò la dotazione.
Presentazione
Una volta aperta la scatola di cartone decorata con alcune impressionanti
immagini create da vari utenti di Real ci ritroviamo con due manuali, uno della
versione 2 con in copertina un magnifico pesce, che contiene le informazioni
base per l'uso del programma e dei vari tool che vengono forniti con esso ed
uno più piccolo, con l'immagine di un rettile, che riporta le nuove funzioni della
versione 3.0.
I manuali sono scritti per gli utenti della versione per Windows, che
fondamentalmente è uguale alla versione per Amiga anche se purtroppo e'
dotata di alcune funzioni che non sono state implementate su Amiga, comunque
le differenze della versione Amiga vengono trattate in un'appendice del
manuale della versione 3. I manuali sono in Inglese anche se sono abbastanza
semplici da tradurre, purtroppo i tutorial e le spiegazioni dei vari comandi non
sono esaustive e alcune volte confondono l'utente.
Per quanto riguarda le differenze tra la versione 3.0 e le successive occorre
consultare la documentazione su file fornita con gli aggiornamenti.
Le funzionalità mancanti alla versione Amiga sono le seguenti:
- Importazione di file 3D Studio
Supporto di preview OpenGL
Importazione di font TrueType come oggetti 3D
Finestra di selezione grafica dei materiali
Con la versione 3.53 rilasciata solo per Windows sono stati corretti alcuni bug ed
è stata introdotta una nuova funzione di trasparenza negli attributi delle
texture.
Dotazione
Il software viene rilasciato su floppy a bassa densità anche se il disco di upgrade
dalla versione 3.0 alla 3.11 mi è stato fornito su floppy MS-DOS da 1.44Mb.
Insieme all'aggiornamento alla versione 3.5 mi è stato regalato un cd-rom
contenente la versione demo per Windows 3.11/95/NT/NT DEC Alpha con una
serie di progetti e di immagini create da vari utenti ed un'ottima raccolta di
texture.
La versione 3.5 demo per PC è perfettamente funzionante e consente di creare
animazioni e di salvare immagini ma non permette di salvare le scene e gli
oggetti creati, quindi insieme alla versione SARE (ovvero solo il motore di
calcolo) è molto utile se si dispone di un PC a cui far renderizzare la scena
preparata sulla versione Amiga.
Insieme al programma principale vengono forniti alcuni programmi accessori che
consentono Digita International Limited convertire file DXF, Sculp e ProDraw in
file Real, inoltre vengono forniti dei tool per creare e visualizzare animazioni in
formato Delta, un formato proprietario.
L'installazione del programma avviene tramite l'installer standard della
Commodore ed una volta finita la procedura si può resettare il computer per
permettere la
creazione degli assign necessari al programma.
Dentro
Real!
Il programma si apre su una schermata PAL con una finestra di lavoro, una con
i tool di creazione ed una con la gerarchia degli oggetti.
Quest'ultima finestra e' molto importante perché è da qui che si selezioneranno
gli oggetti da manipolare, inoltre vi permette di esaminare la disposizione degli
oggetti
nella gerarchia della scena, infatti Real gestisce le primitive, le texture e i metodi
di animazione come se fossero file e cartelle di un disco.
Ad esempio e' possibile estendere una texture a più oggetti semplicemente
spostando la texture su di un livello superiore agli oggetti da mappare oppure
spostando gli stessi nello stesso livello della texture: |---> |
|
Per quanto riguarda l'interfaccia grafica del programma è possibile aprire in
qualsiasi momento delle nuove finestre di lavoro, di selezione o finestre con tool.
Se si vuole lavorare con un'ambiente personalizzato si può caricare in un
qualsiasi momento tramite il menu environment oppure si può lanciare il
programma attraverso l'icona di un progetto esistente o di un
environment.
Naturalmente è possibile aprire più schermate contemporaneamente anche su
schermi Cybergfx o Picasso anche a 24 bit anche se per renderizzare a video
un'immagine di qualità occorre l'uso di librerie esterne dato che Real non riesce
a gestire bene la palette negli schermi custom.
A questo proposito vi consiglio l'uso della libreria wfhm_cybergfx-r3d che
consente di effettuare il rendering su una finestra a 24bit, purtroppo per un bug
di Real è necessario selezionare un modo a 16/24bit ma con un numero massimo
di colori ridotto a 256 pena una guru meditation.
Andiamo ad esaminare le tre finestre attualmente aperte.
La Select Window è già stata descritta e l'unica cosa da aggiungere è che è dotata
di tre pulsanti che consentono la selezione di più oggetti contemporaneamente,
Tools Window contiene le icone delle varie primitive disponibili ed è possibile
aumentare le sue funzionalità tramite la pressione dei pulsanti che rappresentano
il
gruppo di funzioni non mostrate, ad esempio tutti i tipi di illuminazione
disponibili, oppure tramite menu è possibile aggiungere una macro all'elenco
delle icone.
Infine abbiamo la view window che permette di creare, manipolare e visualizzare
i vari elementi che compongono la scena. La finestra può lavorare in prospettiva
o in proiezione parallela, è possibile attivare una griglia di riferimento
personalizzabile ed una griglia assoluta, inoltre è possibile attivare un input
plane diverso.
L'input plane è un piano con il quale si interagisce per fornire le coordinate per
la modellazione e solitamente corrisponde all'output plane ovvero la finestra di
visualizzazione, è però possibile separare l'input plane dall'output plane, così
facendo anche cambiando l'inclinazione della vista l'input plane corrisponde
ancora
alla vista precedente permettendo di introdurre oggetti osservando la scena da
un'altra prospettiva.
Si può agganciare la finestra alla telecamera per poter osservare la scena dal
punto di vista della camera, si può impostare il rinfresco della finestra in
modalita
raytrace, scegliere il livello di dettaglio delle superfici spline, visualizzare il nome
dei vari oggetti sulla finestra e attivare una finestra che indica lo stato del
rendering,
si può inserire un'immagine bitmap di sfondo per poter ricalcare un profilo
oppure per avere un riferimento nella composizione della scena.
La finestra di output può essere una normale finestra oppure una finestra
borderless, superbitmap o d-buffered. La finestra borderless è in pratica una
finestra
che si sostituisce allo sfondo della schermata e come il nome fà intuire non
presenta bordi, gadget o barra del titolo e può essere utilizzata come finestra per
il
rendering finale. La finestra di tipo Superbitmap ha un funzionamento analogo a
quella di un disco o cassetto, gli slider sui bordi permettono di muovere la vista
su di un piano virtuale più grande.
Infine la d-buffered è una finestra senza bordi che si apre su uno schermo
640x512 a 4 colori, attiva automaticamente la vista in prospettiva ed è ottima per
visualizzare animazioni in wireframe grazie al doublebuffering che evita di
vedere i passaggi di
ridisegno intermedi.
E' naturamente possibile aprire altre finestre speciali come la measuring window
che permette di ottenere le coordinate e l'angolo di un'oggetto e di inserirli
durante
la fase di creazione per una maggior precisione, la palette window e la color
weel window che ovviamente consentono di gestire i colori per gli oggetti e per
il
programma, la anim window che offre dei controlli tipo videoregistratore per la
gestione dell'animazione e per il suo salvataggio. Questa finestra può essere
aperta
anche su uno schermo separato che viene sovrapposto a quello di Real in
maniera simile a quanto avviene con ImageFX 1.5/2.6, che comunque deve essere
aperta su
finestra nel caso si lavori con uno schermo tipo RTG.
Esiste anche una finestra per regolare la camera attraverso il quale si può
impostare l'angolo della visuale, la posizione e la rotazione sui tre assi della
camera e dell'obbiettivo, più varie finestre che non tratterò qui per non allungare
troppo questo articolo, come per lo stesso motivo non vi descriverò tutti i
possibili settaggi e comandi disponibili per la finestra di visualizzazione.
Programmiamo!
Naturalmente esiste la possibilità di aprire una o più finestre shell per poter
inserire comandi in RPL (RealProgramming Language), un linguaggio di
programmazione basato sul Forth che utilizza la notazione polacca inversa.
(Polacca? Ullalà, amici del papa... nd).
Il Forth è un linguaggio basato su word (parole) che possono essere aggiunte al
suo vocabolario creando delle specie di macro unendo più word esistenti, la sua
velocità è buona dato che i comandi vengono compilati in memoria ogni volta
che viene caricato il programma. Questo linguaggio inoltre ricorre ad un'uso
intensivo del concetto di stack che insieme alla notazione polacca inversa offre
un'ottima velocità di risposta.
Ad esempio il classico comando basic "print 2+2" che ovviamente restituisce il
valore 4 viene scritto in RPL ed in Forth "2 2 + .", ovvero inserisci il valore 2
nello stack poi inserisci il valore 2 nello stack, somma gli ultimi due valori inseriti
nello stack e il punto visualizza l'ultimo valore inserito nello stack ovvero
4. (Che bello! Ora mi faccio fare un corso di Forth da Wouter... nd
=).
Il manuale offre una breve introduzione all'RPL e ai vari comandi disponibili per
creare, manipolare e animare gli oggetti, comunque se volete approfondire la sua
conoscenza vi consiglio di procurarvi un libro sulla programmazione in
Forth.
Purtroppo i libri in italiano sono tutti fuori catalogo quindi dovrete cercarli nelle
librerie pubbliche o dai rivenditori di libri usati oppure se non avete problemi
con l'inglese potete ordinarli tramite Internet dai vari book store come
Amazon.
Modellazione
La modellazione con CSG è abbastanza facile da padroneggiare, per esempio per
creare un cubo si seleziona l'icona dalla tool window o dal menu, si seleziona
una finestra e vi si clicka nel punto in cui si vuole creare uno degli angoli del
cubo e successivamente si clicka nel punto in cui si vuole l'angolo opposto. Il
cubo verrà creato utilizzando una profondità prefissata, naturalmente si potrà
successivamente riscalare, rotare, deformare e in genere manipolare a proprio
piacimento.
|
Le primitive a disposizione sono molte tra cui triangoli, rettangoli, cerchi, cubi,
cilindri, sfere, piramidi e piramidi tronche, sezioni di cilindri e di sfere e
altre. |
|
Esistono anche alcune funzioni per creare oggetti complessi utilizzando più
primitive come ad esempio il lathe (tornio) o il circular subdivided, che crea
un'oggetto composto da cilindri disposti seguendo un percorso tracciato
dall'utente.
Un'altra serie di tool permette di creare degli oggetti CSG arrotondati
semplicemente tracciando il loro perimetro.
Operazione Boleane e Tools
Selezionando due o più primitive è possibile effettuare delle operazioni
booleane, si potrà ottenere un'oggetto nuovo creato dall'unione, sottrazione o
differenza fra i
vari componenti, e come accennato in precedenza sarà possibile modificare la
struttura semplicemente muovendo i componenti in nuove posizioni.
Ad esempio è possibile creare un cubo con un foro cilindrico e animare
l'operazione booleana in modo da simulare una penetrazione di un cilindro
all'interno di un
cubo.
Inoltre è possibile usare un'oggetto creato con operazioni booleane per effettuare
altre operazioni su nuovi oggetti in modo da ottenere forme complesse.
Le operazioni booleane non possono essere applicate alle spline o alle mesh
(a proposito, mi sono fatto il ciuffo biondo!!
nd),
questo
limite sarà superato nella versione 4, l'unico tipo di operazione booleana
possibile con le spline è la creazione di una trim curve, ovvero una curva chiusa
di qualsiasi forma che tramite il pannello delle proprietà dell'oggetto viene
indicata come trim curve, permette la creazione di un foro infinito su di una
mesh o su una primitiva, lo svantaggio di questo tipo di curve è che non si può
definire una profondità come avviene per le operazioni tra solidi, inoltre una
primitiva forata da una trim curve diventa automaticamente una primitiva
cava.
Esiste la possibilità di generare scritte tridimesionali utilizzando la funzione font
loader, un requester permetterà la selezione dei font Real disponibili e
l'introduzione di un messaggio che verrà creato utilizzando l'allineamento
specificato dall'utente.
Altro tool interessante è il pixel tool che sostituisce ai pixel di una bitmap una
primitiva o una mesh precedentemente selezionata, naturalmente le richieste di
memoria variano a seconda delle dimensioni dell'immagine e della primitiva
usata (si può optare per una cavernicola del paleolitico, una amazzone
fino ad arrivare ad una "stegonessa" animista dei giorni nostri!
nd).
Infine il tool per la creazione degli alberi consente di regolare tramite una
finestra piena di opzioni, tutte le possibili variabili per creare piante e alberi di
varie fogge e di specificare un oggetto da usare come foglia, dopo qualche colpo
di mouse una pianta crescerà magicamente nel vostro scenario.
Un menu molto fornito di opzioni ci permette di modificare le proprietà
dell'oggetto come la capacità di proiettare o ricevere ombre, la velocità, il colore,
il centro di gravità, se il colore e la texture devono essere usati durante le
operazioni booleane, se l'oggetto deve essere considerato una fonte di luce, se
deve essere visualizzato durante il rendering, se deve essere riflesso dagli altri
oggetti o meno ed altre ancora.
Metodi
Per quanto riguarda la modellazione con spline la tecnica base è semplice anche
se per ottenere delle forme complesse occorrono un po' di pratica e di buona
volontà.
|
La creazione di una mesh spline si ottiene tramite il tracciamento di almeno 4
curve spline, aperte o chiuse, tutte con lo stesso numero di punti di controllo,
successivamente si selezionano nell'ordine di creazione e si usa la funzione build
from curves. Ovviamente esistono altri metodi di creazione che agiscono in
maniera differente ed esistono 3 tipi di mesh già pronte da usare: la mesh
rettangolare, il toroide (anello) e il paesaggio frattale (quanti casini
inutili... A me è bastato dire al mio acconciatore "Gianni, ma dai na schiarita a
stu beddu ciuffu?"...nd).
|
Gli altri metodi di creazione prevedono l'uso di un numero variabile di curve,
come ad esempio il metodo cooplanare che usa una curva per
generare il profilo che verrà estruso lungo una seconda curva.
Il metodo rotate permette di creare una mesh dalla rotazione di
una curva intorno ad una curva che funge da asse di rotazione, questo sistema
viene usato anche
dai metodi swing-move e swing-size che utilizzano una terza curva per variare il
percorso o le dimensioni della curva profilo durante la rotazione.
La mesh-pixel tool funziona in maniera analoga a quella basata
su CSG, si seleziona un'immagine bitmap e si disegna un rettangolo delle
dimensioni volute, la mesh
creata utilizzerà la mappa di colori per generare una variazione altimetrica,
questa funzione è utilissima per creare dei paesaggi partendo da una mappa
IFF.
Tutte o quasi le funzioni di manipolazione che funzionano sulle primive CSG
funzionano anche sulle spline e sulle mesh, però per fruttare appieno le
potenzialità delle spline esistono alcune operazioni che agiscono solo su
quest'ultime. Queste funzioni includono diversi metodi di deformazione delle
curve utilizzando funzioni di bending (piegatura), comandi per adattare la forma
delle curve o delle mesh a quella di primitive o altre mesh, di cambiare la
densità e la distribuzione dei punti di una mesh o spline, di convertire una mesh
in una serie di curve spline, aprire o chiudere le curve e concatenare una o più
mesh tra di loro.
Texture
Per quanto riguarda la gestione delle texture Real offre ben 4 tipi di mappatura
ed una buona varietà di parametri.
I tipi di mappatura possibili sono:: [-->
|
- Default - non occorre specificare un'andamento della texture in quanto questo
tipo di mappa è usato per materiali come il vetro.
- Parallel - utilizza una proiezione parallela della texture in maniera analoga a
quanto fanno anche altri programmi di grafica 3D
- Cilindrical - avvolge la mappa attorno all'oggetto usando un solo asse
- Spherical - avvolge la mappa attorno a tutte le superfici dell'oggetto
chiundendolo in una bolla
- Disk - questa è una caratteristica di Real unica che consente di mappare una
immagine in maniera simile alle scritte che si trovano sui copertoni o sulle
etichette
dei dischi, ovvero piega l'immagine facendole seguire la circonferenza di un
cerchio
|
Un'altro tipo di mappatura che è attivabile dal menu delle texture consente di
adattare l'immagine all'andamento di una mesh.
Materiali
I materiali possono essere caricati e salvati separatamente dalla scena,
consentendo di creare una libreria di materiali enorme oppure di crearne una per
ogni progetto.
Il pannello per la creazione dei materiali presenta i seguenti parametri: [-->
|
- name - il nome del materiale
- texture name - il file bitmap da usare, è possibile utilizzare una serie di immagini
specificando il nome nel formato "nome%d.JPG", così facendo per il
fotogramma 0
di un'animazione verrà caricato il file nome0.JPG e per il fotogramma 1 il file
nome1.JPG e così via.
I formati supportati sono IFF , JPEG, TGA, BMP
- Spline Map - attiva la mappatura di tipo spline
- S-map uvwh - regolano le dimensioni e la posizione della texture da mappare su
di una spline
- Color Map - indica di usare la mappa per dare il colore alla superficie dell'oggetto
- Bump Map - usa il valore rosso dell'immagine per variare l'altezza della
superficie
- Transparency Map- usa il colore verde per definire il grado di trasparenza della
texture sull'oggetto
- Brillance Map - usa il colore blu per regolare il parametro brillance ovvero la
riflessione a specchio
- Shadow Map - utilizza la bitmap scurire la superficie dell'oggetto simulando
l'ombra proiettata da un'altro oggetto
- Clip Map - utilizza la bitmap per cancellare alcune parti dell'oggetto, la superficie
viene rimossa dove non è coperta dalla texture o dove è coperta dal colore
trasparente
- Transp. Color - indica di non utilizzare in fase di mappatura il colore specificato
dai parametri transp. R/G/B
- Unshaded - evita che le ombre proiettate dagli altri oggetti agiscano sulla mappa,
dalla versione 3.5 questo parametro deve essere accompagnato dalla selezione
dei valori impostati tramite il pulsante extras
- Smooth - rimuove la riflessione speculare dai bordi dei materiali trasparenti
- Exclusive - evita che il colore dell'oggetto o delle altre texture applicate si mescoli
a quello di questa texture
- Scope Mask - se impostato attiva le proprietà del materiale solo nella zona
coperta dalla primitiva di mappatura (questa funzione se attivata in
contemporanea con la proprietà mapping di una primitiva permette di creare
nuovi metodi di proiezione
della texture simulando ad esempio un'etichetta)
- Antialias - attiva l'omonimo effetto sulla bitmap
- Tile X/Y - attiva la ripetizione della bitmap sull'asse o gli assi selezionati
- flip X/Y - specifica in quale o quali assi applicare l'immagine specchiata nel caso
sia stato attivato Tile
- Grade X/Y - calcola un gradiente nei rispettivi assi per il passaggio da un pixel ad
un'altro ai bordi di una texture
- Edge X/Y - se attivato la funzione grade funziona all'interno della texture e non
ai bordi
- X-freq - indica quante volte deve essere ripetuta la texture lungo l'asse X, e'
possibile definire un valore negativo che ripete la texture all'infinito ed elimina il
segno di giunzione ai bordi dell'immagine
- Y-freq - come sopra ma per l'asse Y
- Transp R - indica il valore rosso della texture da considerare come trasparente, ad
esempio specificando R 255 G 0 B 0 le parti della texture con questo colore non
vengono usate per colorare l'oggetto
- Transp G - come sopra per il valore verde
- Transp B - come sopra per il valore blu
- Specularity - definisce la dimensione delle macchie di luce sulla superficie, più
alto sarà il valore e più piccola sarà la macchia
- Spec Brightness - definisce l'intensità delle macchie di luce
- Brillance - definisce la quantità di luce riflessa dalla superficie (ovvero se la
superficie è a specchio o meno)
- Transparency - indica il grado di trasparenza dell'oggetto
- Turbidity - definisce il grado di torbidità di un oggetto, ottimo per creare
materiali nebbiosi
- Turbidity sat. - regola la reazione della luce in un oggetto nebbioso
- Refraction - regola l'indice di rifrazione di un oggetto
- Roughnes - regola la ruvidità della superficie
- Dither - abilita e regola il dithering sul materiale
- Bump Height - regola l'effetto del bump mapping
- Glow Size - regola le dimensioni dell'effetto di fosforescenza dell'oggetto
- Glow Brg - regola la luminosità della fosforescenza
- Effect - regola l'influenza del materiale sugli altri applicati allo stesso oggetto
|
Il pulsante Extras consente l'accesso ad un pannello per poter definire colori
riflessi, filtrati e ambientali diversi da quelli impostati consentendo ad esempio di
avere un oggetto nero che emette dei riflessi colorati. Lo stesso pulsante
consente l'accesso al pannello di controllo di eventuali plug-in dedicati ai
materiali come Realize, che consente l'uso di texture procedurali di
Imagine.
Inoltre i seguenti handler premettono di variare il relativo parametro in modo
casuale o seguendo delle formule definite dall'utente oppure utilizzando dei
programmi RPL.
- Mapping - agisce sugli assi di mappatura
- Scope - regola la zona di effetto della texture
- Bump - regola l'effetto di bump mapping
- Color - agisce sul colore della superficie
- Index - agisce sull'indice dei nomi delle texture
Un menu permette di caricare e mostrare un'immagine da utilizzare per il
materiale, di caricare un file RPL per creare texture procedurali e di attivare la
funzione di preview del materiale, infine i pulsanti in fondo alla finestra
consentono di applicare le modifiche o di azzerare i parametri.
Luci
Le fonti di luce disponibili sono di 5 tipi:
- Point - è una fonte di luce puntiforme che non può proiettare ombre morbide
- Line - è l'equivalente di una lampada al neon, è costituita da una linea che
proietta una luce diffusa e può generare ombre morbide (utilissima se,
dovendo come me leggere, impaginare e correggere per oltre 10 ore gionaliere,
riuscite ad abbronzarvi davanti a quel corpo radiante qual è 1084S...
nd).
- Wall - agisce come la luce Line però è di forma rettangolare
- Spot - è una fonte di luce conica capace di generare ombre morbide
- Beam - crea un fascio di luce di raggio costante, in pratica una specie di laser che
può generare ombre morbide
Tutte le fonti di luce non sono visibili direttamente in fase di rendering quindi se
volete visualizzare ad esempio un raggio di luce dovrete creare un'oggetto
nebbioso da affiancare alla fonte di luce, questo problema dovrebbe essere risolto
nella versione 4 che introdurrà le luci volumetriche. Per regolare l'intensità della
luce e il suo raggio di azione esiste un'apposito submenù nel menu che gestisce
le proprietà dei materiali.
Animazioni
Un'altro campo in cui Real eccelle è l'animazione, i sistemi di animazione sono
molti e inoltre vi ricordo che è possibile animare anche le fasi di modifica di
un'oggetto.
Alcuni dei metodi disponibili
sono: [---> |
- Movimento lungo un percorso
- Variazione delle dimensioni
- Rotazioni
- Morphing
- Animazione con keyframe
- Uso di scheletri
- Cinematica inversa
- Uso di particelle per simulare emissioni di fiamme o gas, fontane, sciami di api e
simili
- Uso di forze come gravità, frizione (per chi deve esercitarsi per la
scuola guida ndPetty) e attrazione
|
Tutti gli oggetti possono esser animati compresa la camera permettendo di creare
animazioni in cui la camera insegue un'oggetto, i percorsi possono essere definiti
con l'uso di spline per creare movimenti più morbidi e complessi.
Usando le funzioni di modifica delle superfici si possono ottenere effetti come
quelli di Terminator 2, più precisamente la scena in cui il robot sorge dal
pavimento del manicomio (secondo me, sta storia dell'androide se la
sono inventata i malati di mente... nd.
Tramite l'uso delle collisioni si
può ricreare il movimento di una palla da bowling che abbatte dei birilli. Usando
gli scheletri e i percorsi si può animare un personaggi dandogli la possibilità di
camminare.
Naturalmente più metodi di animazione possono essere combinati per creare
movimenti complessi che possono essere controllati tramite programmi RPL.
Un'apposita finestra consentirà di editare la timeline per poter sincronizzare
l'inizio e la fine di ogni metodo di animazione.
Rendering
Naturalmente una volta che avrete impostato la vostra scena o animazione
vorrete vedere il risultato delle vostre fatiche, quindi adesso vi descriverò il
sistema di rendering.
Il motore di rendering di Real dispone di vari modi di resa che vanno
dall'outline al normal:
- Outiline - in pratica esegue un rendering in bianco e nero in cui traccia i contorni
degli oggetti, però non è utile se la scena è composta da mesh in quanto le rende
come triangoli non troppo precisi
- Draft - ottimo per avere un preview in toni di grigio veloce in quanto non calcola
le proprietà dei materiali e riproduce le mesh come poligoni
- Environment - esegue un rendering tenendo conto delle texture ma non usa
riflessioni e trasparenze, inoltre la scena viene illuminata da una sorgente di luce
posta nel punto di osservazione
- Lampless - la scena viene calcolata usando le proprietà dei materiali simulando la
trasparenza, il sistema di illuminazione è uguale al metodo Environment
- Shadowless - usa tutti gli algoritmi di resa ma disattiva il calcolo delle ombre
- Normal - esegue un raytracing completo
Per poter definire il parametri di rendering si fa ricorso alla finestra Render
Setting, qui di seguito trovate i vari parametri: [-->
|
- Name - nome dei settaggi, è possibile definire diversi setting di rendering per
ogni progetto e richiamarli tramite i pulsanti in fondo alla finestra
- Output - seleziona il formato di output dell'immagine (window, IFF, JPG, BMP,
TGA, PPM, external, quest'ultimo va usato per reindirizzare l'output su delle
librerie di rendering esterne)
- Mode - seleziona uno degli algoritmi di rendering
- Dithering - seleziona il metodo di dithering da utilizzare, questo parametro viene
ignorato in caso di rendering a 24bit
- Ambient R/G/B - imposta il colore della luce ambientale
- Background - imposta il colore di sfondo
- Background gradient - imposta il colore di sfondo secondario per calcolare un
gradiente
- Environment - imposta il colore da usare per l'environment mapping
- Environment gradient - imposta il colore secondario per il gradiente
dell'environment mapping
- Brigthness - regola l'intensità generale delle luci
- Overlight - regola la sovraesposizione
- Recursion - imposta il numero di ricursoni della luce, deve essere aumentato in
caso di scene con molti oggetti riflettenti o trasparenti
- Dither scale - regola il valore di dithering, non ha effetto per i rendering a 24bit
- File - il nome del file contente l'immagine di output
- Backdrop image - il nome dell'immagine da utilizzare
come sfondo
- Environment map - il nome dell'immagine da utilizzare come environment
mapping (un'immagine che non viene visualizzata nella scena, ma solo riflessa
dagli oggetti a
specchio)
- Width - larghezza dell'immagine in pixel
- Height - altezza dell'immagine in pixel
- Pixel h/w - regola il rapporto altezza/larghezza dell'immagine
- DOF Scale - regola la distanza della messa a fuoco
- DOF strength - regola l'ammontare della sfuocatura
- X-resolution - regola la dimensione orizzontale del pixel
- Y-resolution - regola la dimensione verticale del pixel
- Antialiasing - controlla il valore di antialiasing
- Lightsamples - regola il numero di campionamenti della luce, per ottenere delle
ombre morbide deve essere impostato ad almeno 1
- Mat. samples - regola il numero di campionamenti dei materiali non omogenei
come la nebbia
- Subdivisions - regola la precisione di calcolo delle spline e nel caso sia stato
attivato il gadget B-spline->Phong definisce il numero di suddivisione della
superficie
- Autoexp - attiva l'esposizione automatica della scena
- backdrop image - attiva l'uso dell'immagine di background
- Envir. mapping - come sopra per l'immagine di environment
- Field rendering - calcola ogni fotogramma pari mezzo pixel più corto
- No Bgr Antial - disattiva l'aliasing sullo sfondo
- B-spline->phong - trasforma le superfici B-spline in poligoni di tipo phong che
sono più veloci da calcolare anche se meno precisi
- backgr. grad. - attiva il gradiente per lo sfondo
- envir grad - attiva il gradiente per l'environment
- alpha output - il rendering viene utilizzato per generare un canale alpha
- hl-shading - migliora l'output in caso di rendering con pochi colori
|
Inoltre alcuni menu consentono di selezionare e mostrare le immagini di
backdrop e environment, impostare la qualità delle immagini JPEG oltre a
regolare
la quantità di memoria da usare per il rendering, è anche possibile attivare la
modalità di calcolo autobox, che consente di risparmiare memoria calcolando
piccoli pezzi dell'immagine fino al completamento della stessa.
Un'altra funzione disponibile dal menu è il supersampling che utilizza i valori
impostati nei parametri X/Y-resolution per calcolare il pixel dalla media
dei rendering effettuati per il numero di X e Y.
Il gadget Post Effect consente l'accesso a delle librerie di effetti che vengono
calcolati al termine del rendering ed applicati all'immagine finale.
Questi effetti sono:
- Glow - attiva la funzione glow impostata dalla finestra dei materiali
- Lensflare - attiva le lensflare e ne regola i parametri
- Distance blur - regola la sfuocatura degli oggetti in base alla distanza dalla
camera, è più veloce dell'equivalente DOF
- Trail - permette di gestire delle primitive bidimensionali come particelle, che
altrimenti non verrebbero renderizzate, consentendo un notevole risparmio di
memoria e di tempo
Con questo si conclude la recensione di Real 3D 3.5, come ho già accennato non
ho trattato approfonditamente tutti gli aspetti del programma che
richiederebbero la scrittura di un libro (si, si, non vi preoccupate che
riesco a convincerlo a scriverlo e pubblicarlo su AmyWorld... nd),
spero comunque di avervi fatto intuire le notevoli potenzialità di questo
eccellente programma di grafica.
Eccovi in breve alcune anticipazioni sulla futura release 4:
- Supporto multipiattaforme NT/95, SGI, probabilmente Amiga, Mac e Unix vari
(SUN, Linux)
- Supporto reale di superfici NURBS, molti programmi gestiscono le NURBS
trasformadole in poligoni al momento del rendering, Real invece supporterà le
NURBS di grado illimitato senza poligonalizzazione.
- Motore di rendering riscritto per consentire aumenti di velocità e per introdurre
nuove funzionalità, includerà una modalità di rendering multicanale a 64bit per
canale, consentendo di calcolare le immagini a 256bit contro i 24 attuali, anche se
naturalmente il file prodotto sarà a 24bit
- Creazione di materiali tramite linguaggio visuale che permetterà la creazione di
texture complesse senza scrivere neanche una riga di codice
- Sistema di animazione semplificato con introduzione di nuove funzioni di
simulazione fisica
- Supporto di più linguaggi di programmazione, incluso l'RPL, grazie alla nuova
struttura completamente ad oggetti che permetterà una migliore espandibilità
tramite plug-in
- Supporto di operazioni booleane tra superfici nurbs
- Supporto del calcolo distribuito e del multiprocessing simmetrico
- Riscrittura dell'interfaccia grafica con maggiori possibilità di personalizzazione e
semplificazione delle operazioni, ad esempio se si selezionerà una sfera primitiva
l'interfaccia ci mostrerà solamente i comandi e le opzioni che possono essere
applicati a tale oggetto
Ordini e infos...
Per ordinare Real dovete rivolgervi all'estero dato che non esiste un importatore
italiano, quindi dovete contattare la DID,
la Magna Mana Production
oppure la RealSoft (www.great.fi/~realsoft
-www.sgic.fi/~realsoft/welcome.htm
- www.realsoft.fi/userforum), che
naturalmente vi offrono la possibilità di acquistare Phenomena, una raccolta di
funzioni per facilitare animazioni complesse scritte da Alessandro Tasora, potrete
trovare inoltre (se finalmente sarà rilasciato) Enancher una raccolta di
postprocessor migliorati rispetto a quelli forniti con il programma come lensflare,
particelle 3D ed altro. Sui siti nominati potrete trovare link ad altri siti gestiti da
utenti di Real.
Inoltre potrete trovare molte informazioni e tool gratuiti sul sito ftp di Real
(ftp://ftp.win.net/winnet/real3d) mentre se volete un'aiuto o un consiglio potete
iscrivervi alla mailing list mandando un messaggio con il testo subscribe real3d-
list al seguente indirizzo majordomo@lists.win.net. Un'ultima fonte di
informazioni è cartacea e si chiama Enigama Amiga quindi correte ad abbonarvi
(No Paolo fermati!!!... cosa vuoi fare con quell'ascia?.. lascia l'ascia e accetta
l'accetta...Arghhh ;^P ) (Ma dai, mi fa piacere poter contribuire alla
campagna abbonamenti di EAR (medici in prima linea!!!), magari me ne danno
uno gratis... ;) ndPettyManiacoConL'AccettaMacchiataDiSangue).
Lorenzo Pistone
Real3D 3.5
|
Il programma è di ottimo livello ma bisognerebbe migliorare la gestione degli
schermi RTG, aggiornare il programma alla versione 3.53 per poter risolvere
alcuni bug nel sistema di animazione e nella gestione dello stack RPL, rilasciare
un rendering engine per PPC e rivedere la documentazione che in alcuni punti
confonde le idee all'utente e in altri punti andrebbe approfondita. Inoltre
andrebbe ampliata la compatibilità con i formati di file di altri programmi di
grafica 3D. Alcuni di questi difetti sicuramente saranno eliminati con la versione
4, ma nel frattempo sarebbe utile rilasciare una patch perlomeno alla versione
3.53.
Globale:
90
|
|