Elementy wygenerowane w środowisku matematycznym 3D
źródło: unsplash.com, autor: Mehdi MeSSrro

Z kryształami „za pan brat”

Kilka słów o kryształach. Moich pierwszych modelach 3D, które jestem gotowy pokazać światu. Udało się zreformować kryształy, które pokazałem w tym wpisie. Wersja powyżej to już ich niemal ostateczne wcielenie. Jak pisałem wcześniej są elementem szkolnego projektu, który powstaje od siedmiu tygodni. Stwierdziłem, że warto opisać, co tu właściwie ma miejsce, bo render (ostateczna wersja) nie oddaje skomplikowana, jakie towarzyszy temu projektowi.

Modelowanie

Kryształy został wymodelowane w programie do grafiki 3D Blender (blender.org). Nie mogę się nachwalić tego oprogramowania, ale o tym kiedyś. Są to proste siatki. Pierwsza widoczna od lewej na renderze obecnie liczy 655 poligonów (uwierzcie mi, to bardzo mało) i to w obu wersjach – wysokopoligomowej i niskopolignowej. Dlaczego są dwie? O tym za chwilę. Każdy poligon powstał z prostego przekształcenia podstawowych geometrycznych kształtów. W przypadku pierwszego od lewej kryształy był to siedmiokąt. Magię robi w zaprezentowanym obrazie materiał z jakiego wykonane są kryształy i światło.

Z czego to jest?

Materiał to rozkaz de facto w 3D. Mówi komputerowi, jak ma zachować się światło kiedy będzie padać na konkretną powierzchnię. Kilka bazowych określa ekstrema zachowania światła. Nie chcę wchodzić w szczegóły, bo nie mam kompetencji, by o tym rozmawiać. Powiem tylko jak udało mi się osiągnąć efekt widoczny na obrazie. Pierwszym wejściowym rozkazem (shader) jest normalna. Czyli mapa zachowania się światła na krysztale, która wygenerowana została z wysokopoligomowego kryształu. Zawiera ona szczegóły siatki nakładane na niskopoligonowy kryształ. Efekt? Oszczędność pamięci komputera, który nie musi liczyć wysokiej liczby poligonów. Część szczegółów zawiera w normalnej mapie oszczędza nam kalkulacji. O ile w przypadku kryształów 3D to mało pomocne ułatwienie, przy bardziej złożonych modelach będzie zbawienne. W naszym przypadku, biorąc pod uwagę, że kryształów finalnie będzie kilkaset… może to mieć znaczenie dla finalnych obliczeń. Drugi rozkaz (shader) w sekwencji materiału to dyfuzor. Zapewnia on, że materiał generowany z normalnej będzie się lepiej „rozpraszał” na powierzchni kryształów. Równoległe z nim pojawia się przeźroczystość (wartość kolorystyczna, także shader). Oba te rozkazy są mieszane kawałek dalej. Proporcje 30 proc. na korzyść dyfuzora. W końcu pojawia się rozkaz (shader) szklany. Odpowiada za charakterystykę materiału i odbicia. Indeks refrakcji, który w tym rozkazie się pojawia ma wartość 2,4. Całość w edytorze wątków (nodes) w Blendrze zamyka wątek (rozkaz) wyjściowy. Efekt finalny generuje fioletowy kryształ.

Światło

Nie można zapomnieć o świetle. Oczywiście w finalnym, projektowym obrazie będzie ono inne niż na obrazku powyżej. Tutaj są dwa słońca i HDR (pobrana za darmo i do użytku ze strony HDR Heavenhdrihaven.com). To jaskinia, która generuje światło i tworzy nieskończoną sferę wgłąb sceny 3D. Jest też generujący światło obiekt w krysztale, niewiele powyżej centrum układu. To mikro kula, która emituje światło wewnątrz kryształu. Daje ona poświatę i odbicia w środku. W mojej ocenie powoduje to odrobinę życia w materiale i w finalnym krysztale. Pozostałe dwa są skonstruowane analogicznie z tą różnicą, że powstawały odrobinę inaczej. Teraz „bawię się” przenoszeniem tych kryształów do innego środowiska 3D. Obawiam się, że nie działa to tak dobrze jak chciałem, ale po to są problemy, by je rozwiązywać.

You may also like...

You cannot copy content of this page