Поделиться через


Метод IDirect3DDevice9::CreateVolumeTexture (d3d9.h)

Создает ресурс текстуры тома.

Синтаксис

HRESULT CreateVolumeTexture(
  [in]          UINT                    Width,
  [in]          UINT                    Height,
  [in]          UINT                    Depth,
  [in]          UINT                    Levels,
  [in]          DWORD                   Usage,
  [in]          D3DFORMAT               Format,
  [in]          D3DPOOL                 Pool,
  [out, retval] IDirect3DVolumeTexture9 **ppVolumeTexture,
  [in]          HANDLE                  *pSharedHandle
);

Параметры

[in] Width

Тип: UINT

Ширина верхнего уровня текстуры тома в пикселях. Если задан D3DPTEXTURECAPS_VOLUMEMAP_POW2 член D3DCAPS9 , это значение должно иметь значение 2. Размеры пикселей последующих уровней — это усеченное значение половины пиксельного измерения предыдущего уровня (независимо). Каждое измерение зажимает размером 1 пиксель. Таким образом, если деление на два приводит к 0 (нулю), вместо него будет приниматься 1. Максимальное измерение, которое поддерживает драйвер (для ширины, высоты и глубины), можно найти в maxVolumeExtent в D3DCAPS9.

[in] Height

Тип: UINT

Высота верхнего уровня текстуры тома в пикселях. Если задан D3DPTEXTURECAPS_VOLUMEMAP_POW2 член D3DCAPS9 , это значение должно иметь значение 2. Размеры пикселей последующих уровней — это усеченное значение половины пиксельного измерения предыдущего уровня (независимо). Каждое измерение зажимает размером 1 пиксель. Таким образом, если деление на 2 приводит к 0 (нулю), вместо него будет принято 1. Максимальное измерение, которое поддерживает драйвер (для ширины, высоты и глубины), можно найти в maxVolumeExtent в D3DCAPS9.

[in] Depth

Тип: UINT

Глубина верхнего уровня текстуры тома в пикселях. Если задан D3DPTEXTURECAPS_VOLUMEMAP_POW2 член D3DCAPS9 , это значение должно иметь значение 2. Размеры пикселей последующих уровней — это усеченное значение половины пиксельного измерения предыдущего уровня (независимо). Каждое измерение зажимает размером 1 пиксель. Таким образом, если деление на 2 приводит к 0 (нулю), вместо него будет принято 1. Максимальное измерение, которое поддерживает драйвер (для ширины, высоты и глубины), можно найти в maxVolumeExtent в D3DCAPS9.

[in] Levels

Тип: UINT

Количество уровней в текстуре. Если это значение равно нулю, Direct3D создаст все вложенные значения текстуры до 1x1 пикселей для оборудования, поддерживающего текстуры тома mipmapped. Вызовите метод IDirect3DBaseTexture9::GetLevelCount , чтобы просмотреть количество созданных уровней.

[in] Usage

Тип: DWORD

Использование может иметь значение 0, что указывает на отсутствие значения использования. При необходимости используйте D3DUSAGE_DYNAMIC или D3DUSAGE_SOFTWAREPROCESSING. Дополнительные сведения см. в разделе D3DUSAGE.

[in] Format

Тип: D3DFORMAT

Член D3DFORMAT перечисляемого типа, описывающего формат всех уровней в текстуре тома.

[in] Pool

Тип: D3DPOOL

Член D3DPOOL перечисляемого типа, описывающего класс памяти, в который должна быть помещена текстура тома.

[out, retval] ppVolumeTexture

Тип: IDirect3DVolumeTexture9**

Адрес указателя на интерфейс IDirect3DVolumeTexture9 , представляющий созданный ресурс текстуры тома.

[in] pSharedHandle

Тип: HANDLE*

Зарезервировано. Задайте для этого параметра значение NULL. Этот параметр можно использовать в Direct3D 9 для Windows Vista для совместного использования ресурсов.

Возвращаемое значение

Тип: HRESULT

Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если метод завершается ошибкой, возвращается одно из следующих значений: D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY.

Требования

Требование Значение
Целевая платформа Windows
Header d3d9.h (включая D3D9.h)
Библиотека D3D9.lib

См. также раздел

D3DXCreateVolumeTexture

D3DXCreateVolumeTextureFromFile

D3DXCreateVolumeTextureFromFileEx

D3DXCreateVolumeTextureFromFileInMemory

D3DXCreateVolumeTextureFromFileInMemoryEx

D3DXCreateVolumeTextureFromResource

D3DXCreateVolumeTextureFromResourceEx

IDirect3DDevice9