Co to jest bufor szablonu?

W programowaniu grafiki komputerowej bufor szowolki to obszar pamięci, do którego można przyciągnąć i stosować w odniesieniu do innych buforów graficznych w celu osiągnięcia różnych efektów lub maski obszarów sceny, aby nie były przetwarzane ani renderowane. Bufor szablonu jest buforem na piksel podobny do czarno-białego obrazu, w którym każde miejsce w buforze może pomieścić wartość, która najczęściej ma najwyżej 1 bajt, ale może być tak mały jak 1 bit. Bufor pierwotnie został zaprojektowany tak, aby działał jako prawdziwa lub fałszywa maska, podobnie jak prawdziwy szablon w świecie, więc obszary sceny można było zasłonić lub zignorować, ustalając wartości różnych regionów bufora szablonu na wartość inną niż zero. Istnieje wiele zastosowań bufora poza prostym maskowaniem, w tym rysowanie objętości cienia, wdrażanie aureoli wokół obiektów lub lokalizowanie obszarów, w których obiekty nakładają się na siebie. W wielu przypadkach bufor jest utrzymywany w pamięci graficznej na karcie graficznej, dzięki czemu można uzyskać do niego szybki dostęp podczas rendering.

Pojęcie bufora szablonu pierwotnie była sposobem na stworzenie dwuwymiarowej (2D) maski, którą można zastosować do trójwymiarowej (3D), gdy wierzchołki przesuwają się przez rurociąg graficzny. Jeśli po lokalizacji wierzchołka 3D, po rasteryzowanym, związanym z obszarem buforu szablonu, który nie był ustawiony na zero, wówczas ten wierzchołek można zignorować, a resztę przetwarzania rurociągu pominęła. Umożliwiło to programistom sposób na renderowanie tylko małych części sceny lub renderowanie obrazu w nieregularnie ukształtowany widokowy, taki jak odbicie w małym lustrze w większej scenie, gdzie kształt lustra jest rysowany jako szablon w buforze, a następnie odbijanie jest rysowane przez ten kształt.

.

Obawy pamięci doprowadziły do ​​oryginalnej formy bufora szablonu, który jest siatką o wartości pojedynczej bitowej, w której każdy piksel w buforze może być tylko prawdziwy lub fałszywy. W miarę rozwoju kart graficznychED, większość buforów była w stanie utrzymać pełną wartość bajtu w każdej lokalizacji pikseli, umożliwiając programistom posiadanie bardziej złożonych wartości w danej lokalizacji. Może to pozwolić na użycie bufora do wykrywania obszarów, w których obiekty nakładają się na siebie, co można wykonać poprzez zwiększenie wartości bufora w miejscu, jeśli obiekt zajmuje ten piksel na ekranie po rasteryzowaniu. Po tej operacji wartość każdej lokalizacji piksela w buforze będzie równa liczbie obiektów, które przekraczają piksel na ekranie.

Jednym z najpopularniejszych zastosowań bufora szablonu jest tworzenie cieni głośności. Można to zrobić, najpierw renderując scenę z bardzo słabym oświetleniem, więc wszystko wydaje się być zacienione. Następnie wprowadzane są obliczenia w celu określenia lokalizacji wszystkich powierzchni wielokąta w scenie, które są oświetlone źródłem światła, a te kształty są przenoszone do buforu szablonu. Scena jest ponownie renderowana, jakby każdy obiekt był w pełni oświetlony i był mieszany przez kształty szablonu na scenę zacienioną, efFactive tworzenie obrazu, który wydaje się zawierać obiekty o cieniu.

INNE JĘZYKI