Введение в программирование трехмерных игр с DX9

       

Формат пикселей


1.3.3. Формат пикселей

При создании поверхностей или текстур нам часто надо будет определить формат пикселей ресурсов Direct3D. Формат определяется как член перечисления D3DFORMAT. Вот некоторые форматы:

D3DFMT_R8G8B8— 24-разрядный формат пикселей, где, начиная с самого левого разряда, 8 бит отведены для красного цвета, 8 бит — для зеленого и 8 бит — для синего.

D3DFMT_X8R8G8B8 — 32-разрядный формат пикселей, где, начиная с самого левого разряда, 8 бит не используются, 8 бит отведены для красного цвета, 8 бит — для зеленого и 8 бит — для синего.

D3DFMT_A8R8G8B8 — 32-разрядный формат пикселей, где, начиная с самого левого разряда, 8 бит используются для альфа-канала, 8 бит отведены для красного цвета, 8 бит — для зеленого и 8 бит — для синего.

D3DFMT_A16B16G16R16F — 64-разрядный формат пикселей с плавающей запятой. Начиная с самого левого разряда, 16 бит используются для альфа-канала, 16 бит отведены для синего цвета, 16 бит — для зеленого и 16 бит — для красного.

D3DFMT_A32B32G32R32F — 128-разрядный формат пикселей с плавающей запятой. Начиная с самого левого разряда, 32 разряда используются для альфа-канала, 32 разряда отведены для синего цвета, 32 разряда — для зеленого и 32 разряда — для красного.

Полный список поддерживаемых форматов пикселей приведен в описании перечисления D3DFORMAT в документации к SDK.

ПРИМЕЧАНИЕ

Первые три формата (D3DFMT_R8G8B8, D3DFMT_X8R8G8B8 и D3DFMT_A8R8G8B8) широко распространены и поддерживаются большинством современных видеокарт. Поддержка форматов с плавающей точкой и некоторых других форматов (упомянутых в документации SDK) встречается реже. При использовании малораспространенного формата не забудьте проверить перед его использованием, что установленная видеокарта поддерживает его.

Содержание раздела