Udostępnij przez


Palety tekstur (Direct3D 9)

Funkcja Direct3D 9 obsługuje tekstury paletowe za pomocą zestawu 256 palet wejściowych skojarzonych z obiektem IDirect3DDevice 9. Paleta jest bieżąca przez wywołanie metody IDirect3DDevice9::SetCurrentTexturePalette. Bieżąca paleta służy do tłumaczenia wszystkich tekstur paletowych dla wszystkich aktywnych etapów tekstury. IDirect3DDevice9::SetPaletteEntries aktualizuje wszystkie 256 wpisów palety. Każdy wpis jest PALETTEENTRY struktury formatu D3DFMT_A8R8G8B8. Wszystkie wpisy są domyślnie 0xFFFFFFFF.

PaletyIDirect3DDevice9zawierają kanał alfa. Ten kanał alfa może być używany, gdy ustawiono flagę możliwości urządzenia D3DPTEXTURECAPS_ALPHAPALETTE wskazującą, że urządzenie obsługuje alfa z palety. Kanał alfa palety jest używany, gdy format tekstury nie ma kanału alfa. Jeśli urządzenie nie obsługuje alfa z palety, a format tekstury nie ma kanału alfa, wartość 0xFF jest używana dla alfa.

Istnieje maksymalnie 65 536 (0x0000FFFF) palet. Ponieważ zasoby pamięci skojarzone z zestawem palet są proporcjonalne do maksymalnej liczby palet, do których odwołuje się aplikacja, użyj ciągłych numerów palet zaczynających się od zera.

podstawowe pojęcia dotyczące programowania tekstu