
Conceptul 3D
În ultimii ani, majoritatea domeniilor de activitate folosesc expresii care au in componență cuvântul „3D”. Grafica este 3D, sunetul este redat 3D, efectele speciale din filme si clipuri publicitare sunt 3D. Până de curând, ținta principala a graficii 3D a fost industria filmelor și industria video. Lucru dovedit prin multitudinea de efecte speciale realizate în totalitate pe computer. Orientarea către 3D reprezintă progresul omenirii în timp. Lumea din jurul nostru este în totalitate tridimensională, din acest motiv tot ce se produce tinde spre 3D. Cu ajutorul unui computer cu putere de procesare mare, utilizatorul poate procesa, simula și crea tot ce își dorește.
În grafica tridimensională, se lucrează cu cele trei dimensiuni: înălțime, lățime și adâncime. Toate programele de dezvoltare 3D folosesc termenul de „spațiu 3D”. Acesta este de fapt un cub virtual definit matematic, asupra căruia programul are control deplin, iar ca dimensiuni este teoretic, infinit. Un punct din acest spațiu este definit de trei axe de coordonate, X, Y și Z. Aceste trei axe reprezintă cele trei dimensiuni enumerate mai sus. Sistemul definit de cele trei axe mai este denumit spațiu R3. Axa reprezintă linia imaginară care definește poziția. Punctul de intersecție al celor 3 axe se numește „punct de origine”, iar valoarea celor trei coordonate în acest punct este egală cu zero (0, 0, 0). Pe lângă sistemul definit de cele trei coordonate universale, utilizatorul poate folosi și alte sisteme de coordonate. Cele mai întâlnite variante sunt coordonatele de vizualizare si coordonatele locale.
Coordonatele de vizualizare se folosesc de portul de vedere ca bază pentru axele X, Y, Z, acestea rămânând aceleași indiferent dacă se schimbă punctul de vedere al utilizatorului asupra scenei 3D. Coordonatele de vizualizare sunt folosite pentru repoziționarea obiectelor, majoritatea transformărilor predefinite, ca de exemplu mutare (Move), rotire (Rotate) și scalare (Scale) utilizând acest tip de sistem de coordonate prestabilit. Orice obiect din spațiul 3D are propriul sistem de coordonate locale. Punctul central al oricărui obiect se afla în centrul acestuia. În punctul central se află, de obicei, punctul central de rotație. [1]
Fig. 1 Poligon compus din fețe, laturi și vertex-uri
Pentru realizarea obiectelor 3D avem nevoie de un software special conceput pentru crearea și editarea acestora. Fiecare program de prelucrare 3D are propria extensie a fișierelor atunci când sunt salvate/exportate. Această extensie a fișierelor este denumită format. Pentru o mai buna prelucrare a obiectelor 3D, formatele pot fi comune pe programe de editare 3D diferite.
Cele mai întâlnite formate 3D sunt: 3ds, an8, blend, dae, kml, skp.
Modelarea reprezintă procesul prin care se creează o reprezentare matematică pentru orice obiect tridimensional cu ajutorul unui program specializat. Produsul finit poartă denumirea de model 3D și poate fi redat ca o imagine bidimensională prin procesul de renderizare (Rendering) sau poate fi folosit pentru diferite simulări pe calculator ale unor fenomene din viața reala.
Pentru realizarea geometriei obiectelor 3D ale unei scene, există cinci metode fundamentale de modelare:
Materialul este definit ca un set de parametrii asociați suprafeței obiectului, în scopul obținerii unui aspectul apropiat de realitate pentru procesul de render. Programul în care se lucrează citește și interpretează toți acești parametrii, poziția camerei și a surselor de lumină, apoi generează culoarea și textura materialelor. Materialele sunt împărțite în două mari categorii: standard și mapate.
Pentru a se genera materiale standard sunt folosiți parametrii referitori la culoare, strălucire și transparență. Materialele standard au un aspect uniform, asemănător vopselei aplicate pe o suprafață. Unele programe permit existența diferitelor tipuri de umbrire în procesul de render. Tipul de umbrire se referă la modul în care programul folosit interpretează parametrii materialului. Există mai multe tipuri de umbrire, cum ar fi: Anisotropic, Metal, Phong, Blinn, etc. .
Pentru generarea de materiale mapate se folosesc fișiere de tip imagine în format bmp, jpg, gif, tiff, etc. sau hărți procedurale, definite matematic. Acestea țin locul unor caracteristici ale materialului standard. De obicei, imaginea bitmap de la baza noului material este foarte asemănătoare cu o fotografie scanată sau preluată cu un aparat foto digital pe un material real. Toate aceste imagini folosite sunt încărcate în memorie, de aceea se recomandă folosirea imaginilor de dimensiuni mici (în format jpg sau gif, nu bmp, tga, tiff) pentru a nu se încetinii viteza de procesare a sistemului, chiar dacă se pierde din calitatea produsului final. Materialele mapate spre deosebire de cele standard, folosesc coordonate de mapare pentru poziționarea corectă pe obiect a imaginii inclusă în material.
Pe lângă materialele standard și cele mapate, există și materialele procedurale. Acestea sunt generate matematic, nu necesită așa multa memorie, nu folosesc coordonate de mapare și se aplică mai bine pe obiectele obținute din operații de decupare, intersecție, uniune, etc. Un dezavantaj al acestor materiale procedurale este ca nu sunt vizibile porturile de vedere din pre-vizualizări interactive, ci doar la sfârșitul procesului de render.[2]
Exemplu de adăugare de texturi [3]
Înainte ca modelele să fie redate, acestea trebuie să fie poziționate într-o scenă. În această operație sunt definite relațiile spațiale dintre obiectele componente ale unei scene, incluzând poziția și dimensiunea acestora. Realizarea scenei reprezintă un factor foarte important în exprimarea intențiilor de modelare, vizualizare și renderizare ale unui utilizator. Pentru ca scena sa fie realizată corect trebuie ținut cont de raportul mărimilor între obiectele prezente în scenă, poziția camerelor, iluminare optimă care ajută la evidențierea detaliilor obiectelor, alegerea și aplicarea materialelor și efectelor speciale, dar și renderizarea scenei în scopul obținerii unei imagini sau unei animații de cea mai buna calitate.
Animația este un subdomeniu al graficii computerizate și reprezintă arta de a crea imagini de natură dinamică cu ajutorul unui computer. O altă denumire a animației este și CGI (Computer Generated Imaging). Cel mai des, acest termen este întâlnit în industria filmului și ajută la generarea de efecte speciale. Cea mai importantă componentă a animației este timpul. Orice obiect 3D, atunci când este animat are un număr de cadre pe secunda (FPS – Frames per second). Pentru realizarea unei animații cadrele sunt redate succesiv și cu o anumită viteză. Viteza minimă de redare a cadrelor pentru a putea fi numită animație este de 15 cadre pe secundă, însă pentru o mișcare mai fluidă este nevoie de un număr mai mare de cadre pe secundă. De exemplu, în cinematografie standardul este de 24 FPS, sistemul PAL, cel european, are 25 FPS, iar cel american, sistemul NTSC, are 30 FPS, în formatul HD se pot alege între 24, 25, 30 și 60 FPS. Atunci când vorbim de animație se alege, de obicei, 30 FPS. Redarea unei scene se aplică doar atunci când procesul de modelare a obiectelor s-a terminat. Procesul de modelare s-a terminat atunci când obiectele au fost poziționate în scenă, au fost mapate cu materiale, au fost adăugate sursele de lumină necesare și cel puțin o cameră.
Metodele de redare pot fi asemănate cu fotografierea sau filmarea unei scene tridimensionale, unde cadrul vizualizat este dat de camera prezență în scenă. Obiectele cuprinse în cadrul vizual sunt proiectate printr-un procedeu matematic pe un plan, numit plan de vizualizare. Acest procedeu poartă numele de proiecție 3D. Proiecția 3D este un procedeu foarte complex, deoarece programul utilizat trebuie sa determine care obiecte sunt vizibile, care sunt mai departe, mai aproape, care sunt iluminate, care sunt în mișcare, etc.. Timpul necesar procesului de render depinde foarte mult de numărul de obiecte prezente în scenă, numărul de poligoane, de lumini, de umbre, de reflexii, dar și de puterea de calcul a computerului pe care se realizează animația. Deseori, se face o redare a animației înainte ca aceasta sa fie renderizată. Această redare de probă are ca scop verificarea poziționării obiectelor din scenă, dar și a sincronizării dintre obiecte. Pentru a nu solicita sistemul foarte mult în timpul redării de probă sunt dezactivate anumite efecte speciale cum ar fi umbre, reflexii, etc., dar și unele texturi. Fiecare program are o casetă de dialog care permite stabilirea parametrilor și declanșarea procesului de redare. În acest mod, se pot stabili ce cadre sa fie redate, numărul lor, și de asemenea se poate alege rezoluția în pixeli a imaginii finale.[4]
Proiecție 3D [5]
Blender este un program de modelare 3D gratuit. Acesta cuprinde întregul domeniu 3D: modelare, animație, simulare, renderizare, compoziție, chiar și editare video și realizare de jocuri video. Utilizatorii experimentați se folosesc de implementarea în Blender a limbajului de programare Python. Astfel se realizează script-uri, dar și diferite unelte personalizate. Aceste script-uri și unelte personalizate sunt adăugate, de obicei, în versiunile viitoare de Blender. Blender este creat pentru proiecte personale sau pentru studio-uri mici de prelucrare 3D și poate fi folosit în mod gratuit, oricare ar fi scopul acestuia, fie el educațional sau comercial. Blender este disponibil pe mai multe platforme, funcționând la fel de bine pe Windows, Linux și Macintosh și este dezvoltat activ de către mai multe persoane din jurul lumii. Printre aceștia se numără dezvoltatori de animații, artiști, experți VFX, oameni de știință și mulți alții. Toate aceste persoane au un scop comun și anume crearea unei linii de producție complet gratuită și o sursă deschisă pentru orice persoană interesată de domeniul dezvoltării tridimensionale. Principalele funcționalități ale programului de editare 3D Blender sunt:
Interfața de utilizare a programului Blender este foarte comună cu interfața celorlalte programe de modelare 3D, având la îndemână o multitudine de unelte de modelare.[2]
Interfață Blender
În partea de sus sunt prezente meniurile: File, Edit, Render, Window, Help, Layout, Modeling, Sculpting, UV Editing, Texture Paint, Shading, Animation, Rendering, Compositing, Scripting și butonul pentru adaugarea de alte meniuri.
În partea dreaptă se găsesc Outliner-ul și secțiunea de proprietăți a obiectului 3D selectat sau al scenei. Outliner-ul este librăria de lucru a scenei. Aici se găsesc toate obiectele din scenă, dar și camerele și luminile. Toate entitățile prezente într-o scenă pot fi grupate în dosare numite Colecții.
Meniurile File, Edit, Help sunt construite clasic. Astfel că în File principalele opțiuni sunt: creare proiect nou, deschidere proiect existent, proiecte recente, import (aici se pot importa în scenă modele 3D create deja în diferite formate), export (aici se pot exporta modelele 3D create in diferite formate). În Edit principalele opțiuni sunt: Undo, Redo, Preference (locul unde se pot modifica configurațiile Blender). În Help se găsesc resursele necesare pentru învățare cu trimitere la site-ul oficial Blender.
În Layout se stabilește poziția obiectelor 3D, a camerei și luminilor din scena creată. Aici sunt prezente uneltele Select (folosit pentru selectarea obiectelor), Move (folosit pentru mutarea obiectelor), Rotate (folosit pentru rotirea obiectelor), Scale (folosit pentru modificarea dimensiunii obiectelor și Transform (acesta este o combinație a tuturor uneltelor enumerate anterior).
În Modeling, obiectul 3D este modelat după nevoia utilizatorului. Pe lângă uneltele prezente în Layout, se găsesc și alte unelte care ajută la realizarea de modele 3D mult mai complexe, cum ar fi: Extrude, Inset Faces, Bevel, Smooth, etc.
În Sculpting, obiectul 3D se modelează cu ajutorul unor modele prestabilite prezente în partea stângă a interfeței de lucru: Draw, Clay, Clay Strips, Layer, Inflate, Blob, etc..
Meniurile UV Editing, Texture Paint și Shading se folosesc pentru editarea și adăugarea de texturi/materiale.
În Animation, obiectul 3D este adus la viață prin modificarea anumitor caracteristici cum ar fi dimensiunea, poziția în scenă sau dacă este vorba de un caracter, îi sunt modificate diferite parți ale corpului.
După ce este realizată animația obiectului, în meniul Rendering se începe procesul de renderizare al scenei. Aici se modifică efectele vizuale ale scenei cum ar fi: umbre, reflexii, și culori.
În Compositing sunt adăugate anumite efecte speciale fie scenei, fie obiectelor pentru asemănarea cât mai mult cu realitatea.
Meniul Scripting este destinat utilizatorilor avansați de Blender. Aici sunt create diferite unelte folosite pentru automatizări sau diverse prototipuri folosind limbajul de programare Python.[2]
Referințe bibliografice
[1] Ionuț Gabriel GHIONEA, „3D Studio Max 4 Multimedia și modelare asistată elemente teoretice și aplicații”, Editura PRINTECH, București, 2002, ISBN: 973-652-630-5
[2] John M. Blain, „The Complete Guide to Blender Graphics: Computer Modeling & Animation”, Editura Taylor & Francis Group, 2012, ISBN-13: 978-1466517035
[3] https://all3dp.com/2/blender-how-to-add-a-texture/
[4] Boardman, T. ,Hubbel, J., „Inside 3D Studio Max 2. Vol. II Modeling and Materials”, Editura New Riders, Indianapolis, 1998, ISBN-13: 978-1562058647