Wiele gier stosuje sztuczkę polegającą na użyciu tzw. map oświetlenia

Oświetlenie sceny polega na zmianie odcieni pikseli, co daje złudzenie istnienia rzeczywistych źródeł światła. Źródła te mogą być widoczne – na przykład pochodnia czy latarka – lub niewidoczne. Chociaż zdarza się czasami, że jakaś gra może wymagać, żeby scena była spowita ciemnością, zazwyczaj w grach stosuje się przynajmniej jedno źródło światła otaczającego. W tym przypadku mówimy o światłach geometrycznych – źródłach światła, których efekty są obliczane na podstawie rzeczywistych praw fizyki. Obliczanie drogi promieni świetlnych wiąże się również z powstawaniem miejsc ciemniejszych czyli cieni. (Wiele gier stosuje sztuczkę polegającą na użyciu tzw. map oświetlenia, które są w istocie gotowymi, obliczonymi teksturami mieszanymi z obrazem, dającymi iluzję specyficznego oświetlenia). Przedstawia dwa obrazy. Scena na lewym obrazku jest oświetlona tylko i wyłącznie światłem otaczającym. Obrazek po prawej stronie przedstawia natomiast tę samą scenę oświetloną jednak światłem kierunkowym. Zwróćmy uwagę, że kolumny na lewej części rysunku wyglądają jakby były wtopione w ścianę za nimi. Po oświetleniu sceny światłem kierunkowym wyraźnie widać, że kolumny są odrębnymi obiektami. DirectX 7 przenosi ciężar operacji transformacji i oświetlenie na sprzęt, co było zresztą zamierzeniem Microsoftu. Sprzętowa akceleracja tych operacji pozwala grom 3D wznieść się na jeszcze wyższe poziomy. Zawdzięczają to możliwości modelowania  obiektów bardziej szczegółowego niż kiedykolwiek dotąd, co z kolei umożliwia tworzenie realistycznie wyglądających scen i postaci.
Konkurencyjny API OpenGL operacje transformacji i oświetlenia od zawsze pozostawiał sprzętowi.

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 *