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


Метод ID3D11DeviceContext::GenerateMips (d3d11.h)

Создает MIP-карты для заданного ресурса шейдера.

Синтаксис

void GenerateMips(
  [in] ID3D11ShaderResourceView *pShaderResourceView
);

Параметры

[in] pShaderResourceView

Тип: ID3D11ShaderResourceView*

Указатель на интерфейс ID3D11ShaderResourceView , представляющий ресурс шейдера.

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

None

Remarks

Вы можете вызвать GenerateMips в любом представлении ресурсов шейдера, чтобы создать более низкие уровни MIP-карты для ресурса шейдера. GenerateMips использует самый большой уровень MIP-карты представления для рекурсивного создания нижних уровней MIP и останавливается с наименьшим уровнем, заданным представлением. Если базовый ресурс не был создан с помощью D3D11_BIND_RENDER_TARGET, D3D11_BIND_SHADER_RESOURCE и D3D11_RESOURCE_MISC_GENERATE_MIPS, вызов GenerateMips не действует.

Уровни компонентов 9.1, 9.2 и 9.3 не поддерживают автоматическое создание MIP-карт для трехмерных (объемных) текстур.

Видеоадаптеры, поддерживающие уровень компонентов 9.1 и более поздних версий, поддерживают создание MIP-карт при использовании любого из следующих форматов:


DXGI_FORMAT_R8G8B8A8_UNORM
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
DXGI_FORMAT_B5G6R5_UNORM
DXGI_FORMAT_B8G8R8A8_UNORM
DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
DXGI_FORMAT_B8G8R8X8_UNORM
DXGI_FORMAT_B8G8R8X8_UNORM_SRGB

Видеоадаптеры, поддерживающие уровень компонентов 9.2 и более поздних версий, поддерживают создание MIP-карт, если вы используете любой из этих форматов в дополнение к любому из форматов для уровня компонентов 9.1:


DXGI_FORMAT_R16G16B16A16_FLOAT
DXGI_FORMAT_R16G16B16A16_UNORM
DXGI_FORMAT_R16G16_FLOAT
DXGI_FORMAT_R16G16_UNORM
DXGI_FORMAT_R32_FLOAT

Видеоадаптеры, поддерживающие уровень компонентов 9.3 и более поздних версий, поддерживают создание MIP-карт, если вы используете любой из этих форматов в дополнение к любому из форматов для уровней компонентов 9.1 и 9.2:


DXGI_FORMAT_R32G32B32A32_FLOAT
DXGI_FORMAT_B4G4R4A4 (optional)

Видеоадаптеры, поддерживающие уровень компонентов 10 и выше, поддерживают создание MIP-карт, если вы используете любой из этих форматов в дополнение к любому из форматов для уровней компонентов 9.1, 9.2 и 9.3:


DXGI_FORMAT_R32G32B32_FLOAT (optional)
DXGI_FORMAT_R16G16B16A16_SNORM
DXGI_FORMAT_R32G32_FLOAT
DXGI_FORMAT_R10G10B10A2_UNORM
DXGI_FORMAT_R11G11B10_FLOAT
DXGI_FORMAT_R8G8B8A8_SNORM
DXGI_FORMAT_R16G16_SNORM
DXGI_FORMAT_R8G8_UNORM
DXGI_FORMAT_R8G8_SNORM
DXGI_FORMAT_R16_FLOAT
DXGI_FORMAT_R16_UNORM
DXGI_FORMAT_R16_SNORM
DXGI_FORMAT_R8_UNORM
DXGI_FORMAT_R8_SNORM
DXGI_FORMAT_A8_UNORM
DXGI_FORMAT_B5G5R5A1_UNORM (optional)

Для всех остальных неподдерживаемых форматов generateMips будет автоматически завершаться ошибкой.

Требования

Требование Значение
Целевая платформа Windows
Header d3d11.h
Библиотека D3D11.lib

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

DXGI_FORMAT

ID3D11DeviceContext