Mapowanie tekstur

Direct3D wspiera różne tryby odwzorowywania tekstur, łącznie z ich owijaniem, mieszaniem i multiteksturowaniem. Zrozumienie podstawowych zasad tego procesu pozwoli nam bardziej docenić wysiłek programistów włożony w powstawanie gier 3D. Mapa tekstury jest mapą bitową – komputerowym obrazem powierzchni obiektu. Jeśli zastanowimy się nad tym przez chwilę, przypomnimy sobie, że mapy bitowe są tworzone z serii pikseli ułożonych w liniach. Każda kolejna linia ułożona jest tuż pod poprzednią. Każdy piksel ma określoną barwę. Jeśli powiększymy pojedynczy piksel mapy bitowej będziemy mogli wyraźnie zobaczyć jego kolor.
Wzór złożony z pikseli nakładany jest na powierzchnię wielokąta. Podobnie jak wielokąty, tekstury również wykorzystują układ współrzędnych. Ponieważ jednak tekstury są płaskie, wymagają tylko dwóch współrzędnych określanych jako U oraz V. Współrzędne te są ważne dlatego, że umożliwiają programistom instruowanie Direct3D ile tekstury należy nałożyć na wielokąt. Tekstury mają bowiem stałe rozmiary natomiast pokrywane nimi wielokąty mogą mieć wymiary różne. Jeśli spróbowalibyśmy pokryć dużą teksturą mały wielokąt lub naciągnąć niewielką teksturę na wielokąt o dużych rozmiarach, efekt mógłby być dziwaczny.
Jednym z szeroko stosowanych w grach typów tekstur jest tekstura paletyzowąna. Tekstury tego rodzaju korzystają z nieograniczonej liczby kolorów. Zastosowana paleta musi być jednak zdefiniowana i dostępna. Kolor każdego piksela jest więc reprezentowany przez wartość wyznaczoną w palecie. Każda tekstura może zatem posłużyć się własną paletą. Dzięki temu, ostateczna scena może być bardzo kolorowa, każda tekstura zajmuje bowiem mniej pamięci, gdyż korzysta z ograniczonego zestawu barw. Ponieważ jednak paleta może być zupełnie odmienna dla każdej z tekstur, może to spowodować umieszczenie w scenie ogromnej liczby kolorów. Z tego też powodu użycie tekstur paletyzowanych można by nazwać „kompresją tekstur dla biedaków”.

Cześć, mam na imię Maksymilian i od wielu lat jestem fanem wszystkiego, co techniczne. Stąd też decyzja o założeniu tego bloga. Mam nadzieję, że treści, które tu publikuję przypadną Ci do gustu, i że zostaniesz tu na dłużej 🙂

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *