Partager via


Palettes de textures (Direct3D 9)

Direct3D 9 prend en charge les textures en palettes via un ensemble de 256 palettes d’entrée associées à l’objet IDirect3DDevice9 . Une palette est rendue actuelle en appelant la méthode IDirect3DDevice9::SetCurrentTexturePalette . La palette actuelle est utilisée pour traduire toutes les textures en palette pour toutes les étapes de texture actives. IDirect3DDevice9::SetPaletteEntries met à jour toutes les 256 entrées d’une palette. Chaque entrée est une structure PALETTEENTRY du format D3DFMT_A8R8G8B8. Par défaut, toutes les entrées sont 0xFFFFFFFF.

Les palettes IDirect3DDevice9 contiennent un canal alpha. Ce canal alpha peut être utilisé lorsque l’indicateur de capacité de l’appareil D3DPTEXTURECAPS_ALPHAPALETTE est défini, ce qui indique que l’appareil prend en charge l’alpha à partir de la palette. Le canal alpha de la palette est utilisé lorsque le format de texture n’a pas de canal alpha. Si l’appareil ne prend pas en charge l’alpha de la palette et que le format de texture n’a pas de canal alpha, la valeur 0xFF est utilisée pour alpha.

Il existe un maximum de 65 536 palettes (0x0000FFFF). Étant donné que les ressources de mémoire associées à l’ensemble de palettes sont proportionnelles au nombre maximal de palettes référencées par une application, utilisez des nombres de palettes contigus commençant à zéro.

Concepts de base de la texturation