42 lines
1.2 KiB
Markdown
42 lines
1.2 KiB
Markdown
# D3D12RenderTargetView::InitializeAt
|
|
|
|
## 函数签名
|
|
|
|
```cpp
|
|
void InitializeAt(ID3D12Device* device, ID3D12Resource* resource, D3D12_CPU_DESCRIPTOR_HANDLE handle, const D3D12_RENDER_TARGET_VIEW_DESC* desc = nullptr)
|
|
```
|
|
|
|
## 描述
|
|
|
|
在指定描述符句柄位置初始化渲染目标视图,用于外部描述符堆管理场景。此方法允许将 RTV 创建在预分配的描述符位置,便于批量管理描述符。
|
|
|
|
## 参数
|
|
|
|
| 参数 | 类型 | 描述 |
|
|
|------|------|------|
|
|
| `device` | `ID3D12Device*` | D3D12 设备指针 |
|
|
| `resource` | `ID3D12Resource*` | 渲染目标资源指针 |
|
|
| `handle` | `D3D12_CPU_DESCRIPTOR_HANDLE` | 预分配的描述符句柄位置 |
|
|
| `desc` | `D3D12_RENDER_TARGET_VIEW_DESC*` | 视图描述符(可选,传入 nullptr 使用资源默认格式) |
|
|
|
|
## 返回值
|
|
|
|
无
|
|
|
|
## 复杂度
|
|
|
|
O(1)
|
|
|
|
## 示例
|
|
|
|
```cpp
|
|
// 从描述符堆获取句柄
|
|
D3D12_CPU_DESCRIPTOR_HANDLE handle = descriptorHeap->GetCPUDescriptorHandleForHeapStart();
|
|
rtv.InitializeAt(device, resource, handle);
|
|
```
|
|
|
|
## 相关文档
|
|
|
|
- [D3D12RenderTargetView](render-target-view.md) - 类总览
|
|
- [D3D12RenderTargetView::Initialize](initialize.md) - 标准初始化
|
|
- [D3D12DescriptorHeap](../descriptor-heap/descriptor-heap.md) - 描述符堆管理 |