I tutorial di


AmigaAutore: Davide Bigazzi

AmigaProgramma: Ligtwave 5 o superiore

AmigaSistema: AmigaOS 4.x / MorphOS (necessita di promotore di schermo "Newmode", "ModePro" disponibile su Aminet

 


INTEGRAZIONE DI ELEMENTI SINTETICI IN SCENE REALI
 
INTRODUZIONE
Grazie alla computer grafica tridimensionale ormai accessibile a tutti, è possibile forgiare con le proprie mani mondi che esistono solo nella nostra fantasia con un realismo stupefacente. In tali casi è arduo definire delle regole che permettano di valutare il valore di un opera se non seguendo i criteri usati nell'arte. L'animatore non ha limiti espressivi potendo creare uno stile proprio pur mantenendo un ottimo realismo nella resa finale. I requisiti per la buona riuscita di un'immagine dal punto di vista visivo sono la modellazione i materiali e le luci. Sovente si vedono immagini molto valide a colpo d'occhio, belle luci e colori, dove però si percepisce qualcosa che stona. Osservandole più da vicino si notano per esempio sproporzioni fra gli oggetti, o le texture e gli oggetti: le venature di legno troppo grandi rispetto al modello, o la balaustra di una scala troppo bassa e panciuta. Anche chi lavora nel campo dell'architettura e della decorazione si documenta in modo dettagliato prima di passare alla progettazione: neanche l'artista meno sprovveduto può permettersi di lavorare a occhio. Durate la realizzazione di un mio lavoro "The sound of silence", ho preparato degli schizzi con tutte le misure degli arredi della scena, ricavati da quelli presenti nella mia stanza. Realizzare un'immagine fine a se stessa, dal soggetto libero o meglio a completa discrezione dell'artista non è lo stesso che la progettazione di un ambiente da attuare nel mondo reale: bisogna attenersi in maniera precisa ai materiali scelti, fornendo un risultato il più attendibile possibile al traguardo voluto. Ovviamente brutti soggetti e inquadrature possono solo danneggiare il lato artistico di un lavoro e la sua efficacia come mezzo espressivo, non di certo il suo realismo: una brutta foto resta sempre e comunque una foto. In ogni caso se da un lato costruire da zero un ambiente tridimensionale convincente sia relativamente difficile, l'integrazione di un'entità sintetica in una foto o in una sequenza ripresa dal vivo senza che l'artefatto sia smascherato, presenta non poche difficoltà.
 
ALCUNE CONSIDERAZIONI
Nella maggior parte dei casi la buona riuscita di un'integrazione sul sito dipende dalla quantità e dalla qualità dei dati in possesso. La posizione del sole se la foto è diurna, o delle luci principali se notturna o in un ambiente illuminato artificialmente, sono molto importanti per la corretta esposizione delle entità tridimensionali. L'allineamento e la posizione senonché il tipo di obbiettivo e diaframma della telecamera o della macchina fotografica, consentiranno una corretta inquadratura del soggetto sintetico. L'assenza di questi dati ci obbligherà a fare una stima più o meno approssimata dei parametri che caratterizzano la ripresa, costringendoci a fare numerose prove soprattutto per quel che riguarda la definizione della telecamera virtuale: le luci di solito rappresentano un problema meno arduo e difficile da rettificare in un secondo tempo.
 
L'INQUADRATURA
LightWave come la maggior parte dei programmi più moderni, permette l'inserimento di un'immagine di sfondo nella scena visualizzabile anche nella vista della telecamera. La griglia di riferimento serve in questo caso a impostare l'inquadratura facendo in modo che le sue linee di fuga corrispondano con quelle della foto. Non siamo certo a livello di alcuni CAD molto evoluti dal costo di svariati milioni di lire, come AllPlan, dove indicando al programma alcuni punti sulla foto di sfondo rilevati sul posto rispetto alla telecamera, si ottiene automaticamente l'inquadratura corretta. Nel pannello "Camera" si possono variare alcuni parametri che influiscono sulle sue caratteristiche come il "Film Size", che permette la scelta di svariati obbiettivi, anche se in questo caso, il requester che appare lo dice chiaramente, la scelta influisce solo sull'efficacia della profondità di campo. Un fattore molto importante è invece lo "Zoom Factor", ovvero il fattore di ingrandimento, diminuendo il quale aumentano l'ampiezza dell'inquadratura e l'effetto di deformazione prospettica. Nel mondo reale gli obbiettivi che consentono un fattore di ingrandimento variabile riproducono lo stesso effetto che avremmo variando la distanza della telecamera virtuale dal soggetto. Lo "Zoom Factor" di LightWave invece ci permette di cambiare il tipo di lenti in modo graduale, da un teleobbiettivo fino ad un "Fish eye" passando per un grandangolare, cosa nella realtà impossibile. I teleobbiettivi hanno generalmente diametri maggiori e una minore curvatura delle lenti, permettendo di raccogliere più luce per zone più piccole del soggetto, e di avere un potere di ingrandimento più o meno elevato grazie alla maggiore lunghezza focale; ovviamente la minor curvatura delle ottiche permette un angolo di inquadratura più limitato, al contrario di obbiettivi come il grandangolare e soprattutto il "Fish eye" che anno lenti molto convesse e una limitata lunghezza focale.
Tutto ciò ci fa intuire che durante un'animazione è consigliabile avvicinare al soggetto la telecamera piuttosto che variarne dinamicamente il fattore di ingrandimento, cosa peraltro possibile con LigtWave, tramite l'uso degli "envelopes".
 
L'ACQUISIZIONE DELL'IMMAGINE
Una volta risolti i non poco spinosi problemi legati all'inquadratura della scena, restano comunque altri fattori di non poca importanza da considerare. Un'immagine realizzata manualmente con un programma di painting o automaticamente con l'ausilio di un motore di rendering è intrinsecamente perfetta, in quanto ogni suo punto rappresenta a tutti gli effetti una sua parte diversa. Purtroppo nel caso di soggetti acquisiti tramite scanner o photo-CD per esempio, la definizione dell'immagine (non del file) dipende dalla qualità della fonte: sovente si lavora con immagini dove i punti sono più piccoli della grana della foto originale, questo soprattutto quando si usano pellicole non professionali.
E per questo motivo che sui photo-CD amatoriali l'aumento di estensione dei file non è proporzionale al numero di informazioni ricavabili, anche se le immagini più grandi sono state acquisite effettivamente ad una risoluzione più importante. A tale proposito mi ricordo di una volta, quando lavorai su un'immagine il cui file originale occupava su disco quasi cento megabyte: era stata acquisita a partire da una pellicola professionale dallo stesso studio che aveva realizzato la ripresa aerea. Ebbene, non c'è paragone! Ammesso di essere in grado di stabilire a quale risoluzione deve essere scansita una foto per fare in modo che i suoi punti abbiano la stessa dimensione della grana, bisogna considerare che quest'ultima non è distribuita uniformemente come i pixel di un'immagine presentando infatti un'andatura molto simile al rumore frattale. Quindi per essere sicuri di non perdere dettaglio soprattutto quando si dispone di una fonte di qualità, è meglio acquisire l'immagine ad una risoluzione più alta di quella utile, riducendola in un secondo tempo.
Nel caso non fosse possibile disporre di una buona fonte, sarà il caso di deteriorare l'immagine renderizzata con l'ausilio di un filtro di sfuocatura ("blur"), allo scopo di evitare che la sua parte artificiale riveli la sua natura.
 
LIMITI DELLE APPARECCHIATURE OTTICHE
Il materiale fotosensibile che riveste le pellicole fotografiche ha bisogno di essere esposto alla luce un certo tempo per essere impressionato, in funzione aella quantità di luce raccolta dall'obbiettivo e dalla sensibilità della pellicola (è da notare che generalmente è inversamente proporzionale alla sua definizione). Quando un'entità all'interno dell'inquadratura si sposta in maniera sensibile durante questo tempo, lascia una scia sulla foto, è per questa ragione che i soggetti in movimento hanno bisogno di tempi di scatto veloci assieme a pellicole molto sensibili. La fotografia notturna di corpi celesti richiede un sistema di puntamento in grado di compensare automaticamente la rotazione della volta celeste. LightWave è in grado di simulare questo fenomeno se si attiva nel pannello "Camera" la funzione "Motion Blur" (sfuocatura di movimento). E inutile dire che questa opzione richiede tempi di calcolo supplementari
durante la fase di rendering, oltre al fatto che è attivabile solo in abbinamento all'antialiasing. La capacità da parte di un obbiettivo di mettere a fuoco contemporaneamente entità a distanze diverse viene chiamata "profondità di campo" e dipende sia il tipo di obbiettivo (vedere più sopra), che dal fattore di ingrandimento: più quest'ultimo è alto più la profondità di campo è limitata. Mentre un obbiettivo varia la distanza di messa a fuoco muovendo le lenti che lo compongono una rispetto all'altra lungo il loro asse, il nostro occhio si serve di alcuni muscoli capaci di variarne la curvatura della superficie in modo automatico (con un buon allenamento anche volontario). Anche in questo caso sempre nel pannello "Camera" disponiamo della simulazione di questo fenomeno chiamata in inglese "Depth of Field".
Come nel caso precedente la sua attivazione dilata considerevolmente i tempi di rendering.
 
UN SEMPLICE ESEMPIO
LightWave possiede uno strumento che facilita enormemente l'integrazione di un'entità tridimensionale in un ambiente reale: il "Front Projection Image Map". Questa tipologia di proiezione può essere utilizzata su un oggetto in modalità "Clip Map" (il "Displacement Map" non è disponibile), e su una superficie esattamente come con gli altri metodi: colore, luminosità, diffusione, specularità, riflessione e trasparenza (il "Bump Map" non è accessibile). A differenza degli altri sistemi di mapping qui non troviamo ne il dimensionamento della texture, ne la scelta dell'asse di proiezione. In pratica con questo metodo, avendo preventivamente posto un'immagine sullo sfondo della scena ("Background Image"), potremo applicare la stessa su qualsiasi oggetto presente, in modo tale che questa appaia sempre allineata e delle stesse dimensioni della prima, indipendentemente dal tipo di oggetto, e da ogni parametro relativo alla telecamera.
Ammettiamo a titolo di esempio di avere acquisito una foto di un paesaggio dove in primo piano è presente un albero. Ora, quello che vogliamo fare è inserire un oggetto tridimensionale dietro l'arbusto ma davanti al resto del paesaggio. Non dovremo far altro che ricavare dalla foto la sagoma dell'albero in bianco su sfondo nero; poi dopo aver posizionato un semplice rettangolo davanti all'oggetto, facendo in modo che nasconda completamente l'arbusto sull'immagine di sfondo, lo ritaglieremo con la sagoma ottenuta usando il "Clip Map" in modalità "Front Projection". Infine sempre su quest'ultimo applicheremo lo stesso tipo di proiezione per la mappatura del colore utilizzando questa volta la stessa immagine dello sfondo.
 
 
ATTERRAGGIO DI UN'ASTRONAVE TRA LE ROVINE DI UN TEMPIO
Utilizzando questa tecnica si possono realizzare in poco tempo effetti di grande impatto. Come ad esempio un'astronave che atterra tra le rovine di un tempio egizio. Per realizzare questa breve sequenza (80 fotogrammi), ho prelevato un'immagine da un Kodak Photo-CD dove sono archiviate le foto di un mio viaggio in Egitto Figura 1
E evidente che dovendo effettuare un'animazione di questo tipo, se vogliamo ottenere dei movimenti della telecamera una semplice foto non sarà sufficiente: bisognerà disporre di una sequenza di immagini a cui dovremo adattare il movimento dell'obbiettivo virtuale. Quindi in questo caso ci limiteremo a spostare solo il soggetto della scena. Una volta ottenuta la foto da inserire come "Background Image" sia nella scena (pannello "Effects", cartella "Composing" del Layout) ,che nello schermo di LightWave (pannello "Options", cartella "Layout View", opzione "BG Image"), avremo bisogno di definire quali elementi dell'immagine dovranno apparire in primo piano davanti all'astronave. In questo caso, peraltro abbastanza semplice, ci serviremo di un programma di fotoritocco come ArtEffect, per separare tramite le maschere ("Stencil" in inglese) le quattro colonne sormontate dalla trave in primo piano Figura 2
. Otterremo così un'immagine a due colori Figura 3
da utilizzare per ritagliare il rettangolo che porremo tra la telecamera e il soggetto virtuale (pannello "Objects", opzione "Clip Map"; modalità "Front Projection Image Map"). E ovvio che dovremo fare in modo che il rettangolo copra completamente la vista della telecamera ("Camera View"). Sempre nel pannello "Object" disattiveremo le opzioni "Self shadow" e "Recive Shadow". Volendo avremo potuto istruire LightWave di proiettare le ombre di eventuali oggetti posti davanti al rettangolo su di esso, rivelando però ad un attento osservatore l'artefatto: nella realtà le ombre dovrebbero adattarsi alla forma arrotondata delle colonne, cosa impossibile visto che abbiamo a che fare con un'entità bidimensionale (Per complicarci la vita avremo potuto creare un modello tridimensionale del colonnato al posto del rettangolo). Ora bisognerà definire le caratteristiche della superficie dell'oggetto in modo che si confonda perfettamente con lo sfondo: in pratica l'illuminazione della scena non dovrà influire in nessun modo sui colori e la luminosità dell'immagine che proietteremo. Applichiamo inanzi tutto sul rettangolo la foto che abbiamo sullo sfondo in modalità "Color" (Pannello "Surfaces", tasto "T" in "Surface Color", modalità "Front Projection Map"), e infine impostiamo la luminosità al 100 % ("Luminosity") e la diffusione a 0 % (Diffuse Level). Impostando la diffusione a 0 abbiamo fatto in modo che la superficie dell'oggetto non diffonda in alcun modo la luce proveniente dalla scena, mentre la luminosità al massimo serve a preservare i colori e la luminosità dell'immagine mappata in modo che sia identica a quella sullo sfondo. L'operazione più complessa durante l'impostazione della scena, è la definizione della telecamera, è inevitabile fare diversi tentativi prima di ottenere l'inquadratura corretta, in ogni caso la griglia di riferimento di LightWave può aiutare a ottenere una corrispondenza accettabile tra le linee di fuga nella foto e quelle della griglia, ottenendo un risultato simile a quello presente in Figura 4
Al limite il compito può essere facilitato tracciando sull'immagine in maniera provvisoria le linee principali che ne caratterizzano la prospettiva. Per quel che riguarda l'animazione dell'oggetto potete usare qualsiasi cosa, volendo, persino una mucca, anche se in ambito egizio è un po' meno inconsueta e di effetto che non un'astronave. Personalmente ho usato lo "Space fighter" presente con la dotazione del programma (newtek/objects/space/spacefighter.lwo). Per il suo movimento ho usato un "envelopes" in modo da provvocarne un rallentamento in prossimità del terreno. Tre "Lens Flares", uno per il motore principale, gli altri due per i propulsori sotto le ali rallentano l'astronave, spegnendosi poi durante gli ultimi venti fotogrammi dell'animazione. Anche per ottenere questo effetto ho utilizzato gli "envelopes". Non approfondirò ulteriormente questo argomento, in quanto non rientra nell'oggetto di questo tutorial. In tutti i casi potete trovare qui di seguito la scena completa pronta per il calcolo. Vi ricordo che il testo è caricabile così com'è dal Layout dal momento che LightWave salva in formato ascii. Dovrete modificare i percorsi relativi agli oggetti e le immagini per adattarli alle vostre configurazioni, o al limite caricando la scena, quando il programma non troverà i files potrete indicargli la nuova posizione su disco. Le immagini essendo state visualizzate dal vostro browser potrete ricuperarle dalla cache sul disco rigido.
Figura 5
In quest'ultima figura potete vedere un fotogramma della scena calcolato.
Ci tengo a precisare che se avete dubbi e delucidazioni da espormi riguardo questo e gli altri tutorial potete contattarmi attraverso la posta elettronica.
Buon lavoro!
Davide Bigazzi

 


Definizione della scena

LWSC

1

FirstFrame 1

LastFrame 80

FrameStep 1

FramesPerSecond 30.000000

LoadObject OBJECTS/SPACE/SPACEFIGHTER.LWO

ShowObject 7 7

ObjectMotion (unnamed)

9

5

-0.34 7.23 2.38 90 0 0 0.4 0.4 0.4

0 0 0 0 0

-0.34 2.87 2.38 90 0 0 0.4 0.4 0.4

10 0 0 0 0

-0.34 -0.43 2.38 90 0 0 0.4 0.4 0.4

30 0 0 0 0

-0.34 -1.3 2.38 90 0 0 0.4 0.4 0.4

60 0 0 0 0

-0.34 -1.3 2.38 90 0 0 0.4 0.4 0.4

80 1 0 0 0

EndBehavior 1

LockedChannels 5

ShadowOptions 7

LoadObject 3DWorks:TUTORIAL/GENNAIO 98/Colonne.lwo

ShowObject 7 7

ObjectMotion (unnamed)

9

1

0 0 0 0 0 0 1 1 1

0 0 0 0 0

EndBehavior 1

ClipMap Front Projection Image Map

TextureImage 3DWorks:TUTORIAL/GENNAIO 98/Clip.iff

TextureWrapModes 2 2

TextureFlags 4

TextureSize 1 1 1

TextureValue 0.500000

ShadowOptions 2

AmbientColor 255 255 255

AmbIntensity 0.500000

AddLight

LightName Light

ShowLight 1 7

LightMotion (unnamed)

9

1

-4.799999 4.139998 -2.48 60 30 0 1 1 1

0 0 0 0 0

EndBehavior 1

LockedChannels 5

TargetObject 1

LightColor 255 255 255

LgtIntensity 1.200000

LightType 0

ShadowType 1

AddLight

LightName Motore

ShowLight 1 7

LightMotion (unnamed)

9

1

0 0 -3.1 0 0 0 0 0 0

0 0 0 0 0

EndBehavior 1

ParentObject 1

TargetObject 1

LightColor 39 35 19

LgtIntensity 0.000000

LightType 1

LensFlare 1

FlareIntensity (envelope)

1

3

0.8

0 0 0 0 0

0.8

60 1 0 0 0

0

80 0 0 0 0

EndBehavior 1

FlareDissolve 0.000000

LensFlareFade 4

LensFlareOptions 553

FlareRandStreakInt 0.030000

FlareRandStreakDens 50.000000

FlareRandStreakSharp 6.000000

ShadowType 0

ShowCamera 1 7

CameraMotion (unnamed)

9

1

4.475485 -2.55 -5.559183 -32 -20.4 0 1 1 1

0 0 0 0 0

EndBehavior 1

LockedChannels 48

ZoomFactor 3.200000

RenderMode 2

RayTraceEffects 1

Resolution 1

CustomSize 640 480

PixelAspectRatio 2

SegmentMemory 8800000

Antialiasing 2

AdaptiveSampling 1

AdaptiveThreshold 16

FilmSize 2

FieldRendering 0

MotionBlur 0

DepthOfField 0

BGImage 3DWorks:TUTORIAL/GENNAIO 98/Sfondo.iff

SolidBackdrop 1

BackdropColor 0 0 0

ZenithColor 0 40 80

SkyColor 120 180 240

GroundColor 50 40 30

NadirColor 100 80 60

FogType 0

DitherIntensity 2

AnimatedDither 0

DataOverlayLabel

SaveAnimationName C:\DAVIDE\3DWORKS\Gennaio\Anim.avi

AnimationType 1

OutputFilenameFormat 0

SaveRGBImagesPrefix 3DWorks:TUTORIAL/GENNAIO 98/Frames/Frame.

RGBImageFormat 0

ViewMode 5

ViewAimpoint -1.580000 1.929467 2.380000

ViewDirection 0.000000 -0.174533 0.000000

ViewZoomFactor 0.632099

LayoutGrid 8

GridSize 1.000000

ShowMotionPath 1

ShowSafeAreas 0

ShowBGImage 0

ShowFogRadius 0

ShowRedraw 0

 


Page by William Molducci © 1996-2009, all rights reserved - Tutti i marchi citati sono registrati dai rispettivi proprietari.