Get Adobe Flash player

Pomoc techniczna - Zobacz poradniki techniczne - Shadery dla opornych

Witaj w internetowym dziale Pomocy Technicznej firmy CD Projekt!

Zabawa matką postępu

Od czasu powstania pierwszych gier wykorzystujących środowisko 3D, jesteśmy świadkami niezwykle prężnego rozwoju komputerów. Niewielu bowiem zaprzeczy, że to właśnie gry są jednym z głównych, jeśli nie najważniejszym, motorem postępu w grafice komputerowej oraz sprzęcie w ogóle. Kolejne tytuły z rosnącą ilością efektów specjalnych oraz komplikacją tworzonych scen 3D, stawiają naszym PC coraz wyższe wymagania. W przeszłości karty graficzne posiadały tylko kilka zaszytych sprzętowo algorytmów, mogących posłużyć do przetwarzania danych o geometrii i teksturach renderowanej sceny. W 2001 roku pojawiły się pierwsze akceleratory mające możliwość programowej obsługi tytułowych Shaderów, dając twórcom gier nowe narzędzie do pracy i pole do popisu. Najprościej mówiąc Shader to mini program służący w grafice 3D do cieniowania, określania ostatecznej powierzchni obiektu lub obrazu. Zanim jednak powiemy o nim więcej – parę słów o podstawach tworzenia obiektów w grafice trójwymiarowej.

Od wierzchołków do tekstury

Początki gier 3D i nieśmiertelny Doom...

Początki gier 3D i nieśmiertelny Doom...

 

Model 3D składa się z jednej lub więcej siatek zbudowanych
z wierzchołków, czyli punktów w trójwymiarowej przestrzeni. Wierzchołki modeli połączone są w trójkąty, najprostsze płaskie figury geometryczne. Z połączenia trójkątów otrzymujemy natomiast siatkę modelu trójwymiarowego.
W aplikacjach czasu rzeczywistego bardzo rzadko używa się innych prymitywów niż trójkąty, ponieważ ich renderowanie jest zdecydowanie najszybsze. Siatka modelu reprezentuje jego kształt w przestrzeni, a za wygląd odpowiedzialny jest materiał pokrywający obiekt. Materiał jest zestawem parametrów opisujących powierzchnię renderowanej siatki, a także sposób jej renderowania, czyli to, jakiego koloru będzie siatka modelu lub jaką teksturą zostanie on pokryty.

Shader – narzędzie co najmniej dobre

Shader Model 1.1 w akcji, z 3D Mark 03

Shader Model 1.1 w akcji, z 3D Mark 03

 

Jak już wspomnieliśmy wcześniej Shader to mini program. Jest on pisany zwykle w specjalnym języku (shading language) i wykonywany w podzespołach akceleratora graficznego, odpowiedzialnych za jego realizację – Pixel Shaderach (jednostka cieniowania pikseli) i Vertex Shaderach (jednostka cieniowania werteksów). Shadery pozwalają programiście na użycie, podczas tworzenia scen 3D, szerokiej gamy efektów jak pochłanianie światła, refrakcja, dyfuzja, odbicia lustrzane, rozmycie obrazu i wiele innych. Wszystkie operacje wykonywane są w wyżej wymienionych Pixel i Vertex Shaderach w czasie rzeczywistym i jednocześnie. To pozwala na dużo bardziej skomplikowane modelowanie oświetlenia i tekstury oraz uniezależnienie się od T&L, dzięki czemu oprócz poprawy jakości wyświetlanego obrazu wzrasta szybkość generowania klatek animacji. Pojawienie się Shaderów przyniosło także sprzętową obsługę LOD (poziom uszczegółowienia grafiki), który do tej pory był implementowany programowo, co poważnie spowalniało silniki gier 3D.

Strona: 1 2

Ogłoszenie

Dział Pomocy Technicznej pracuje od poniedziałku do piątku w godzinach 9-17.

Kontakt telefoniczny możliwy jest w godzinach 10-17.

Nr telefonów: 22 519 69 66, 22 487 57 58

Masz problem z zarejestrowaniem gry lub konta na stronie CD Projekt? Kliknij tutaj.

Rejestracja Gier i ProgramówZarejestruj grę