Dlaczego PBR jest powszechnie stosowany?

Co właściwie oznacza PBR i dlaczego warto z niego korzystać?

 

PBR jest skrótem powstałym od Physically Based Rendering. Są to techniki renderowania bazujące na rzeczywistych zjawiskach fizycznych wykorzystujące zachowanie się interakcji światła z powierzchnią.

Chyba największą zaletą takiego rozwiązania jest wykorzystywanie ustandaryzowanej metodologii procesu teksturowania modeli 3D. Dzięki temu niezależnie  jakiego programu do renderowania będziesz używać, materiał będzie reagował na światło tak samo. Jest to standard powszechnie stosowany w dużej części oprogramowania 3D oraz w popularnych silnikach gier: Unity oraz Unreal

Dzięki PBR tworzenie materiałów jest dużo prostsze. Tworzysz materiał np. w programie Substance Designer i możesz go używać w różnych silnikach renderujących. 

Jeden materiał na dwa sposoby

 

Wykorzystując PBR, każdy materiał można stworzyć w dwojaki sposób, wykorzystując dwa dostępne workflow. Są to:

  1. metal / roughness 
  2. specular / glossiness

Niezależnie z którego będziesz korzystać uzyskasz ten sam efekt. 

Metal/roughness wykorzystuje tekstury, które są dostarczane do shader’a. Są to:

Mapa Base color – jest mapą RGB zawierającą dwa typy danych: rozproszony kolor dla niemetali i wartości współczynnika odbicia dla metali. 

Mapa Metallic – służy do określenia, jakie obszary naszego modelu są metalem. Biały kolor na mapie oznacza obszar będący metalem.

Mapa Roughness – opisuje nierówności powierzchni powodujące rozproszenie światła.

Specular / Glossiness wykorzystuje tekstury dostarczane do shader’a. Są to:

Mapa Diffuse – podobnie jak w przypadku base color, mapa ta zawiera kolor albedo. Różnica polega na tym, że nie zawiera żadnej informacji o współczynniku odbicia.

Specular  – definiuje wartości współczynnika odbicia dla metalu i niemetalu.

Mapa Glossiness –  opisuje nierówności powierzchni powodujące rozproszenie światła.  Czarny kolor oznacza szorstką powierzchnię, a biały reprezentuje powierzchnię gładką. 

Oprócz map zarezerwowanych dla poszczególnych przepływów pracy istnieją jeszcze mapy, które są wykorzystywane w obydwu przypadkach. Są to: 

Ambient Occlusion (AO) – określa jak bardzo każdy fragment modelu jest narażony na światło otoczenia. 

Height – zawiera dane dotyczące wysokości.

Normal – wykorzystywana jest do symulowania szczegółów powierzchni. Może być używana do przechowywania rzutowanych szczegółów z modelu high do modelu low.

Praktyczny przykład

 

Przejdźmy teraz do praktycznego przykładu materiału. Weźmy jeden z materiałów, który stworzyłam i zobaczmy, jak będzie się zmieniał jego wygląd wraz z dołączeniem kolejnych map do shader’a. 

Na początek podłączyłam tylko mapę base color. Model kuli wyglądał wówczas tak jak na poniższej grafice:

W kolejnym kroku oprócz base color do shader’a dołączyłam roughness. Akurat w tym przypadku nie spowodowało do dużej wizualnej zmiany. Efekt jest widoczny poniżej.

Podłączenie kolejnej mapy (ambient occlusion) spowodowało już zauważalne zmiany na modelu. Tekstura „uwrażliwiła” na światło te fragmenty, które są bardziej na nie wyeksponowane.

Mapa height spowodowała już bardzo widoczne zmiany. Model nie jest już płaski, niektóre miejsca zostały uwypuklone. 

Jako ostatnią dołączyłam normal mapę. Zaowocowało to uszczegółowieniem naszego modelu. 

W swoim przykładzie pominęłam mapę metallic, ponieważ żaden obszar z tego materiału nie jest metalem. Nie wprowadziłoby to po prostu żadnych zmian. 

Podsumowanie 

 

Jeżeli chciałbyś szerzej zapoznać się z tematem PBR, to bardzo szerokie  opracowanie zostało przygotowane przez Adobe. Poniżej linki:

PBR ADOBE cz.1

PBR ADOBE cz.2

Jeżeli nie chcesz przegapić kolejnych wpisów, to zapisz się na moją listę mailową. Będę Cię natychmiast informować o kolejnych publikacjach. Wyślę Ci także 3 materiały, do wykorzystania w Twoich projektach. Kliknij poniżej, żeby się zapisać.

Zapraszam również do obejrzenia mojego ostatniego filmu:

Czy chcesz zapisać się na listę mailową?

 
5 2 votes
Article Rating
Subscribe
Powiadom o
guest
0 komentarzy
Inline Feedbacks
View all comments
Przewiń do góry