ID3D11DeviceContext1::ClearView 方法 (d3d11_1.h)

将资源视图中的所有元素设置为一个值。

语法

void ClearView(
  [in]           ID3D11View       *pView,
  [in]           const FLOAT [4]  Color,
  [in, optional] const D3D11_RECT *pRect,
                 UINT             NumRects
);

参数

[in] pView

指向 ID3D11View 接口的指针,该接口表示要清除的资源视图。

[in] Color

一个 4 分量数组,表示用于清除资源视图的颜色。

[in, optional] pRect

资源视图中要清除的矩形的 D3D11_RECT 结构的数组。 如果 NULL,ClearView 将清除整个图面。

NumRects

pRect 参数指定的数组中的矩形数。

返回值

备注

ClearView 仅适用于呈现目标视图 (RTV) 、深度/模具视图 (DSV) 仅深度资源 (没有模具组件) 的资源、无序访问视图 (UAV) ,或 Texture2D 图面的任何视频视图。 运行时删除无效调用。 pRect 数组中的空矩形是 no-op。 如果顶部值等于底部值或左侧值等于右值,则矩形为空。

ClearView 不支持 3D 纹理。

ClearView 将相同的颜色值应用于视图中的所有数组切片; pRect 数组中的所有矩形都对应于每个数组切片。 矩形的 pRect 数组是在单个图面上要清除的一组区域。 如果视图是一个数组, ClearView 将单独清除每个数组切片上的所有矩形。

将矩形应用于缓冲区时,将顶部值设置为 0,将底部值设置为 1,并将左侧值和右侧值设置为描述缓冲区中的范围。 当顶部值等于底部值或左侧值等于右值时,矩形为空,并且实现无操作。

驱动程序根据 Direct3D 转换规则根据需要将颜色值转换为目标格式并将其固定为目标格式。 例如,如果视图的格式 DXGI_FORMAT_R8G8B8A8_UNORM,驱动程序会将输入限制为 0.0f 到 1.0f (+INF -> 1.0f (0XFF) /NaN -> 0.0f) 。

如果格式为整数(例如 DXGI_FORMAT_R8G8B8A8_UINT),运行时会将输入解释为整型浮点数。 因此,235.0f 映射到 235 (舍入到零,范围外/INF 值固定到目标范围,NaN 映射到 0) 。

下面是颜色映射:

  • Color[0]:视频) 的 R (或 Y
  • 颜色[1]:用于视频) 的 G (或 U/Cb
  • 颜色[2]:视频) 的 B (或 V/Cr
  • Color[3]: A
对于采用 YUV 或 YCbBr 格式的视频视图, ClearView 不会转换颜色值。 在格式名称不指示_UNORM、_UINT等情况下, ClearView 假定_UINT。 因此,235.0f 映射到 235 (舍入到零,范围外/INF 值固定到目标范围,NaN 映射到 0) 。

要求

要求
最低受支持的客户端 适用于 Windows 7 的Windows 8和平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 适用于 Windows Server 2008 R2 的Windows Server 2012和平台更新 [桌面应用 |UWP 应用]
目标平台 Windows
标头 d3d11_1.h
Library D3D11.lib

另请参阅

ID3D11DeviceContext1