Udostępnij za pośrednictwem


Formaty powierzchni (Direct3D 9)

W trybie Direct3D wszystkie obrazy dwuwymiarowe (2D) są reprezentowane przez liniowy zakres pamięci nazywany powierzchnią. Powierzchnię można traktować jako tablicę 2D, w której każdy element zawiera wartość koloru reprezentującą małą sekcję obrazu, nazywaną pikselem. Poziom szczegółów obrazu jest definiowany przez zarówno liczbę pikseli potrzebnych do reprezentowania obrazu, jak i liczbę bitów potrzebnych do spektrum kolorów obrazu. Na przykład obraz o szerokości 800 pikseli o wysokości 600 pikseli z 32 bitami koloru dla każdego piksela (zapisany jako 800x600x32) będzie bardziej szczegółowy niż obraz o szerokości 640 pikseli o wysokości 480 pikseli z 16 bitami koloru dla każdego piksela (zapisany jako 640x480x16). Podobnie bardziej szczegółowy obraz będzie wymagał większej powierzchni do przechowywania danych. Dla obrazu 800x600x32 wymiary tablicy powierzchni będą mieć 800x600, a każdy element będzie przechowywać wartość 32-bitową reprezentującą jego kolor.

Wszystkie powierzchnie mają rozmiar i przechowują określoną liczbę bitów reprezentujących kolor. Bity reprezentujące kolor są oddzielone poszczególnymi elementami kolorów: czerwonym, zielonym i niebieskim. W trybie Direct3D wszystkie elementy kolorów są definiowane przez typ D3DFORMAT wyliczony. Format koloru Direct3D jest podzielony na liczbę bajtów zarezerwowanych dla każdego koloru. Na przykład format koloru 16-bitowego w trybie Direct3D jest definiowany jako D3DFMT_R5G6B5, gdzie 5 bitów jest zarezerwowanych dla czerwonych (R), 6 bitów dla zielonego (G) i 5 bitów dla niebieskiego (B).

powierzchni Direct3D