Udostępnij za pośrednictwem


Porównywanie trybów cieniowania (Direct3D 9)

W trybie cieniowania płaskiego poniższa piramida jest wyświetlana z ostrą krawędzią między przylegającą twarzą. Jednak w trybie cieniowania Gouraud wartości cieniowania są interpolowane wzdłuż krawędzi, a końcowy wygląd przypomina zakrzywioną powierzchnię.

ilustracja ostrosłupu z ostrymi krawędziami i strzałkami wskazującymi na normalne oblicze

Cieniowanie Gourauda oświetla płaskie powierzchnie bardziej realistycznie niż cieniowanie płaskie. Powierzchnia w trybie cieniowania płaskiego ma jednolity kolor, ale cieniowanie Gouraud umożliwia światłu padać na powierzchnię bardziej realistycznie. Ten efekt jest szczególnie oczywisty, jeśli istnieje bliskie źródło punktowe.

Cieniowanie Gouraud wygładza ostre krawędzie między wielokątami, które są widoczne z płaskim cieniowaniem. Jednak może to spowodować pasma Mach, które są pasmami koloru lub światła, które nie są płynnie zintegrowane na sąsiednich wielokątach. Aplikacja może zmniejszyć wygląd pasm Mach, zwiększając liczbę wielokątów w obiekcie, zwiększając rozdzielczość ekranu lub zwiększając głębokość kolorów aplikacji.

Cieniowanie Gouraud może przegapić niektóre szczegóły. Na przykład na poniższej ilustracji reflektor jest całkowicie umieszczony w powierzchni wielokąta.

ilustracja reflektora w obszarze twarzy wielokąta

W tym przypadku cieniowanie Gouraud, które interpoluje między wierzchołkami, całkowicie przegapi reflektor; twarz będzie renderowana tak, jakby reflektor nie istniał.

cieniowanie