Метод ID3D11Device3::CreateTexture2D1 (d3d11_3.h)
Создает двухd-текстуру.
Синтаксис
HRESULT CreateTexture2D1(
[in] const D3D11_TEXTURE2D_DESC1 *pDesc1,
[in, optional] const D3D11_SUBRESOURCE_DATA *pInitialData,
[out, optional] ID3D11Texture2D1 **ppTexture2D
);
Параметры
[in] pDesc1
Тип: const D3D11_TEXTURE2D_DESC1*
Указатель на структуру D3D11_TEXTURE2D_DESC1 , описывающую ресурс двухмерной текстуры. Чтобы создать бестипный ресурс, который можно интерпретировать во время выполнения в разных совместимых форматах, укажите бестипный формат в описании текстуры. Чтобы автоматически создавать уровни MIP-карты, установите для количества уровней MIP-карты значение 0.
[in, optional] pInitialData
Тип: const D3D11_SUBRESOURCE_DATA*
Указатель на массив D3D11_SUBRESOURCE_DATA структур, описывающих подресурсы для ресурса двухмерной текстуры. Приложения не могут указывать значение NULL для pInitialData при создании ресурсов IMMUTABLE (см . D3D11_USAGE). Если ресурс имеет несколько выборок, значение pInitialData должно иметь значение NULL , так как ресурсы с несколькими выборками нельзя инициализировать с данными при их создании.
Если ничего не передать в pInitialData, начальное содержимое памяти для ресурса не определено. В этом случае необходимо записать содержимое ресурса другим способом, прежде чем он будет прочитан.
Размер этого массива можно определить на основе значений в элементах MipLevels и ArraySizeструктуры D3D11_TEXTURE2D_DESC1 , на которую указывает pDesc1 , с помощью следующего вычисления:
MipLevels * ArraySize
Дополнительные сведения об этом размере массива см. в разделе Примечания.
[out, optional] ppTexture2D
Тип: ID3D11Texture2D1**
Указатель на блок памяти, получающий указатель на интерфейс ID3D11Texture2D1 для созданной текстуры. Присвойте этому параметру значение NULL , чтобы проверить другие входные параметры (метод вернет S_FALSE , если другие входные параметры проходят проверку).
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, код возврата S_OK. Коды ошибок с ошибкой см. в разделе Коды возврата Direct3D 11 .
Комментарии
CreateTexture2D1 создает ресурс двухмерной текстуры, который может содержать несколько двухмерных подресурсов. Количество подресурсов указывается в описании текстуры. Все текстуры в ресурсе должны иметь одинаковый формат, размер и количество уровней MIP-карты.
Все ресурсы состоят из одного или нескольких подресурсов. Для загрузки данных в текстуру приложения могут изначально предоставлять данные в виде массива D3D11_SUBRESOURCE_DATA структур, на которые указывает pInitialData, или использовать одну из функций текстурЫ D3DX, например D3DX11CreateTextureFromFile.
Для текстуры размером 32 x 32 с полной цепочкой MIP-карты массив pInitialData содержит следующие 6 элементов:
- pInitialData[0] = 32x32
- pInitialData[1] = 16x16
- pInitialData[2] = 8x8
- pInitialData[3] = 4x4
- pInitialData[4] = 2x2
- pInitialData[5] = 1x1
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 [только классические приложения] |
Минимальная версия сервера | Windows Server 2016 [только классические приложения] |
Целевая платформа | Windows |
Header | d3d11_3.h |
Библиотека | D3D11.lib |