ID3D10Device::GenerateMips 方法 (d3d10.h)

为给定的着色器资源生成 mipmap。

语法

void GenerateMips(
  [in] ID3D10ShaderResourceView *pShaderResourceView
);

参数

[in] pShaderResourceView

类型: ID3D10ShaderResourceView*

指向 ID3D10ShaderResourceView 的指针。 将为此着色器资源生成 mipmap。

返回值

备注

可以在任何 ID3D10ShaderResourceView 上调用 GenerateMips,以生成较低的 mipmap 级别。 GenerateMips 使用视图的最大 mipmap 级别以递归方式生成较低级别的 mip,以视图指定的最小级别停止。 如果未使用 D3D10_BIND_RENDER_TARGET 创建基本资源,并且 D3D10_RESOURCE_MISC_GENERATE_MIPS,则此调用不起作用。

如果你使用以下任何格式,则支持 功能级别 9.1 和更高级别的视频适配器支持生成 mipmap:


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.1 的任何格式外,还使用这些格式之外,支持功能级别 9.2 和更高级别的视频适配器支持生成 mipmap:


DXGI_FORMAT_R16G16B16A16_FLOAT
DXGI_FORMAT_R16G16B16A16_UNORM
DXGI_FORMAT_R16G16_FLOAT
DXGI_FORMAT_R16G16_UNORM
DXGI_FORMAT_R32_FLOAT

除了 功能级别 9.1 和 9.2 的任何格式外,支持功能级别 9.3 和更高级别的视频适配器支持生成 mipmap:


DXGI_FORMAT_R32G32B32A32_FLOAT
DXGI_FORMAT_B4G4R4A4 (optional)

如果除 功能级别 9.1、9.2 和 9.3 的任何格式外,还使用这些格式,则支持功能级别 10 和更高级别的视频适配器支持生成 mipmap:


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)

对于所有其他不受支持的格式,此方法将以无提示方式失败。

要求

要求
目标平台 Windows
标头 d3d10.h
Library D3D10.lib

另请参阅

DXGI_FORMAT

ID3D10Device 接口