Rasteryzacja oprogramowania to proces, w którym scena lub obraz utworzony w oprogramowaniu do grafiki komputerowej trójwymiarowej (3D) jest przekształcany z jednej postaci w drugą. Istnieją dwa podstawowe typy obrazów tworzonych za pomocą grafiki komputerowej, określane jako grafika wektorowa i rastrowa. Obrazy wektorowe są tworzone przy użyciu geometrii, która zawiera linie i kształty tworzące obraz, podczas gdy grafiki rastrowe wykorzystują do tworzenia obrazów piksele, które są pojedynczymi punktami światła lub koloru. Rasteryzacja programowa to proces, w którym do konwersji obrazów wektorowych na obrazy rastrowe w celu wyświetlenia na monitorze używany jest program, a nie sprzęt.
Aby w pełni zrozumieć rasteryzację oprogramowania, ważne jest, aby ktoś najpierw zrozumiał dwa podstawowe sposoby tworzenia i wyświetlania obrazów komputerowych. Obrazy wektorowe są tworzone przy użyciu kształtów geometrycznych. Obejmuje to podstawowe linie i punkty, które można ze sobą łączyć, aby tworzyć inne kształty, w tym różne wielokąty często używane w tworzeniu grafiki trójwymiarowej lub 3D. Większość obrazów 3D jest generowanych jako różne kształty, które są tworzone przez łączenie ze sobą wielu małych trójkątów.
Każdy z tych trójkątów jest generowany jako obraz wektorowy, więc złożone elementy, które tworzą większą scenę, są również oparte na wektorach. Aby jednak były one prawidłowo wyświetlane na ekranie komputera lub telewizora, muszą najpierw zostać przekonwertowane na format, który można skuteczniej przekazać na takim ekranie. Monitory i telewizory wykorzystują pojedyncze punkty światła i koloru, które są nazywane pikselami lub „elementami obrazu”.
Obrazy tworzone przy użyciu pikseli są określane jako obrazy rastrowe. Zamiast używać linii i kształtów do tworzenia obrazu, obrazy rastrowe są tworzone przez kombinację dziesiątek, setek lub tysięcy pojedynczych punktów. Aby obraz wektorowy był prawidłowo i łatwo wyświetlany na ekranie wykorzystującym piksele, jest on zwykle konwertowany na obraz rastrowy, proces ten określany jest jako „rasteryzacja”.
Rasteryzacja oprogramowania oznacza po prostu, że ta konwersja jest obsługiwana przez program, a nie przez sprzęt w komputerze lub innym urządzeniu. Na przykład twórca gier wideo zazwyczaj stosuje rasteryzację oprogramowania, aby zapewnić prawidłowe wyświetlanie wielokątnych obrazów 3D. Dzięki temu grafika stworzona dla gry może wyświetlać się przez sam program, zamiast polegać na sprzęcie, który może, ale nie musi być obecny na komputerze gracza.
Wraz z rozwojem technologii rasteryzacja oprogramowania stała się w dużej mierze wspierana przez sprzęt. Dedykowane karty graficzne, które zapewniają dodatkową moc przetwarzania grafiki, ułatwiły ten proces i dały większe możliwości twórcom gier. Renderowanie w czasie rzeczywistym opiera się na rasteryzacji zachodzącej dziesiątki razy na sekundę, która stała się prostsza dzięki zaawansowanemu oprogramowaniu i mocniejszym procesorom graficznym.