Карты Текстуры
В DirectX 2, карты текстуры могут быть распределены в памяти системы, использующей HEL. Распределяя поверхность текстуры , определяют флажок DDSCAPS_TEXTURE в члене ddsCaps поверхностного описания, переданного методу IDirectDraw::CreateSurface.
HEL поддерживает широкий диапазон форматов пикселя текстуры . Следующая таблица описывает эти форматы. Столбец «Масок» содержит красные, зеленые, синие, и альфа маски для каждого набора флажков формата пикселя и разряды.
Pixel Format Flags | Bit Depth | Masks | |||
DDPF_RGB | |
| 1 | R: 0x00000000 | ||
DDPF_PALETTEINDEXED1 | G: 0x00000000 | ||||
B: 0x00000000 | |||||
A: 0x00000000 | |||||
DDPF_RGB | | 1 | R: 0x00000000 | |||
DDPF_PALETTEINDEXED1 | | G: 0x00000000 | ||||
DDPF_PALETTEINDEXEDTO8 | B: 0x00000000 | ||||
A: 0x00000000 | |||||
DDPF_RGB | | 2 | R: 0x00000000 | |||
DDPF_PALETTEINDEXED2 | G: 0x00000000 | ||||
B: 0x00000000 | |||||
A: 0x00000000 | |||||
DDPF_RGB | | 2 | R: 0x00000000 | |||
DDPF_PALETTEINDEXED2 | | G: 0x00000000 | ||||
DDPF_PALETTEINDEXEDTO8 | B: 0x00000000 | ||||
A: 0x00000000 | |||||
DDPF_RGB | | 4 | R: 0x00000000 | |||
DDPF_PALETTEINDEXED4 | G: 0x00000000 | ||||
B: 0x00000000 | |||||
A: 0x00000000 | |||||
DDPF_RGB | | 4 | R: 0x00000000 | |||
DDPF_PALETTEINDEXED4 | | G: 0x00000000 | ||||
DDPF_PALETTEINDEXEDTO8 | B: 0x00000000 | ||||
A: 0x00000000 | |||||
DDPF_RGB | | 8 | R: 0x00000000 | |||
DDPF_PALETTEINDEXED8 | G: 0x00000000 | ||||
B: 0x00000000 | |||||
A: 0x00000000 | |||||
DDPF_RGB | 8 | R: 0x000000E0 | |||
G: 0x0000001C | |||||
B: 0x00000003 | |||||
A: 0x00000000 | |||||
DDPF_RGB | | 16 | R: 0x00000F00 | |||
DDPF_ALPHAPIXELS | G: 0x000000F0 | ||||
B: 0x0000000F | |||||
A: 0x0000F000 | |||||
DDPF_RGB | 16 | R: 0x0000F800 | |||
G: 0x000007E0 | |||||
B: 0x0000001F | |||||
A: 0x00000000 | |||||
DDPF_RGB | 16 | R: 0x0000001F | |||
G: 0x000007E0 | |||||
B: 0x0000F800 | |||||
A: 0x00000000 | |||||
DDPF_RGB | 16 | R: 0x00007C00 | |||
G: 0x000003E0 | |||||
B: 0x0000001F | |||||
A: 0x00000000 | |||||
DDPF_RGB | | 16 | R: 0x00007C00 | |||
DDPF_ALPHAPIXELS | G: 0x000003E0 | ||||
B: 0x0000001F | |||||
A: 0x00008000 | |||||
DDPF_RGB | 24 | R: 0x00FF0000 | |||
G: 0x0000FF00 | |||||
B: 0x000000FF | |||||
A: 0x00000000 | |||||
DDPF_RGB | 24 | R: 0x000000FF | |||
G: 0x0000FF00 | |||||
B: 0x00FF0000 | |||||
A: 0x00000000 | |||||
DDPF_RGB | 32 | R: 0x00FF0000 | |||
G: 0x0000FF00 | |||||
B: 0x000000FF | |||||
A: 0x00000000 | |||||
DDPF_RGB | 32 | R: 0x000000FF | |||
G: 0x0000FF00 | |||||
B: 0x00FF0000 | |||||
A: 0x00000000 | |||||
DDPF_RGB | | 32 | R: 0x00FF0000 | |||
DDPF_ALPHAPIXELS | G: 0x0000FF00 | ||||
B: 0x000000FF | |||||
A: 0xFF000000 | |||||
DDPF_RGB | | 32 | R: 0x000000FF | |||
DDPF_ALPHAPIXELS | G: 0x0000FF00 | ||||
B: 0x00FF0000 | |||||
A: 0xFF000000 |
Форматы, показанные в предыдущей таблице могут быть созданы HEL в памяти системы. DirectDraw драйвер устройства для 3D плат дисплея может создавать текстуры других форматов в памяти дисплея. Такой драйвер должен экспортировать флажок DDSCAPS_TEXTURE, чтобы указать, что может создавать текстуры, и должен быть готов обработать DirectDraw HAL callback CanCreateSurface, чтобы проверить поверхностное описание для карты текстуры.