Новости

Как правильно применять в JavaScript асинхронные функции: примеры работы с ES 2017
От автора: возможность писать на JavaScript асинхронные функции является важным обновлением в ES2017. Что такое асинхронные функции? Асинхронные функции — это функции, которые возвращают promise. Мы

WordPress JavaScript — как правильно подключить файл скрипта к шаблону сайта
Использование в шаблонах WordPress JavaScript скриптов давно стало обычным делом. Их подключение возможно несколькими способами, начиная с классического варианта с использование голого HTML. Но чтобы все

Как исправить JavaScript error "ВКонтакте"? Что делать при ошибках JavaScript в "ВКонтакте"?
"ВКонтакте" - это на сегодняшний день самый удобный русскоязычный ресурс, который является не только популярнейшей социальной сетью, но и сервисом для прослушивания аудиозаписей и просмотра видео. Здесь

Правильное использование Tor Browser
Tor Browser полностью анонимен – Миф или реальность? Многие считают, что Tor — это полностью анонимное и безопасное средство для интернет-серфинга, которое не дает никому возможность контролировать то,

Javascript error object is not a function вконтакте как исправить
"ВКонтакте" - это на сегодняшний день самый удобный русскоязычный ресурс, который является не только популярнейшей социальной сетью, но и сервисом для прослушивания аудиозаписей и просмотра видео. Здесь

Как исправить ошибку javascript error вконтакте
На сегодняшний день «Вконтакте» является наиболее удобным русскоязычным ресурсом, который представляет собой не только крупнейшую социальной сеть, но и сервис для просмотра видео и прослушивания аудиозаписей.

Что такое JavaScript и для чего он используется?
Подробности декабря 10, 2015 Просмотров: 20225 В интернете миллионы веб-страниц,

Практика javascript синтаксис написания
Javascript — это язык программирования, который активно используется для построения динамических веб страниц. Собственно с этой целью он и был изобретен. У нашего с вами языка еще есть такое интересное

JavaScript учебник
Код функций в JavaScript начинает выполнение после их вызова. Функции являются одним из наиболее важных строительных блоков кода в JavaScript. Функции состоят из набора команд и обычно выполняют

Рекомендации решившим начать изучать JavaScript
Если вы решили начать изучать JavaScript , то эта статья для вас. Надеюсь, что её прочтение избавит вас в будущем от множества ошибок и сделает его изучения более простым, быстрым и эффективным. В статье

Metaliczny materiał do gier w 3ds Max i Photoshop

W tej lekcji opiszę teoretyczne podstawy tworzenia materiału na ścianę z metalowych płyt. Do stworzenia tego materiału użyję 3ds Max i Photoshop. Takie materiały są zwykle używane w grach komputerowych.

Tworzony przez nas materiał będzie matową metaliczną powierzchnią z oznakami zużycia. Stworzymy również teksturę odblaskową, aby można było zastosować mapę odbicia sześcianu do materiału. Pożądane jest, aby było bardzo rozmazane - aby lepiej odbijało się od metalu.
Proces modelowania.

Zaczynamy od prostej płaszczyzny. Skomplikujemy tę prostą formę za pomocą kilku poziomów fazy (narzędzie «Bevel»).

Skomplikujemy tę prostą formę za pomocą kilku poziomów fazy (narzędzie «Bevel»)

Oto podstawowy kształt, jak widać, w zasadzie użyłem kątów 45 stopni. Zwykle modeluję cały model bazowy bez stosowania grup wygładzających wielokątów - tak widzę lepiej to, co tworzę. Staraj się nie używać dużych kątów (więcej niż 45 stopni) podczas modelowania, ponieważ ta geometria nie będzie widoczna poza płaską powierzchnią.

Ponadto nie twórz zbyt głębokich szczegółów w modelu, ponieważ nadal utworzymy normalną mapę, a to będzie wymagało projekcji głównego modelu na płaskiej powierzchni
Ponadto nie twórz zbyt głębokich szczegółów w modelu, ponieważ nadal utworzymy normalną mapę, a to będzie wymagało projekcji głównego modelu na płaskiej powierzchni. Normalna mapa działa najlepiej z małymi szczegółami i kątami 45 stopni lub mniej (oczywiście, czasami nie można tego zrobić bez zwiększenia stopnia kątów).

Teraz wszystkie rogi są bardzo ostre ze względu na to, że staraliśmy się ułatwić wszystko i nie używać narzędzia Fazowanie (dodaje dodatkowe krawędzie lub krawędzie). Teraz musimy zacząć dodawać „wspierające krawędzie”. Są to krawędzie, które znajdują się w pobliżu krawędzi narożnych po obu stronach narożnika.

Jeśli nie potrzebujesz gładkich przejść w pustych rogach, w takich przypadkach powinieneś użyć wielokątów z różnymi grupami wygładzającymi. Ale nadal zalecam stosowanie jednej grupy wygładzającej dla całego modelu, ale z wykorzystaniem żeber podporowych. Odległość między żebrami nośnymi musi być zmieniana, aby uzyskać pożądaną ostrość narożnych żeber.

Odległość między żebrami nośnymi musi być zmieniana, aby uzyskać pożądaną ostrość narożnych żeber

Oto wynik zastosowania pomocniczych krawędzi do jednego obiektu (używana jest tylko jedna wygładzająca grupa wielokątów):

Oto wynik zastosowania pomocniczych krawędzi do jednego obiektu (używana jest tylko jedna wygładzająca grupa wielokątów):

Stworzymy teraz mniejsze detale, aby uczynić powierzchnię bardziej interesującą. Stworzyłem kilka oddzielnych obiektów odpowiednich dla naszego głównego modelu. Nie opiszę ich tworzenia - zajmie to kilka operacji „Faza” i „Wyciągnięcie”, aby je zasymulować.

Zauważ, że skrajne krawędzie pokrętła śruby i kwadratu są tak wyciśnięte, aby uzyskać gładkie przejście wzdłuż krawędzi (muszą być umieszczone jako „pływaki” - obiekty, które nie sąsiadują z głównym modelem).

Te części powinny wisieć w „powietrzu”
Te części powinny wisieć w „powietrzu”. Sprawy mogą być nieco bardziej skomplikowane, jeśli musisz umieścić je na jakimś okrągłym modelu podczas renderowania tekstury (funkcja „Renderuj do tekstury”). Ale możesz rozwiązać ten problem, zmieniając odległość pływaka względem głównego modelu. Możesz również wizualizować je oddzielnie, a następnie dodać je do głównej tekstury w Photoshopie.

Możesz również wizualizować je oddzielnie, a następnie dodać je do głównej tekstury w Photoshopie

Oto jak zamieściłem dodatkowe szczegóły:

Teraz musimy uzyskać teksturę głównej części z efektem „Ambient Occlusion”, używając funkcji „Render To Texture”
Teraz musimy uzyskać teksturę głównej części z efektem „Ambient Occlusion”, używając funkcji „Render To Texture”. Potrzebujemy również normalnej mapy. Wizualizator „Mental Ray” ma taką możliwość, dlatego lepiej go użyć. Zwykle przed rozpoczęciem renderowania tekstury wykonuję kilka kopii głównego obiektu i umieszczam je po każdej stronie oryginału. Robi się to tak, że podczas renderowania tekstur (z efektem „Okluzji otoczenia”) krawędzie głównego obiektu są przyciemniane jak fragment ściany.

Rozproszona, odblaskowa i błyszcząca tekstura.

Przede wszystkim powinniśmy mieć renderowaną teksturę z efektem „Ambient Occlusion”. Ona bardzo nam pomoże w tworzeniu pozostałych tekstur.

W Photoshopie utwórz kopię niebieskiego kanału normalnej mapy, zwiększ kontrast tego kanału. Następnie kliknij polecenie „Wybierz-> Zakres kolorów”, zaznacz ciemne części tekstury, zwiększ nieco obszar zaznaczenia za pomocą polecenia „Popraw krawędź”, utwórz nową warstwę i wypełnij obszar zaznaczenia kolorem białym. Następnie zrób maskę z nie powiększonego obszaru zaznaczenia.

Po tym otrzymasz bardzo dobrą mapę z wyraźnymi krawędziami, która zawiera również niepotrzebne wklęsłe części z normalnej mapy (zamaskowaliśmy je maską).

Istnieje inny sposób (łatwiejszy) do tworzenia map z wyraźnymi krawędziami w Photoshopie
Istnieje inny sposób (łatwiejszy) do tworzenia map z wyraźnymi krawędziami w Photoshopie. Aby to zrobić, będziesz potrzebował filtrów „xNormal” (program jest darmowy i łatwy do znalezienia w Internecie), a mianowicie filtr „Normal2Cavity” (w menu filtra znajdź xNormal). Musisz zastosować ten filtr do naszej normalnej mapy. Zwykle stosuję metodę „EMB” tego filtra, ponieważ wyodrębnia informacje o oświetleniu (wypukłe krawędzie) i ściemnia (zapadnięte krawędzie) na dwie różne warstwy.

Nie użyłem tej metody w tej lekcji, ponieważ nie chcę rozwijać dodatkowych programów, chociaż jest to szybszy sposób na uzyskanie warstwy podstawowej dla wypukłych i pustych krawędzi z normalnej mapy. Program „xNormal” zawiera również wiele innych przydatnych narzędzi do renderowania tekstur (w rzeczywistości jest do tego używany).

Oto okno dialogowe „Normal2Cavity”:

Następnie musisz zacząć rzucać kolory w głównej warstwie (najniższej) dla rozproszonej tekstury:

Dodaj kilka górnych warstw z różnymi teksturami, aby wyszczególnić powierzchnię.

Dobrze byłoby teraz dodać trochę rdzy i uszkodzenia krawędzi. Aby to zrobić, wystarczy dodać kilka warstw o ​​odpowiedniej teksturze, używając ostrego pędzla (krycie 70-100%), aby zamaskować niepotrzebne szczegóły. W celu uszczegółowienia tekstur można użyć dowolnego zdjęcia (dowolne uszkodzone, porysowane powierzchnie), w przypadku maski można użyć warstwy z mapą krawędzi (wykonaną na podstawie normalnej mapy) lub tekstury z efektem „Okluzja otoczenia” (uzyskaną w 3ds Max).

Dodałem również czarno-biały gradient, który przechodzi od dołu do góry. Zazwyczaj daje to głębokość tekstury, ale ten gradient nie jest odpowiedni dla wszystkich typów tekstur. Na przykład niektóre tekstury mogą być powtarzane zbyt często w pionie, a dostosowanie gradientu nie działa w ten sposób.

Oto tekstura uszkodzeń i rdzy stworzonych za pomocą techniki opisanej powyżej (użycie tekstur wypełnienia lub zdjęć przy użyciu masek):

Nadszedł czas, aby zrobić odblaskową teksturę, na zdjęciu u dołu, podkreśliłem główne obszary zainteresowania. Krawędzie są pomalowane jaśniej niż inne części, aby nieznacznie odróżnić kształt metalowej płytki. Uważaj, jeśli chodzi o materiały metalowe, ponieważ zbyt wiele szczegółów na odblaskowej teksturze może uczynić cały materiał nienaturalnym. Również farba powinna być bardziej odblaskowa niż niepomalowana część metalu. Jest to potrzebne do stworzenia kontrastu pomiędzy metalową podstawą a farbą - tak, aby części metalowe wyglądały bardziej realistycznie.

Ponadto zazwyczaj staram się zmienić jasność między różnymi częściami materiału, aby uniknąć wrażenia, że ​​wszystko składa się z jednego dużego kawałka metalu. Takie odmiany powinny być dostępne we wszystkich teksturach.

Takie odmiany powinny być dostępne we wszystkich teksturach

Możesz zrobić dużo z błyszczącą teksturą, jeśli chodzi o metal. Ja zrobiłem farbę jaśniejszą, więc wygląda gładko niż szorstka metalowa powierzchnia. Wszystkie skrajne części, które zrobiłem ciemne, ponieważ muszą być bardzo nierówne i szorstkie. Możesz trochę eksperymentować z tą teksturą.

Istnieje wiele różnych rodzajów metalu, ale duże segmenty ścian i płyty są zwykle bardzo matowe, więc w takich przypadkach często będziesz musiał pracować z ciemnymi błyszczącymi teksturami i półprzezroczystymi teksturami odbijającymi światło. Ale zawsze interesujące jest majstrowanie przy różnych jasnych szczegółach dla błyszczącej tekstury (nie trzeba nawet dostroić szczegółów odblaskowej tekstury, aby uzyskać takie wariacje), ponieważ ma to duży wpływ na ogólny efekt materiału.

W końcu zrobiłem kilka dużych faz na normalnej mapie, aby części metalowe stały się bardziej nierówne
W końcu zrobiłem kilka dużych faz na normalnej mapie, aby części metalowe stały się bardziej nierówne. Aby to zrobić, musisz utworzyć nową warstwę, wypełnioną czernią lub bielą, i narysować na niej kilka dużych, niewyraźnych kropli w przeciwnym kolorze. Możesz także użyć filtra „Chmury” (znajdującego się w „Filtry-> Renderuj”) i zamazać wynik. Nie zapominaj, że musisz pracować w 16-bitowym trybie koloru (menu „Image-> Mode-> 16 Bits / Channel”), jeśli chcesz, aby gradienty były płynne. Po zakończeniu wprowadzania szczegółów można przekonwertować obraz z powrotem na 8 bitów - gładkość gradientów pozostanie.

Oto cztery gotowe tekstury do porównania:
Oto cztery gotowe tekstury do porównania:

Stosowanie tekstur (przy użyciu materiału „DirectX Shader” w 3ds Max):

Stosowanie tekstur (przy użyciu materiału „DirectX Shader” w 3ds Max):

Przygotowanie materiału do powierzchni metalowych w 3ds Max i Photoshop