Un material din Cycles este compus din diferite componente, numite iniţial closures şi ulterior redenumite shaders (de însuşi Brecht Van Lommel), care pot fi combinate împreună pentru a construi culori mai complexe.
În acest capitol vom parcurge etapele de bază necesare pentru a construi un material în Cycles, pentru a activa previzualizarea din fereastra 3D şi de a randa scena.
Pregătirea
În descrierea de mai jos, Blender are setările implicite; în cazul în care este nevoie să se revină la setările implicite, la deschiderea programului Blender, click pe meniul File de sus, apoi pe Load Factory Settings.
În bara de meniu de sus, comută de la Blender Render la Cycles Render (ţinând mouseul peste acest buton, apare eticheta Engine to use for rendering).
Desparte vederea 3D în două rânduri orizontale şi schimbă vederea de sus la fereastra Node Editor cu click pe butonul Editor type din partea stângă jos a ferestrei (în antetul de jos). Fereastra Node Editor este, de fapt, cea pe care o vom folosi pentru a construi culorile prin amestecarea nodurilor (dar aceasta nu este singura metodă).
Aşează cursorul de mouse în vederea 3D şi adaugă un plan sub cub (apasă Shift + A, alege Mesh | Plane). Comută la modul de editare (apasă tasta Tab), măreşte planul de 3.5 ori (apasă S, tastează 3.5 apoi apasă tasta Enter) şi ieşi din modul de editare (apasă tastaTab). Acum mută planul în jos cu o unitate Blender (apasă G, apoi Z, tastează -1, apoi apasă tasta Enter).
În bara de jos a ferestrei 3D se află un buton (Viewport Shading) pe care este desenată o sferă - click pe buton. Blender afişează un meniu cu diferite opţiuni (Bounding Box, Wireframe, Solid, Texture, Material, and Rendered). Selectează Rendered din partea de sus a listei şi observă cum cubul este randat în timp real în vederea 3D.
Acum poţi roti sau/ şi muta vederea sau cubul pentru a vedea actualizarea randării în timp real (viteza actualizării depinde de complexitatea scenei şi de puterea de procesare a CPU sau a plăcii grafice).
Să aflăm mai multe despre Cycles
Selectează obiectul Lamp din fereastra Outliner din dreapta sus. Implicit, lampa este de tip Point.
În panoul Properties aflat la dreapta, secțiunea Object Data, sub eticheta Nodes, click pe Use Nodes pentru a activa sistemul de noduri pentru lumina selectată în scenă.
După activarea sistemului de noduri, în fereastra Node Editor de sus apar nodurile nou create: Emission și Lamp Output.
La parametrul Strength, setat implicit la 100.000, creşte valoarea, pentru ca intensitatea lămpii să crească; se poate vedea cum cubul şi planul devin mai strălucitoare, ca în vederea de mai jos. Parametrul Strenght poate fi modificat fie din fereastra Node Editor (în nodul Emission), fie din panoul Properties, secțiunea Object Data, sub eticheta Nodes.
Tocmai am pregătit scena şi am folosit una din cele mai apreciate caracteristici din Cycles: previzualizarea randării în timp real. Acum să adăugăm materiale obiectelor:
1. Pentru a atribui o culoare cubului, selectează-l fie cu left click pe numele lui din fereastra Outliner, fie cu right click pe obiect în vederea Rendered (atenţie, în modul de afișare Rendered, conturul care indică selecţia obiectului nu este vizibil, deoarece conturul nu se randează).
2. În panoul Properties, fereastra Material: având selectate setările implicite - Factory Settings, cubul are atribuit deja un material implicit (cum se poate vedea în Properties | Material | Surface). În orice caz, pentru a activa sistemul de noduri, click pe butonul Use Nodes aflat fie sub eticheta Surface fie prin activarea casetei Use Nodes din antetul ferestrei Node Editor.
3. La bifarea casetei Use Nodes, conţinutul etichetei Surface se modifică, pentru a arăta că a fost atribuit cubului o culoare de tip Diffuse BSDF; corespunzător acestui lucru, au apărut două noduri în fereastra Node Editor: cel pentru culoare Diffuse BSDF care este deja conectat la mufa Surface a nodului Material Output (mufa de intrare Volume nu face nimic deocamdată, despre ea şi despre Displacement vom discuta ulterior).
4. În fereastra Node Editor derulează până la nodul Diffuse BSDF. Left-click pe dreptunghiul Color: este afişată o roată cu culori de unde poate fi aleasă o altă culoare cu click pe roata cu culori sau prin tastarea valorilor RGB (există o valoare şi pentru transparenţă – canalul Alpha, care în acest caz nu are nicio influenţă asupra culorii obiectului):
5. Cubul randat în vederea 3D îşi schimbă culoarea în timp real. Alege culoarea verde tastând la RGB valorile 0.430, 0.800 şi 0.499.
6. În fereastra Material, sub eticheta Surface, click pe butonul Surface, care deocamdată afişează elementul Diffuse BSDF. Din meniul vertical, selectează elementul Glossy BSDF. Nodul se modifică şi în fereastra Node Editor, la fel şi materialul cubului din fereastra Rendered, ca în imaginea de mai jos:
Tocmai am comutat de la un nod de culoare la un altul, iar culoarea aleasă iniţial a fost păstrată; de fapt acest lucru se întâmplă pentru toate valorile care pot fi păstrate de la un nod la altul.
Acum, pentru că în lumea reală nu poate exista un material care este 100% mat, putem face un material în Cycles amestecând nodul Diffuse BSDF cu nodul Glossy BSDF cu ajutorul unui nod Mix Shader, conectat la nodul Material Output.
1. În fereastra Material, sub eticheta Surface, click pe butonul Surface care acum arată elementul Glossy BSDF şi readu elementul Diffuse BSDF.
2. În fereastra Node Editor, apasă Shift + A. Blender afişează un meniu cu mai multe opţiuni, printre care şi Shader.
3. Alege din Shader tipul Glossy BSDF. Nodul este adăugat în fereastra Node Editor, dar acesta nu este conectat la celelalte noduri (de fapt nu este vizibil în fereastra Material, ci doar în fereastra Node Editor); noile noduri sunt deja selectate.
4. Apasă iar Shift + A în fereastra Node Editor şi adaugă în scenă un nod de tip Mix Shader.
5. Apasă tasta G pentru a muta nodul peste conexiunea dintre nodul Diffuse BSDF şi nodul Material Output (mai întâi e posibil să trebuiască ajustată poziţia dintre cele două noduri pentru a face loc între ele). Nodul Mix Shader este prins automat între cele două noduri, ieşirea din nodul Diffuse fiind conectată la prima mufă Shader, ca în imaginea următoare:
6. Apasă left-click peste punctul verde de ieşire din nodul Glossy BSDF şi trage legătura la a doua mufă de intrare a nodului Mix Shader. Eliberează butonul de mouse pentru a conecta nodurile.
7. Pentru că valoarea de amestecare din Fac (factor) a nodului Mix Shader este setată implicit la 500, cele două componente, Diffuse şi Glossy, influenţează în părţi egale suprafaţa cubului (50% fiecare). Left-click pe cursorul Fac şi trage la valoarea 0.000. Suprafaţa cubului este influenţată doar de componenta Diffuse, deoarece nodul Diffuse BSDF este conectat la prima mufă de intrare Shader, care corespunde valorii 0.000.
8. Glisează cursorul Fac la 1.000 şi suprafaţa afişează doar componenta Glossy BSDF, care este conectată la mufa a doua de intrare în Shader, care corespunde valorii 1.000.
9. Alege la Fac valoarea de 0.800. Feţele cubului aruncă reflecţii pe planul alb, deoarece materialul are reflecţia la 80 % şi este mat 20 %:
10. Selectează planul, iar în secţiunea Material click pe butonul New şi alege culoarea albă implicită.
Ca să rezumăm, un material Cycles este format dintr-un nod (closure sau node shader) conectat la nodul de ieşire Material Output; implicit, pentru un nou material, nodul de culoare este Diffuse BSDF cu culoarea RGB setată la 0.800, iar rezultatul este un material alb mat (având rugozitatea Roughness la 0.000 care corespunde unei culori Lambert). Nodul Diffuse BSDF poate fi înlocuit cu alt nod valabil în listă. De exemplu, cu un nod Glossy BSDF ca în scena anterioară, care produce o suprafaţă lucioasă.
După cum am văzut, ferestra Node Editor nu este singura metodă de construire a materialelor; în panoul Properties din dreapta interfeţei utilizatorului, avem acces la fereastra Material, care este împărţită de obicei în:
• Nume material, utilizator şi eticheta datablock
• Eticheta Surface, care include o coloană cu nodurile adăugate în fereastra Node Editor care sunt deja conectate între ele.
• Eticheta Displacement, despre care vom vorbi ulterior.
• Eticheta Settings, unde se pot seta culoarea obiectului cum se vede în vedere în mod not-rendered (Viewport Color), materialul Pass Index, şi o opţiune Multiple Importance Sample.
Fereastra Material nu afişează doar ceea ce lucrăm în fereastra Node Editor şi modificările corespunzătoare (şi vice versa), ci poate fi folosită şi pentru a modifica valorile, pentru a comuta între noduri şi a le conecta cu alte noduri.
Ferestrele Material şi Node Editor sunt asemănătoare, astfel încât nu există nicio prevalenţă pentru folosirea uneia sau alteia la construirea unui material; ambele pot fi folosite individual sau combinate, în funcţie de preferinţe sau obişnuinţă. În unele cazuri, este mai la îndemână comutarea unui nod din eticheta Surface aflată în secţiunea Material din dreapta (sau a texturii din secţiunea Texture, dar vom vorbi despre texturi mai târziu), păstrând nemodificate toate setările şi legăturile din reţeaua cu noduri.
Însă secţiunea Material devine destul de complexă şi de confuză pe măsură ce reţeaua creşte în complexitate, pe când modul de afişare grafic din fereastra Node Editor afişează acelaşi lucru într-un mod mai clar şi mai inteligibil.
Alte informaţii
În vederea Rendered se poate observa că imaginea este neclară (noisy) şi că există puncte albe în anumite zone ale imaginii; acestea apar datorită suprafeţelor transparente, luminescente sau lucioase. În acest caz au apărut datorită componentei glossy.
Pentru a le evita, se fac următoarele modificări:
1. În panoul Properties, secțiunea Render, eticheta Sampling, se modifică valoarea Samples la 100 pentru Preview şi Render (implicit au valoarea 10). TImpul de construire al imaginii este mai mare, dar imaginea devine mai clară.
2. La Clamp se alege valoarea 1.00 (implicit este 0.00). În eticheta Light Paths se alege pentru Filter Glossy valoarea 1.00. Imaginea randată este mai netedă şi fără neclarităţi (noise):
3. Salvează fişierul blend cu cycles1.blend. Fișierul va fi folosit în capitolul următor.
Valoarea 10 pentru Samples nu este suficientă pentru o imagine fără neclarităţi, dar este bună pentru o previzualizare rapidă. Se poate lăsa valoarea implicită pentru Preview şi creşte doar valoarea pentru Render, pentru a obţine o randare mai clară, realizată în timp mai lung doar la randarea finală (care este activată, ca în BI, prin apăsarea tastei F12).
Folosind valoarea Clamp, se poate reduce energia luminii. Pe plan intern, Blender converteşte culoarea imaginii din spaţiu în liniar. Apoi reconverteşte culoarea la RGB, de la 0 la 255 pentru imaginea finală. Valoarea 1.00 în spaţiul liniar înseamnă că toate valorile imaginii sunt incluse în domeniul de valori 0 - 1, şi că valorile mai mari decât 1 nu sunt posibile, astfel eliminând problema punctelor strălucitoare. Valorile pentru Clamp mai mari decât 1.00 pot reduce intensitatea luminozităţii generale din scenă.
Valoarea pentru Filter Glossy este exact ceea ce îi spune numele, un filtru care diminuează reflecţia strălucitoare de pe suprafaţă pentru a reduce strălucirea (noise).
Chiar şi cu aceeaşi valoare a eşantioanelor (samples), previzualizarea din vederea Rendered nu este perfect asemănătoare cu cea de la randarea finală, în ceea ce priveşte neclaritatea (noise) şi punctele strălucitoare. Acest lucru se datorează faptului că fereastra de previzualizare 3D şi imaginea randată au mărimi diferite, iar neclarităţile vizibile în randarea finală pot să nu se vadă la previzualizare, atunci când obiectele din scenă se văd mai mici.