Freigeben über


Texturpaletten (Direct3D 9)

Direct3D 9 unterstützt Palettentexturen über eine Reihe von 256 Eintragspaletten, die dem IDirect3DDevice9--Objekt zugeordnet sind. Eine Palette wird durch Aufrufen der IDirect3DDevice9::SetCurrentTexturePalette-Methode aktuell gemacht. Die aktuelle Palette wird zum Übersetzen aller Palettentexturen für alle aktiven Texturphasen verwendet. IDirect3DDevice9::SetPaletteEntries alle 256 Einträge einer Palette aktualisiert. Jeder Eintrag ist eine PALETTEENTRY Struktur des Formats D3DFMT_A8R8G8B8. Alle Einträge werden standardmäßig auf 0xFFFFFFFF festgelegt.

Die IDirect3DDevice9 Paletten enthalten einen Alphakanal. Dieser Alphakanal kann verwendet werden, wenn das D3DPTEXTURECAPS_ALPHAPALETTE Gerätefunktionskennzeichnung festgelegt ist und angibt, dass das Gerät Alpha aus der Palette unterstützt. Der Paletten-Alphakanal wird verwendet, wenn das Texturformat keinen Alphakanal aufweist. Wenn das Gerät Alpha aus der Palette nicht unterstützt und das Texturformat keinen Alphakanal aufweist, wird ein Wert von 0xFF für Alpha verwendet.

Es gibt maximal 65.536 Paletten (0x0000FFFF). Da Speicherressourcen, die der Palettengruppe zugeordnet sind, proportional zur maximalen Palettennummer sind, auf die eine Anwendung verweist, verwenden Sie zusammenhängende Palettennummern beginnend mit Null.

Grundlegende Texturkonzepte