Efekty shadera (Powierzchnie Cineware)

Tę grupę shaderów można odnaleźć w podmenu Efektów shadera w oknie rozwijanym kanału powierzchni:

ShaderEffectslist.png

 

Te shadery przedstawione zostały poniżej wraz z krótkim opisem parametrów.

Ambient Occlusion (Kanał powierzchni Cineware)

ChanLum, Rozproszenie powierzchni, Podświetlenie

Zniekształcenie

Zanik światła

Lumas

Kierunek normalnych

Normalizer

Piksel

Projektor

Widmo

Efekt Cienka powłoka

Zmienność

Warunki atmosferyczne

Ambient Occlusion (Kanał powierzchni Cineware)

Kanał Ambient Occlusion dla procedury Cineware można odnaleźć w dwóch miejscach w interfejsie:

W Ustawieniach wykończeń, shader kanału (patrz powyższy zrzut ekranu).

W Ustawieniach renderingu (Widok szczegółowy), jako efekt globalny i obliczany przez całą scenę w Ustawieniach renderingu.

Zobacz Artykulacja otoczenia (Efekt Cineware).

Opcje Ambient Occlusion dostępne z tych dwóch miejsc są identyczne.

ChanLum, Rozproszenie powierzchni, Podświetlenie

Wszystkie shadery wiążą się z funkcją zbierania światła. Niektóre powierzchnie mają zdolność kierowania światła do środka, gdzie zostaje ono rozproszone (np. świeca woskowa czy mrożone szkło).

Zazwyczaj, światło może jedynie świecić bezpośrednio na powierzchnię obiektu i nie może, np. być przesłane dalej z oświetlonej tylnej części obiektu na jego przód, który znajduje się w zacienionym obszarze. Aby temu zapobiec dostępnych jest kilka shaderów.

Powinny one być załadowane do kanału Świecenia. W tym kanale, jasność generowana dzięki tym efektom może służyć jako efekt podświetlenia lub dodania być dodany do jasności powierzchni.

ChanLum

Z każdej określonej odległości od powierzchni obiektu ku zewnątrz, shader ChanLum obserwuje otoczenie wokół obiektu i pobiera próbki promieni świetlnych. To światło zostanie następne wykorzystane do rozjaśnienia powierzchni obiektu. Być może z punktu widzenia fizyki nie zapewnia to realistycznego efektu, jednak często wystarczy do dokładnej symulacji światła, które nie przenika zbyt głęboko do danej powierzchni.

Rozpraszanie podpowierzchniowe

Ten shader powoduje, że światło przenika przez powierzchnię, gdzie następnie jest rozproszone. Jeśli odległość jaką przebywa światło w obiekcie jest mniejsza niż określona wartość, światło może wynurzyć się ponownie w innym miejscu. To odpowiedni shader do zastosowania przy obiektach podświetlanych.

Tutaj, świeca jest podświetlona światłem od góry, co służy do symulacji płomienia. To źródło światła może oświetlić jedynie powierzchnie górnej części świecy.

Candle11.png

 

Tutaj pokazano tę samą scenę z dodanym shaderem ChanLum w kanale Świecenia powierzchni z wosku. Widać jak światło przeciągnięte jest wokół górnej krawędzi świecy, oświetlając również boki. Wygląda również jakby światło świecy przenikało nieco przez krawędź.

Candle12.png

 

Tutaj dodano również shader Rozproszenia podpowierzchniowego do kanału Świecenia. Światło teraz oświetla znaczną część górnej połowy świecy, ale nie podkreśla zbyt dobrze jej krawędzi. Taki scenariusz oświetlenia jest mniej odpowiedni do Rozproszenia podpowierzchniowego ze względu na małą krawędź mieszcząca się pomiędzy kątem widoku a promieniami światła.

Candle13.png

 

Tutaj, widok kąta został zwiększony poprzez wstawienie źródła światła za świecą: teraz Rozproszenie podpowierzchniowe jest dobrze dopasowane: światło rzeczywiście prześwituje przez świecę, a górna krawędź jest również podświetlona tak jak chcieliśmy, dzięki bardziej intensywnemu światłu.

Candle14.png

 

Podświetlenie

Pozwala zebrać oświetlenie z tylnej powierzchni obiektu. Zapewnia to możliwość utworzenia efektu przezroczystości z podświetleniem, np. papier ryżowy czy cienki liść oświetlony z przeciwnej strony wraz z cieniowaniem.

Backlight.png

 

Algorytm: Za pomocą tego ustawienia można określić algorytm cieniowania podświetlenia.

Wewnętrzne odpowiada znanemu cieniowaniu Phonga.

Oren Nayar, zobacz Osie modelu.

Opcja Proste nie generuje żadnego cieniowania, zatem podświetlone wyrenderowane obiekty będą miały taką samą jasność. To ustawienie szczególnie nadaje się do bardzo cienkich powierzchni, takich jak liście, łodygi traw itp.

SimpleBacklight.png

 

Zniekształcenie

Zniekształcenie przyjmuje wartość kanału wejściowego i zniekształca ją, używając wartości z innego kanału tekstury.

DistorterShader.png

 

Typ: Należy zastosować następujące algorytmy zniekształcenia.

Kierunkowy: Wartość kanału zniekształcenia zostanie dodana do przykładowych współrzędnych tekstury.

Dwukierunkowy: Wartość zniekształconego kanału zostanie dodana do przykładowych współrzędnych tekstury jeśli wartość ta wynosi pomiędzy 50-100%, i zostanie odjęta jeśli wartość wynosi pomiędzy 0-50%.

Pole wpływu: Wartość zniekształcenia określona jest oszacowaniem kierunku przepływu tekstury zniekształcenia a następnie wektor kierunku przepływu służy do przesunięcia przykładowych współrzędnych tekstury.

Zawijanie: Funkcja zawijania kontroluje zachowanie części tekstury, które nie zostały zniekształcone i teraz znajdują się poza mapą UV. Można je zignorować (Brak), powtórzyć (Powtórzenie), odciąć (Klamra) lub odbić (Bez widocznych połączeń).

Ilość: Ilość globalnych zniekształceń. 100% oznacza wartość zniekształcenia od 0 do 1 w UV i 0 do 10 w 3D.

X/Y/Z: X to ilość zniekształceń w U dla 2D i X dla 3D. Y to ilość zniekształceń w V dla 2D i Y dla 3D. Z to ilość zniekształceń w Z dla 3D.

Różnica: Delta to współczynnik skali, który zostaje wykorzystany w próbkowaniu tekstury do oceny nachylenia w kanale wypukłości. Pozwala to uzyskać bardzo ostre wypukłości przy zachowaniu najmniejszych szczegółów, co nie jest możliwe przy standardowej delcie wypukłości.

Stopniowy: Względna wielkość stopniowa, która zostanie wykorzystana do oceny kierunku przepływu w typie zniekształcenia Pola przepływu.

Tekstura: To obraz źródłowy lub shader, który zostanie zniekształcony teksturą zniekształcającą. Można wprowadzić i edytować dowolny obraz lub shader kanału dostępny w procedurze Cineware.

Zniekształcenie: Tekstura zniekształcenia służy do zniekształcenia tekstury określonej w opcji tekstura (zobacz powyżej). Wartość zniekształconego obrazu lub shadera jest używana w algorytmie zniekształcenia, aby odsunąć próbkowanie tekstury.

Zanik światła

Zanik światła oblicza zanik pomiędzy własnym wektorem a normalnym powierzchni. Kiedy wektor jest taki sam jak normalny powierzchni, wartość wynosi 1 a kiedy wskazuje w zupełnie odwrotnym kierunku, wartość wynosi 0. Zanik następnie ponownie mapuje wartość używając gradientu.

FalloffShader.png

 

Te same ustawienia shadera, jedynie z różnymi wektorami

FalloffShaderInterface.png

 

Kierunek [XYZ]: Wektor, od którego nastąpi zanik w przestrzeni 3D.

Układ odniesienia: Przestrzeń do obliczenia zaniku.

Obiekt: Wektor jest określony we współrzędnych obiektu a na zanik wpływ ma orientacja obiektu (oraz orientacja osi tekstury). W ten sposób, zanik będzie trzymał się obiektu podczas zmiany kąta obrotu.

Globalny: Wektor jest określony w świecie współrzędnych i nie ma na niego wpływu orientacja obiektu. To najczęściej spotykane ustawienie ponieważ pozwala na przemieszczenie obiektu podczas gdy zanik pozostaje w stałym kierunku.

Kamera: Wektor jest określony we współrzędnych względem orientacji kamery. W ten sposób, góra jest zawsze na górze (np. w widoku kamery) niezależnie od orientacji kamery lub obiektu.

Użyj wypukłości: Jeśli opcja jest włączona, normalne wypukłości użyte zostaną do obliczenia zaniku. Jeśli jest wyłączona, normalne wypukłości zostaną pominięte.

Gradient: Gradient wykorzystany zostanie przez Zanik aby ponownie zmapować wartość.

Lumas

Lumas to shader iluminacji obejmujący trzy odblaski oraz możliwość symulowania anizotropowych rys, które mają tendencje w szczególności do wydłużonych odbić.

Efektem anizotropicznym jest odbicie lustrzane powierzchni spowodowane małymi, niewidocznymi rysami. Efekt ten jest często stosowany na metalowych powierzchniach, które są nieco starsze, w postaci koncentrycznych rys na powierzchni

LumasVase.png

 

Lumas jest przydatny podczas używania Połączeń i innych shaderów kanałów lub obrazów.

LumasInterface.png

 

Aktywny

Kolor powierzchni: Określa podstawowy kolor rozproszenia powierzchni.

Algorytm: Określa który model iluminacji zostanie wykorzystany przez Lumas.

Wewnętrzny to standardowy model lambertianowski

Oren Nayar dostarcza zmiennej chropowatości, dzięki czemu użytkownik może przejść od prostych płaszczyzn (0 chropowatości, identycznie do modelu lambertowskiego) do złożonych, chropowatych powierzchni (1+ chropowatość, co zapewnia matową powierzchnię, jak np. len lub zabrudzenie).

Chropowatość: Określa stopień chropowatości modelu iluminacji Oren Nayar. Zero oznacza brak chropowatości, a wartość 100% lub wyższa to bardzo wysoki stopień szorstkości. Aby w pełni zrozumieć ten parametr, należy z nim trochę poeksperymentować. Ta opcja dostępna jest jedynie jeśli zaznaczono opcję Oren Nayar na liście rozwijanej Algorytmu.

Iluminacja: Skaluje kolor, aby wygenerować tłumienie oświetlenia powierzchni (co oznacza, że przyciemnia kolor kiedy wartość jest zbliżona do zera i rozjaśnia kiedy wartość jest zbliżona lub przekracza 100%).

Jeśli używasz algorytmu iluminacji Oren Nayar, być może będziesz chciał zwiększyć iluminację o około 10% do 20% ponieważ na renderingu zazwyczaj wychodzi ciemniejszy. Właściwe wartości pochodzą z zakresu od 0% do 200%.

Kontrast: Dostarcza kontrast dla rezultatu Koloru. Zero oznacza brak efektu, 0% - 100% oznacza standardowy kontrast a wartości powyżej 100% generują kontrast owinięcia (wartości przewyższające 100% zawijają z powrotem do 0%), wartości ujemne zapewniają kontrast odwrócenia, aby dokonać symulacji powierzchni, które wydają się samooświetlone, takie jak srebro. Właściwe wartości pochodzą z zakresu od -500% do 500%.

Ustawienia odbić refleksów (Shader Lumas)

Do koloru powierzchni zostają dodane trzy rodzaje refleksów, kontrolowane w kanałach Świecenia. Wszystkie trzy rodzaje refleksów posiadają taki sam zestaw parametrów, opisany poniżej.

Aktywne: Za pomocą tego pola można indywidualnie włączyć lub wyłączyć każdy refleks.

Kolor: Określa bazowy kolor refleksów dla komponentu refleksu.

Intensywność: Skaluje kolor, aby wygenerować tłumienie odbicia refleksów (co oznacza, że przyciemnia kolor kiedy wartość jest zbliżona do zera i rozjaśnia kiedy wartość jest zbliżona lub przekracza 100%). Właściwy zakres wynosi od 0% - 1000%.

Rozmiar: Określa rozmiar odbicia zwierciadlanego. Właściwy zakres Rozmiaru wynosi od 0,001% - 200%.

Kontrast: Dostarcza kontrast dla rezultatu koloru próbkowania refleksów. Wprowadza funkcję standardowego kontrastu. Właściwe wartości pochodzą z zakresu od 0% do - 100%.

Odblaski: Współpracuje z Natężeniem wykorzystując zanik światła ku krawędziom (pomnożony przez wartość skalarną zaniku światła) dla zmiany natężenia odbicia zwierciadlanego. Dzięki temu można dodać odblaski do powierzchni kiedy światło odbija się bardziej na krawędzi lub występują refleksy, aby ograniczyć odbicia zwierciadlane kiedy światło powoduje odbicie bliżej krawędzi. Właściwe wartości pochodzą z zakresu od 0% do - 200%.

Zanik światła: Używany do zmiany zaniku światła od środka obiektu do krawędzi, aby zmienić natężenie odblasków. Mniejsze wartości powodują odbicie zwierciadlane odwzorowując bardziej wartość Natężenia, a wyższe wartości powodują większe wykorzystanie wartości skalarnego Odblasków. Aby w pełni zrozumieć ten parametr, należy z nim trochę poeksperymentować.

Aktywny: Anizotropia to właściwość bycia kierunkowo uzależnionym (w przeciwieństwie do izotropii, która oznacza takie same właściwości we wszystkich kierunkach)

Projekcja: Typ projekcji służy do określenia anamorficznego (nieproporcjonalnego) skalowania odbicia refleksów. Może również określać kierunek rysy, który zostanie zastosowany z odbiciem i grupami splatania otoczenia.

Płaskie: Płaska projekcja liniowa XY.

Automatyczna płaska: Automatyczna projekcja na płaszczyznę równoległą do bieżących normalnych.

Owijanie kurczliwe: Sferyczna projekcja kierunku skalowania, wykorzystująca oddzielnego algorytmu do projekcji rys.

Koncentryczna automatyczna płaska: Automatyczna projekcja na płaszczyznę równoległą do bieżących normalnych.

Wzór koncentryczny - automatyczna płaska: Tworzy wieloźródłowy promieniowy wzór rys, równoległy do bieżących normalnych.

Koncentryczna płaska: Tworzy promieniowy wzór rys rozpoczynający się na środku płaszczyzny równoległej do bieżących normalnych.

Wzór koncentryczny - płaska: Tworzy wieloźródłowy promieniowy wzór rys, równoległy do bieżących normalnych.

Skala projekcji Skaluje algorytmy rys posiadających rzeczywisty wzór (Wzór promieniowy to jedyny aktualny algorytm tego typu, do którego stosowana jest skala).

Szorstkość X/Szorstkość Y: Skaluje odbicia w kierunkach X i Y, określonych w algorytmie projekcji rys. Właściwy zakres wynosi od 0,1% 10 000%. Jeśli szorstkość X i Y są takie same, zastosowany będzie standardowy wewnętrzny algorytm refleksów.

Refleksy 1/Refleksy 2/ Refleksy 3: Te pola zaznaczenia określają na które kanały refleksów wpływ będą miały rysy anizotropowe.

Amplituda: Skaluje efekt rys w odbiciach refleksów. Im wyższa wartość, tym więcej rys będzie widocznych na refleksach. Właściwy zakres wynosi od 0% - 100%.

Skala: Skaluje sam wzór rys. Dotyczy to wszystkich algorytmów rys.

Długość: Określa długość rysy w przestrzeni wzoru rys. W gładkich powierzchniach wykorzystano większą długość rys, a bardziej szorstkie powierzchnie wykorzystują niższe wartości. Właściwy zakres wynosi od 1% - 1000%.

Tłumienie: Skaluje poziom szczegółów rys na podstawie próbek, kąta do kamery oraz odległości do kamery. Im wyższe wartości, tym większe tłumienie, a zatem mniej rys (lepszy obraz do animacji); im niższa wartość, tym wyższy poziom szczegółu (lepiej dla obrazów nieruchomych). Właściwy zakres wynosi od 0% - 1000%.

Kierunek normalnych

Ten shader powoduje kolorowanie obiektu na podstawie kierunku normalnych powierzchni. Powierzchnie, na których normalne wskazują w kierunku promienia renderingu przyjmuje Kolor 1, a inne powierzchnie przyjmują Kolor 2.

NormalDirectionAlpha.png

 

Normalizer

Za pomocą shadera Normalizera (wstawionego do kanału normalnych) możesz korzystać ze wspólnych tekstur, zazwyczaj stosowanych w mapach wypukłości w kanale normalnych. Normalizer ocenia kontrasty, aby zapewnić umiejscowienie krawędzi i wykorzystuje tę informację do obliczenia mapy Normalnych.

Przypomnienie: Mapy Normalnych i Wypukłości zasadniczo działają tak samo. Informacje zakodowane w obrazach RGB mają wpływ na Normalne powierzchni (geometrii( obiektu podczas renderingu i udają szczegółową strukturę. W przeciwieństwie do map Wypukłości, mapy Normalnych mogą również “zmieniać” kierunek Normalnych, dzięki czemu można tworzyć realistyczne efekty (zwróć uwagę na światło refleksów na obrazku poniżej).

NormalizerShader.png

 

Tekstura pokazywana po lewej stronie została wstawiona w kanale wypukłości i kanale normalnych, odpowiednio

Piksel

Shader pikseli tworzy pikselowe rozłożenie tekstury.

Załóżmy, że chcesz wyświetlić teksturę składającą się z niewielkich obszarów o tym samym kolorze na powierzchni (np. wyświetlania TFT). Dobrze byłoby, aby poszczególne piksele wyglądały dobrze również z bliska. I tu sprawdza się Shader pikseli - tworzy dopasowaną “szorstkość pikseli” bez potrzeby wprowadzania zmian do tekstury początkowej.

PixelShader.png

 

Góra z prawej: Z zastosowanym shaderem pikseli; dół z prawej: Bez zastosowania shadera pikseli

Uwaga: Shader pikseli działa jedynie z Shaderami 2D i teksturami. Np. podczas pracy z shaderem Szumu, należy ustawić opcję Przestrzeń na UV (2D)

Projektor

Projektor umożliwia zmianę projekcji shadera lub obrazu. Jest to przydatne do uzyskania różnych map w oddzielnych kanałach powierzchni, w szczególności jeśli są stosowane z innymi shaderami, np. Połączenia. Należy pamiętać, że shadery 3D nie działają z opcją Projektora.

ProjectionShader.png

 

ProjectionInterface.png

 

Tekstura: To obraz źródłowy lub shader, który ma zostać wyświetlony. Można wprowadzić i wyświetlić dowolny obraz lub shader kanału 2D dostępny w procedurze Cineware.

Typy projekcji:

Sferyczne

Cylindryczne

Płaska, Sześcienna

Od przodu

Skurczenie z zawijaniem

Przestrzeń

Mapowanie UVW

Przesunięcie X/Przesunięcie Y: Przesunięcie tekstury 2D w UV.

Długość X/Długość Y: Skalowanie tekstury 2D w UV.

Elementy powtarzalne X/Elementy powtarzalne Y: Łączenie tekstury 2D w UV.

Element powtarzalny: Jeśli opcja ta jest włączona, tekstura 2D zostanie powtórzona w UV tyle razy ile określono w parametrach Elementu powtarzalnego X i Y.

Bez widocznych połączeń: Jeśli opcja Elementu powtarzalnego jest włączona, uruchomienie łączenia bezszwowego powoduje odbicia lustrzane elementów powtarzalnych aby uzyskać połączenie bezszwowe.

Położenie (X/Y/X): Przesunięcie przestrzeni tekstury 3D.

Rozmiar: Skalowanie przestrzeni tekstury 3D.

Obrót (Wzniesienie/Nachylenie/Krawędź): Orientacja przestrzeni tekstury 3D.

Widmo

Shader widma idealnie nadaje się do efektów pryzmatycznych lub opalizujących, np. lśniących pereł.

SpectralBalls.png

 

Obliczenie tego efektu uwzględnia perspektywę kamery oraz kąt pomiędzy źródłem światła i powierzchnią. Zasadniczo, shader widma powinien być używany przede wszystkim w warstwie Połysk (pod Warstwą: kolor) w kanale Świecenia.

SpectralShader.png

 

Intensywność: Opcje ogólnej jasności refleksów koloru. Wartość zerowa oznacza brak efektu, wyższe wartości powodują jaśniejsze refleksy koloru.

Zmienność określa ilość powtórzeń gradientu w określonym zakresie.

Variation12.png

 

Zmienność ustawiona na 1 (lewa) i 2 (prawa)

Powtarzanie gradientu: W połączeniu z parametrem Zmienności, opcja Powtarzania gradientu określa czy i w jaki sposób gradient zostanie powtórzony. Aby zobaczyć efekt, należy poeksperymentować z trybami Przerwij, Odbij oraz Powtórzenie.

Przy zastosowaniu opcji Przerwania, gradient zostanie zastosowany raz, a ostatni kolor zostanie zastosowany do zewnętrznych obszarów wykraczających poza zasięg.

Przy zastosowaniu opcji Odbij, gradient zostanie powtórzony poprzez odbicie zapewniając bezszwowe łączenie.

Przy łączeniu, gradient zostanie powtórzony zgodnie z wartością Zmienności.

Spektrum: Gradient Spektrum określa kolor refleksów spektralnych.

Efekt CD: Jeśli zastosujesz tę opcję, shader zostanie zoptymalizowany dla powierzchni walcowatych, co umożliwi rendering klinowych pryzmatycznych efektów kolorystycznych, np. takich jak na płycie CD.

Szerokość: Szerokość określa jak daleko rozciąga się gradient.

SpectralWidth.png

 

Lewa: większa szerokość; Prawa: mniejsza szerokość

Szczyt: Zazwyczaj całe spektrum kolorów tęczy widoczne jest tylko jeśli kąt pomiędzy źródłem światła a kamerą tworzy linię prostą. Zwiększenie wartości szczytowej pozwala wygenerować większe spektrum kolorów.

Współczynnik W: Określa punkt wyjściowy dla efektu pryzmatycznego, na podstawie punktu środkowego powierzchni. Wartość 1 określa początek gradientu dokładnie na środku powierzchni. Wartości powyżej 1 przesuwają gradient z dala od środka, a wartość mniejsze niż 1 przysuwają go bliżej środka.

SpectralWFactor.png

 

Współczynnik W 1,5, 1 i 0,7

Intensywność rozproszenia: Intensywność rozproszenia kontroluje intensywność efektu spektralnego. Zwiększenie wartości spowoduje uzyskanie przesadzonych kolorów.

Zmienność rozproszenia: Rozprasza efekt spektralny poprzez przeniesienie przypadkowych kolorów z gradientu.

SpectralDiffuseVariation.png

 

Mniejsze i większe wartości Zmienności rozproszenia

Przód projekcji: Określa w jaki sposób gradient spektralny jest wyświetlony na powierzchni, z odniesieniem do układu współrzędnych obiektu. Jeśli nie widzisz efektu CD od razu, zapewne musisz zmodyfikować ten parametr.

Efekt Cienka powłoka

Ten shader służy do symulowania specjalnego efektu, określanego mianem „cienkiej powłoki” lub „zakłóceniem”. Efekt ten występuje na bardzo cienkich, przezroczystych powierzchniach - na przykład, kiedy wszystkie kolory widma połyskują na powierzchni baniek mydlanych, jak warstwa oleju na wodzie, macierz perłowa.

Thinfilm.png

 

Aby uzyskać wynik o realistycznym wyglądzie, należy utworzyć realistyczne ustawienie oświetlenia (np. konfiguracje oświetlenia, używając Nieba fizycznego, świecących odbić).

Shader Cienka powłoka zadziała prawidłowo, jedynie jeśli zostanie załadowany w polu Tekstura kanału Świecenia (najlepiej w warstwie Beckmann lub GGX) w menu Warstwy kolor danego kanału. Warstwy Połysk należy wyłączyć.

Wskazówki:

W przypadku baniek mydlanych, kanał Przezroczystość powinien również zostać włączony wraz ze Światłem addytywnym.

Sprawdź, czy zastosowano odpowiednie obiekty refleksyjne; tekstury HDRI można zastosować dla obiektu Niebo, można również zastosować świecące materiały.

Ten efekt można również zastosować dla materiałów takich jak skóra, guma, metal itp.

Obejrzyj wideo

Zmienność

VariationShader.png

 

Shader wariacji umożliwia łatwe wygenerowanie „przypadkowości” w danej scenie.

Taki efekt można zastosować do rozmaitych sytuacji:

Podkład skalny: Shader wariacji sprawia, że każda skała wygląda inaczej.

Łodygi wyglądają bardziej naturalnie, gdy liście nieco różnią się od siebie.

Ustaw shader wariacji na jeden materiał lakieru karoserii samochodowej i zastosuj dla wszystkich samochodów na parkingu - shader automatycznie nada każdemu autu własny lakier.

Renderuj książki na półce: Zastosuj shader wariacji dla materiału okładek, aby przy minimalnym wysiłku sprawić, by każda książka wyglądała inaczej.

Shader wariacji został stworzony do zastosowań ze zwykłymi obiektami i narzędziami hierarchicznymi (Przegroda strukturalna, Schody, Balustrada). Zasadniczo, efekty sprawdzają się najlepiej w przypadku obiektów, w których pożądany jest element zmienności, jednak nie warto wkładać zbyt wiele pracy w ręczne tworzenie własnych struktur.

Shader wariacji działa poprzez wygenerowanie losowych liczb na podstawie wartości rozrzutu, generowanej automatycznie w czasie renderingu. Właściwości tekstury wejściowej zostaną poddane modulacji na podstawie losowych liczb o intensywności określonej przez użytkownika. Efekty mogą być zarówno subtelne, jak i wyraźnie widoczne.

Shader nie ma ograniczeń zastosowania w slocie koloru; ciekawe efekty można również osiągnąć poprzez zastosowanie Shadera wariacji na mapach chropowatości.

Pozwala on również na zastosowanie efektu rozrzutu na podstawie ID powierzchni wieloboku, dzięki czemu doskonale nadaje się do pracy z gęstymi siatkami, takimi jak łodygi, bez potrzeby rozdzielania liści na odrębne obiekty.

Obejrzyj wideo

Tryb ziarna

Tryb rozrzutu kontroluje, na których rodzajach danych bazują liczby losowe. W zależności od wybranego trybu rozrzutu, można osiągnąć różne efekty.

Ograniczenie: Należy zwrócić uwagę, że dodawanie lub usuwanie obiektów ze sceny może zmienić wartości rozrzutu. Może się to okazać problematyczne podczas renderowania sekwencji, ponieważ wydawać się będzie, że wariacja ulega losowym zmianom z kadru na kadr.

VariationSeedMode.png

 

Rozrzut: Wartość rozrzutu kontroluje sposób generowania liczb losowych. Jeśli efekt wariacji jest niesatysfakcjonujący, użyj tej wartości, aby wpłynąć na sposób generowania liczb losowych.

Wariacja obiektów

Wyłączony: Wariacje nie zostaną wygenerowane dla różnych obiektów, dla których zastosowano ten sam Shader wariacji.

Hierarchia obiektów: Jeśli Shader wariacji jest zastosowany dla obiektu będącego częścią hierarchii: W tym trybie, ten sam kolor zostanie zastosowany dla wszystkich obiektów pochodnych - nie zostanie wygenerowana wariacja. Wariacja nastąpi jedynie pomiędzy hierarchiami.

Obiekty: Każdy obiekt, do którego przypisany jest shader (w tym obiekty w hierarchiach podrzędnych) będzie zróżnicowany (pod warunkiem, że nie uniemożliwiają tego następujące ustawienia).

Rodzic: Wariacja nie zostanie zastosowana do obiektów na tym samym poziomie hierarchii i z tym samym Shaderem wariacji, jeśli posiadają wspólny obiekt Rodzic. Obiekty pochodne również nie ulegną wariacji.

Wariacja wieloboku

Wieloboki: Do każdego wieloboku zastosowana jest inna wariacja tekstury.

VariationPolygon.png

 

Krok wieloboku: Przykładowo, może się wydarzyć, że liście drzewa tworzone są przy użyciu ogromnej liczby spójnych grup wieloboków. Na przykład: liść (aby mógł się zaginać) składa się z 6 wieloboków i jest powielony setki razy dla jednego drzewa. Jeśli wariacja będzie stała w jednej grupie 6 wieloboków, ale zróżnicowana w innych grupach 6 wieloboków, należy określić liczbę wieloboków dla liścia (w tym przypadku 6), a wariacja wystąpi w krokach 6 wieloboków. Wystarczy jednak, że jeden z liści będzie składał się z innej liczby wieloboków, a funkcja ta nie zadziała poprawnie! Aby utworzyć wariacje dla każdego wieloboku, należy ustawić tę wartość na 1.

Wyłączony: Wielobokom nie zostaną nadane wariacje.

Prawdopodobieństwo: Określa stopień prawdopodobieństwa zastosowania przez shader wariacji dla dowolnego obiektu. Przy 100% wszystkie obiekty uzyskują wariację. Przy 50%, wariacja zostanie zastosowana jedynie dla (około) połowy obiektów. Kiedy shader nie zastosuje wariacji, wprowadzona tekstura zwracana jest bez zmian.

VariationProbability.png

 

Maska globalna: Kontroluje ogólny efekt wariacji na podstawie wprowadzonej tekstury.

VariationGlobalMask.png

 

Wariacja koloru

Te ustawienia określają, którą teksturę należy zastosować, i które kolory powinny być z nimi losowo mieszane.

Shadery

Aktywny

Prawdopodobieństwo

Tekstura: To podstawowe dane wejściowe. W tym miejscu należy podłączyć shadery lub tekstury.

VariationSecondTexture.png

 

Druga tekstura. Przykładowo, aby sprawić, by drzewo wyglądało ciekawiej, można wprowadzić teksturę zwiędłych liści

Miksowanie drugiej tekstury. Określa maksymalną intensywność, z jaką zastosowana zostanie druga tekstura. Wartość ta zostaje przydzielona losowo na podstawie wartości rozrzutu

Tryb drugiej tekstury: Wybierz tryb mieszania, jaki ma być zastosowany dla tekstury.

Gradient: Określ gradient, z którego kolory zostaną losowo wybrane i zastosowane przy użyciu opisanego poniżej trybu Kolor.

VariationGradient.png

 

Miksowanie gradientu: Określa maksymalną intensywność, z jaką zastosowany zostanie kolor gradientu. Ta wartość zostaje przydzielona losowo na podstawie wartości rozrzutu.

Tryb gradientu: Wybierz tryb mieszania, jaki ma być zastosowany dla gradientu.

Uwaga: W trybie “Zastąp” nie ma zastosowania ustawienie mieszania tekstury Tekstura stosowana jest przy 100% przezroczystości. Może się to okazać przydatne w połączeniu z parametrem Prawdopodobieństwa

VariationBlendGradient.png

 

Kolor losowy: Generuje losowy kolor i miesza go z teksturą wyjściową do określonej wartości.

VariationRandom.png

 

Tryb koloru losowego: Wybierz tryb mieszania, jaki ma być zastosowany dla tekstury.

Wariacja gradientu

Wszystkie opcje gradientu koloru działają w podobny sposób: Wartości określają maksymalne odsunięcie od parametrów gradientu. Np. przy wartości 0,5 na suwaku Kontrastu, shader losowo dostosuje kontrast pomiędzy -0,5 a 0,5.

Kontrast: Losowo dodaje kontrast do określonej wartości lub odejmuje go.

VariationGrading.png

 

Gamma: Losowo zmienia wartość gamma do określonej wartości.

Odwróć: Losowo odwraca teksturę wyjściową do określonej wartości.

VariationHue.png

 

Barwa: Losowo zmienia barwę do określonej wartości. Użyj niskich wartości, aby utworzyć naturalnie wyglądającą wariację koloru. Wyższe wartości generują wyraźniejszy efekt.

Nasycenie: Losowo zwiększa lub zmniejsza nasycenie kolorem do określonej wartości. Podobnie jak w przypadku parametru Barwa, użyj niższych wartości, aby uzyskać efekt o bardziej naturalnym wyglądzie.

VariationLightness.png

 

Rozjaśnienie: Losowo zwiększa lub zmniejsza rozjaśnienie koloru do określonej wartości.

Wariacja układu współrzędnych UVW

Shader wariacji może nie tylko mieszać kolory, ale również przenosić i obracać współrzędne UVW. Efekt ten sprawdza się najlepiej przy powtarzalnych teksturach.

VariationUV.png

 

Przesunięcie UVW: Te ustawienia określają maksymalne losowe przemieszczenie współrzędnych UVW w lewo/w prawo/w górę lub w dół.

Odbicie X/Y UVW: Te opcje można stosować losowo do odbicia współrzędnych UVW pionowo i/lub poziomo. Odbicie losowe odbywa się przed losowym obrotem, określonym przy użyciu dwóch opcji.

Obrót UVW: Ta wartość określa maksymalny losowy obrót (domyślnie: 100% = 360°) w każdym kierunku według współrzędnych UVW (środek obrotu U, V: 0,5, 0,5, czyli środek płytki UV. Warunkowo dla kolejnego ustawienia, wyliczony tutaj obrót zostanie następnie określony jako stała wartość liczbowa.

Obrót kwantyzowany UVW: W tym miejscu należy wskazać, czy współrzędne UVW powinny obracać się płynnie (0 stopni), czy skokowo: co 45, 90 lub 180 stopni. Zależy to od wartości Obrót UVW: równe rozłożenie skoków osiąga się jedynie przy wartości 100%.

Skala UVW: Użyj tych wartości, aby losowo wygenerować skalę współrzędnych UVW. Wprowadzone tutaj wartości określą limity w kierunku dodatnim i ujemnym: np. jeśli współrzędna U zostanie tutaj określona jako 0,5, wieloboki UV będą różniły się 0,5 i 1,5 raza od horyzontalnej skali U.

Opcje

Jedna klamra: Zapewnia brak zwrotu wartości wyższych niż 1,0. Przy zmiennych kolorach, może się zdarzyć, że będą one „zbyt jasne” (wartości RGB w z przekroczeniem 255, 255, 255). Ten efekt jest często niepożądany i można mu zapobiec, włączając tę opcję. Jeśli stosujesz obrazy HDRI, opcja ta powinna jednak zostać wyłączona.

Warunki atmosferyczne

Ten shader umożliwi nadanie obiektom wyglądu związanego z warunkami atmosferycznymi. Można określić kierunek tekstury, aby wyglądała tak jakby na powierzchnię oddziaływał wiatr, deszcze lub inne czynniki atmosferyczne.

WeatheringTowers.png

 

Od lewej do prawej: Niezmieniony, całkowicie zniszczony przez warunki atmosferyczne, częściowo zniszczony przez warunki atmosferyczne

WeatheringInterface.png

 

Opcje Intensywności shadera określają siłę rozmycia tekstury jak pokazano na rysunku poniżej, na którym wartość zwiększana jest od lewej do prawej strony od 20% (wartość domyślna) do 50% i 100%, odpowiednio.

WeatheringIntensity.png

 

Poza Intensywnością można również określić stopień gładkości rozmytej tekstury. Im wyższa wartość Gładkości, tym gładszy efekt i bardziej realistyczny wygląd. Na rysunku poniżej, Gładkość zwiększana jest od lewej do prawej strony od 4 do 16 (wartość domyślna) do 32.

WeatheringSmoothness.png

 

Ostatecznie, można użyć wartość jasności shadera intensywności do określenia stopnia wpływu warunków atmosferycznych. Można użyć obrazka albo shadera. Na rysunku poniżej, Shader elementu powtarzalnego został użyty do utworzenia linii poziomej.

WeatheringTiles.png