ID3D11Device::CreateRenderTargetView 方法 (d3d11.h)

创建用于访问资源数据的呈现目标视图。

语法

HRESULT CreateRenderTargetView(
  [in]            ID3D11Resource                      *pResource,
  [in, optional]  const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,
  [out, optional] ID3D11RenderTargetView              **ppRTView
);

参数

[in] pResource

类型: ID3D11Resource*

指向表示呈现目标的 ID3D11Resource 的指针。 此资源必须已使用 D3D11_BIND_RENDER_TARGET 标志创建。

[in, optional] pDesc

类型: const D3D11_RENDER_TARGET_VIEW_DESC*

指向表示呈现目标视图说明 的D3D11_RENDER_TARGET_VIEW_DESC 的指针。 将此参数设置为 NULL 可创建访问 mipmap 级别 0 中的所有子资源的视图。

[out, optional] ppRTView

类型: ID3D11RenderTargetView**

指向 ID3D11RenderTargetView 的指针的地址。 将此参数设置为 NULL 以验证其他输入参数, (如果其他输入参数通过验证) ,该方法将返回S_FALSE。

返回值

类型: HRESULT

此方法返回 Direct3D 11 返回代码之一。

注解

可通过调用 ID3D11DeviceContext::OMSetRenderTargets 将呈现目标视图绑定到输出合并阶段。

Direct3D 11.1 运行时(从 Windows 8 开始可用)允许将 CreateRenderTargetView 用于以下新用途。

可以创建视频资源的呈现目标视图,以便 Direct3D 着色器可以处理这些呈现目标视图。 这些视频资源是 Texture2DTexture2DArray。 创建呈现器目标视图的 D3D11_RENDER_TARGET_VIEW_DESC 结构的 ViewDimension 成员中的值必须与视频资源类型匹配,对于 Texture2D D3D11_RTV_DIMENSION_TEXTURE2D,对于 Texture2DArray D3D11_RTV_DIMENSION_TEXTURE2DARRAY。 此外,基础视频资源的格式会限制视图可以使用的格式。 DXGI_FORMAT引用页上的视频资源格式值指定视图限制的格式值。

运行时读/写冲突防护逻辑 (它阻止资源绑定为 SRV 和 RTV 或 UAV,同时) 将同一视频图面不同部分的视图视为冲突,为简单起见。 因此,即使硬件可能允许这些同时操作,运行时也不允许应用程序从 luma 进行读取,而应用程序在同一表面同时呈现为 chroma。

要求

要求
目标平台 Windows
标头 d3d11.h
Library D3D11.lib

另请参阅

ID3D11Device