Bufor Z

Wikipedia:Weryfikowalność
Ten artykuł od 2013-06 wymaga zweryfikowania podanych informacji.
Należy podać wiarygodne źródła w formie przypisów bibliograficznych.
Część lub nawet wszystkie informacje w artykule mogą być nieprawdziwe. Jako pozbawione źródeł mogą zostać zakwestionowane i usunięte.
Sprawdź w źródłach: Encyklopedia PWN • Google Books • Google Scholar • Federacja Bibliotek Cyfrowych • BazHum • BazTech • RCIN • Internet Archive (texts / inlibrary)
Po wyeliminowaniu niedoskonałości należy usunąć szablon {{Dopracować}} z tego artykułu.
Prosta scena trójwymiarowa (góra), reprezentacja graficzna zawartości bufora Z dla tej sceny(dół)

Bufor Z, bufor głębokości, bufor głębi (ang. Z-buffer, depth buffer) – struktura danych wykorzystywana w systemach generujących i wyświetlających obrazy trójwymiarowe, przechowująca współrzędną Z, czyli głębokość czy odległość od obserwatora, dla każdego piksela obrazu.

Opis metody

Modyfikacja pojedynczego piksela przebiega według następującego algorytmu: jeśli współrzędna Z danego piksela jest mniejsza od współrzędnej Z zapisanej w buforze, wtedy piksel ten znajduje się bliżej obserwatora, czyli można go zmodyfikować i uaktualnić wpis w buforze Z. Dzięki temu uzyskuje się poprawny obraz, tzn. taki, w którym obiekty trójwymiarowe są prezentowane zgodnie z ich wzajemnymi relacjami przesłaniania.

Przykład tworzenia obrazu: najpierw rysowany jest trójkąt szary, a następnie żółty. Na ilustracjach po prawej podano wartości współrzędnej Z przy rysowaniu poszczególnych trójkątów

Zalety

  • łatwa do realizacji sprzętowej, obecnie powszechnie stosowana przez producentów kart graficznych;
  • nieprzezroczyste obiekty trójwymiarowe mogą być rasteryzowane w dowolnej kolejności.

Wady

  • potrzeba dodatkowej pamięci;
  • liczba bitów przeznaczona na zapisanie współrzędnej Z determinuje dokładność; ze względu na niewystarczającą precyzję mogą występować błędy w wyświetlaniu wielokątów leżących na jednej płaszczyźnie (ang. z fighting);
  • algorytmy rasteryzujące muszą dodatkowo wyznaczać współrzędną Z;
  • zawsze muszą zostać przejrzane wszystkie piksele, które dany obiekt pokrywa na obrazie;
  • dopiero po przetworzeniu wszystkich nieprzezroczystych obiektów mogą zostać narysowane obiekty przezroczyste, ponadto muszą być wyświetlane w kolejności od najdalszego do najbliższego.

Zobacz też

  • usuwanie niewidocznych powierzchni
  • obcinanie
  • algorytm malarza
  • algorytm Warnocka