Blog (18)
Komentarze (138)
Recenzje (0)
@skala67Grafika 3D: Blender, cz. IX – materiały

Grafika 3D: Blender, cz. IX – materiały

15.11.2015 | aktual.: 15.11.2015 19:24

Co to jest materiał

[img=09_00_blender]

Obiekty w grafice 3D rozpoznajemy przez ich wygląd, a na wygląd wpływa m.in. zastosowany materiał, który ma szereg atrybutów:

  • Kolor – często reprezentowany przez trzy składowe RGB (Red, Green, Blue);
  • Połysk – zdolność do odbijania/pochłaniania lub rozpraszania światła – materiały metaliczne, perłowe, matowe itd.;
  • Przeźroczystość – zdolność do przepuszczania światła – materiały przeźroczyste, półprzeźroczyste, nieprzeźroczyste; uwaga: światło przechodząc z jednego ośrodka np powietrza do drugiego np. szkła ulega załamaniu;
  • Świecenie – zdolność do bycia źródłem światła – ilość światła wysyłanego jest większa od przyjmowanego;
  • Faktura – rodzaj powierzchni – gładka, szorstka, jednorodna, nieciągła itd.
Atrybuty materiału
Atrybuty materiału

Blender Render

W Blenderze istnieją dwie główne i zgoła inne możliwości definiowania materiałów oparte o różne silniki renderujące:

  1. Blender Render – domyślny, starszy, już nie rozwijany system, ale zwykle szybszy – nadaje się do prostych renderów i gier. Dziś się tym sposobem zajmiemy;
  2. Cycles – nowoczesny, stale rozwijany system – nadaje się do fotorealistycznych renedrów, raczej bardziej wymagający od sprzętu, ale wspiera obliczenia na GPU.

Zakładka Material

Aby móc zarządzać materiałami zwykle musimy rozsunąć prawe okno właściwości, aby pojawiła się zakładka z materiałami.

Zakładka materiały
Zakładka materiały

Obiektom przypisujemy materiały z których są "zrobione" wskazując z biblioteki materiałów.

Biblioteka materiałów
Biblioteka materiałów

Nowy materiał

Na początku biblioteka jest pusta (nie licząc domyślnego materiału) i musimy sami dodać nieco materiałów do biblioteki. Gdy obiekt nie ma przypisanego materiału, to wciskając przycisk New możemy utworzyć nowy.

Dodawanie materiału
Dodawanie materiału

Gdy jakiś wybrany obiekt ma już przypisany materiał to dodanie nowego materiału do biblioteki realizujemy wciskając plus (+).

Dodawanie (powielanie) materiału
Dodawanie (powielanie) materiału

Tym samym ten nowo utworzony materiał będzie kopią poprzedniego i będzie jednocześnie przypisany do wybranego obiektu. Naszym zadaniem jest zmiana parametrów materiału na nowe.

Dodawanie materiałów będzie miało zatem charakter nieco interaktywny, gdyż będziemy określali szereg różnych parametrów dla różnych atrybutów i w okienku podglądu kontrolowali wynik działania.

Podstawowe właściwości materiału
Podstawowe właściwości materiału

Nazwa materiału

Jednym z ważniejszych parametrów jest... nazwa. Tak, tak, po chwili gdy mamy już ich naście, to często trudno się zorientować co to za materiał Material.019 i dla którego obiektu był przeznaczony. Dlatego zaraz po utworzeniu nowego podajemy nazwę materiału.

Charakter materiału

Materiały mogą mieć różne charaktery w zależności, czy chcemy, aby materiał dotyczył:

  • powierzchni (Surface)
  • krawędzi (Wire)
  • objętości (Volume)
  • świecących punktów (Halo)
Charakter materiału
Charakter materiału

Podgląd materiału

Obiekty, którym będziemy przypisywać materiały, mają różne kształty i aby lepiej je dopasować możemy zmieniać kształt obiektu w okienku podglądu:

  • Płaszczyzna
  • Kula – domyślny
  • Sześcian
  • Małpka – kształt złożony
  • Włosy
  • Kula na tle gradientu (nieba?)

Część z nich występuje na tle szachownicy – to ułatwia pracę z przeźroczystościami.

Rodzaj kształtu w podglądzie
Rodzaj kształtu w podglądzie

Kilka materiałów dla jednego obiektu

Czasem chcemy, aby jeden obiekt (który ma wiele ścian) miał przypisanych kilka materiałów np. każda ścianka sześcianu ma mieć inny materiał. Zatem do wybranego obiektu dodajemy plusem po prawej stronie kolejne sloty na materiały i z biblioteki wskazujemy materiały, które lądują w kolejnych slotach. Musimy jeszcze jednak poinformować Blendera, które ściany mają mieć jaki materiał. Jak ścianki, to tryb edycyjny ([Tab]). Teraz zaznaczamy ścianę, wskazujemy slot z materiałem i klikamy na Assign. Dla skomplikowanych obiektów różnice w materiałach możemy wykorzystać również do selekcji ścian.

Dodawanie kilku materiałów do obiektu
Dodawanie kilku materiałów do obiektu

Kolor materiału – Shadery

Kolor to podstawowy atrybut materiału. Jednak, gdy patrzymy na obiekt nawet jednobarwny, to zauważamy, że ów kolor nie jest jednolity na całej powierzchni obiektu. To zjawisko jest podstawą do definiowania materiału, a opiera się na wydzieleniu kilku stref dla obiektu:

  • Diffuse – podstawowy kolor materiału – miejsce rozpraszania światła;
  • Specular – odbłysk, rozjaśnienie (blik) – miejsce odbijania światła;
  • Shading – miejsce zacienione, gdzie nie pada światło;
  • Shadow – cień – miejsce, gdzie pada (jest odbierany) cień od innego obiektu;
  • Subsurface – krawędź o dużym kącie patrzenia – miejsce przypowierzchniowe np. glazura na porcelanie.
Wyróżnione strefy materiału
Wyróżnione strefy materiału

Strefy te odpowiadają tzw. shaderom. Zmieniając teraz parametry poszczególnych stref np.:

  • Kolor – czerwień dla Diffuse, a biel dla Specular;
  • Wielkość – mały lub duży odbłysk;
  • Intensywność – bardzo jasny lub blady odbłysk;
  • Granica pomiędzy strefami – wyraźna (ostra) lub łagodna (miękka);
  • Algorytm – sposób generowania kolorów dla stref;

możemy symulować rodzaj materiału np. kula bilardowa jest gładka – ma wyraźny, jasny, ale o małym rozmiarze odbłysk. Za to materiały matowe mają rozległą, lecz bladą i o łagodnej granicy strefę odbłysku.

Parametry shadera Diffuse i Specular
Parametry shadera Diffuse i Specular

Wyboru koloru dokonujemy osobno dla stref Diffuse i Specular za pomocą wybieraczki koloru – koło kolorów i suwak biel/czerń albo poprzez podanie na suwaku poniżej wartości w jednym z modeli kolorów RGB/HSV/HEX. Możemy także użyć próbnika do pobrania z ekranu dowolnego koloru.

Wybór kolorów
Wybór kolorów

Algorytmy shaderów

Różne sposoby generowani koloru mają na celu lepsze dopasowanie materiału do jego odpowiednika w rzeczywistości. Stąd te kilka algorytmów. Przykłady ich zastosowania:

Algorytmy shadera duffuse
Algorytmy shadera duffuse
Algorytmy shadera specular
Algorytmy shadera specular

Przykładowe ustawy shaderów dla strefy Diffuse i Specular i ich zastosowanie:

573524
Przykładowe ustawy shaderów i ich zastosowanie
Przykładowe ustawy shaderów i ich zastosowanie

Nakładka gradientowa – Ramp

Czasem w ramach jednej strefy chcemy mieć nie jeden kolor, ale przejście tonalne pomiędzy różnymi kolorami (gradient) – do tego służy parametr Ramp, gdzie dodajemy kolory, ich położenie, przeźroczystość i sposób nakładania.

Przejście kolorów (gradient) - Ramp
Przejście kolorów (gradient) - Ramp

Strefa zacieniona – Shading

W tej strefie wpływać będziemy na intensywność zacienienia, "świecenie" materiału i efekty specjalne jak np polerowane aluminium

Strefa zacienienia - Shading
Strefa zacienienia - Shading

Przeźroczystość – Transparency

Szkło, woda wymagają przeźroczystości. Możemy ją realizować w zależności od metody renderowania:

  • Mask – najprostsza – ustalamy tylko przeźroczystość (Alfa);
  • Z Transparency – prosta – można ustalić osobno dla stref Specular/Diffuse;
  • Raytrace – najbardziej rozbudowana – pozwala ustalać m.in. współczynnik załamania (IOR), zmatowienie, wsp. Fresnela oraz dokładność renderingu (Samples).
Parametry przeźroczystości
Parametry przeźroczystości

Powierzchnie lustrzane – Mirror

Obiekty metalowe nie obejdą się bez tego atrybutu. Również do powierzchni szklanych czy wody powinniśmy nieco dodawać "odbijalności". Tutaj również ustalimy m.in. współczynnik załamania (IOR), zmatowienie, wsp. Fresnela czy dokładność renderingu.(Samples)

Parametry powierzchni lustrzanych
Parametry powierzchni lustrzanych

Cień – Shadow

Ten atrybut mówi o cieniu w różnych kontekstach:

  • Odbieranie cienia – Receive – tzn. czy na nasz obiekt w ogóle może padać cień od innych obiektów;
  • Odbieranie cienia od obiektów przeźroczystych – Receive Transparent – tzn. czy zmniejszyć cięń pochodzący od obiektów transparentnych – zwykle należy włączać;
  • Rzucanie tylko cienia i zastępowaniu obiektu tłem (Background) lub uczynieniem go przeźroczystym;
  • Ustalanie cienia w zależności od typu światła, które go rzuca.
Parametry cienia - Shadow
Parametry cienia - Shadow

Rozpraszanie podpowierzchniowe – Subsurface Scattering

Gdy zależy nam, aby nasz obiekt rozpraszał w sobie jakieś inne światło – to możemy z tego skorzystać, ale uwaga – rendering może się znacząco wydłużyć. Bez specjalnych poszukiwań w zakresie parametrów możemy zdać się na parę gotowych ustawień tj. jabłko, ketchup, marmur, śmietana, kurczak :).

Parametry rozpraszania podpowierzchniowego - Subsurface Scattering
Parametry rozpraszania podpowierzchniowego - Subsurface Scattering

Opcje

Na koniec zakładka z opcjami dodatkowymi materiału, których nie można było zaliczyć do poprzednich. Chyba najdziwniejsza to cień z drugiej strony.

573548

Aby utrwalić wiedzę z materiałów proponuję je zdefiniować i zastosować do obiektów budowanych w ćwiczeniu pt. "Stół", a dotyczącym krzywych. Mamy tam złoty kielich, srebrną łyżkę, szklany wazon (to trzeba dorobić, gdyż tego akurat w ćwiczeniu nie było), porcelanowy talerz, politurowany stół oraz matowe ściany, podłogę i nogę od stołu.

Stół z zastawą z różnymi rodzajami materiałów
Stół z zastawą z różnymi rodzajami materiałów

Oczywiście dla tych, co mają niedosyt wiedzy tradycyjnie polecam:

Wybrane dla Ciebie
Komentarze (4)