docs: update RHI API docs
This commit is contained in:
@@ -27,3 +27,4 @@ uint32_t count = d3d12QueryHeap->GetCount();
|
||||
## 相关文档
|
||||
|
||||
- [D3D12QueryHeap](query-heap.md) - 类总览
|
||||
- [GetType](get-type.md)
|
||||
|
||||
33
docs/api/rhi/d3d12/query-heap/get-native-handle.md
Normal file
33
docs/api/rhi/d3d12/query-heap/get-native-handle.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# D3D12QueryHeap::GetNativeHandle
|
||||
|
||||
## 函数签名
|
||||
|
||||
```cpp
|
||||
void* GetNativeHandle() const
|
||||
```
|
||||
|
||||
## 中文描述
|
||||
|
||||
获取原生句柄,用于跨 RHI 模块互操作。返回的指针类型为 `ID3D12QueryHeap*`。
|
||||
|
||||
## 参数
|
||||
|
||||
无
|
||||
|
||||
## 返回值
|
||||
|
||||
`void*` - 指向 `ID3D12QueryHeap` 的指针
|
||||
|
||||
## 示例
|
||||
|
||||
```cpp
|
||||
D3D12QueryHeap queryHeap;
|
||||
queryHeap.Initialize(device, QueryType::Timestamp, 1024);
|
||||
|
||||
void* handle = queryHeap.GetNativeHandle();
|
||||
ID3D12QueryHeap* nativeHeap = static_cast<ID3D12QueryHeap*>(handle);
|
||||
```
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [GetQueryHeap](get-query-heap.md)
|
||||
@@ -27,3 +27,4 @@ ID3D12QueryHeap* queryHeap = d3d12QueryHeap->GetQueryHeap();
|
||||
## 相关文档
|
||||
|
||||
- [D3D12QueryHeap](query-heap.md) - 类总览
|
||||
- [GetNativeHandle](get-native-handle.md)
|
||||
|
||||
36
docs/api/rhi/d3d12/query-heap/get-type.md
Normal file
36
docs/api/rhi/d3d12/query-heap/get-type.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# D3D12QueryHeap::GetType
|
||||
|
||||
## 函数签名
|
||||
|
||||
```cpp
|
||||
QueryType GetType() const
|
||||
```
|
||||
|
||||
## 中文描述
|
||||
|
||||
获取查询堆的类型。
|
||||
|
||||
## 参数
|
||||
|
||||
无
|
||||
|
||||
## 返回值
|
||||
|
||||
`QueryType` - 查询类型(Timestamp、Occlusion 或 PipelineStatistics)
|
||||
|
||||
## 示例
|
||||
|
||||
```cpp
|
||||
D3D12QueryHeap queryHeap;
|
||||
queryHeap.Initialize(device, QueryType::Occlusion, 256);
|
||||
|
||||
QueryType type = queryHeap.GetType();
|
||||
if (type == QueryType::Occlusion) {
|
||||
// 处理遮挡查询
|
||||
}
|
||||
```
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [D3D12QueryHeap](query-heap.md)
|
||||
- [GetCount](get-count.md)
|
||||
42
docs/api/rhi/d3d12/query-heap/initialize.md
Normal file
42
docs/api/rhi/d3d12/query-heap/initialize.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# D3D12QueryHeap::Initialize
|
||||
|
||||
## 函数签名
|
||||
|
||||
```cpp
|
||||
bool Initialize(ID3D12Device* device, QueryType type, uint32_t count)
|
||||
```
|
||||
|
||||
## 中文描述
|
||||
|
||||
创建 D3D12 查询堆资源。根据指定的查询类型分配相应类型的 GPU 查询堆。
|
||||
|
||||
## 参数
|
||||
|
||||
| 参数 | 类型 | 描述 |
|
||||
|------|------|------|
|
||||
| `device` | `ID3D12Device*` | D3D12 设备指针 |
|
||||
| `type` | `QueryType` | 查询类型:Timestamp(时间戳)、Occlusion(遮挡)、PipelineStatistics(管线统计) |
|
||||
| `count` | `uint32_t` | 查询数量 |
|
||||
|
||||
## 返回值
|
||||
|
||||
`bool` - 初始化是否成功
|
||||
|
||||
## 示例
|
||||
|
||||
```cpp
|
||||
D3D12QueryHeap timestampHeap;
|
||||
if (timestampHeap.Initialize(device, QueryType::Timestamp, 1024)) {
|
||||
// 时间戳查询堆创建成功
|
||||
}
|
||||
|
||||
D3D12QueryHeap occlusionHeap;
|
||||
if (occlusionHeap.Initialize(device, QueryType::Occlusion, 256)) {
|
||||
// 遮挡查询堆创建成功
|
||||
}
|
||||
```
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [D3D12QueryHeap](query-heap.md)
|
||||
- [Shutdown](shutdown.md)
|
||||
@@ -2,19 +2,37 @@
|
||||
|
||||
**命名空间**: `XCEngine::RHI`
|
||||
|
||||
**描述**: DirectX 12 查询堆的 D3D12 实现。
|
||||
**类型**: `class`
|
||||
|
||||
**描述**: DirectX 12 查询堆的 D3D12 实现,用于管理 GPU 查询操作。
|
||||
|
||||
## 公共方法
|
||||
|
||||
| 方法 | 描述 |
|
||||
|------|------|
|
||||
| [`Initialize`](../../../threading/task-system/initialize.md) | 初始化查询堆 |
|
||||
| [`Shutdown`](../../../threading/task-system/shutdown.md) | 关闭查询堆 |
|
||||
| [`Initialize`](initialize.md) | 初始化查询堆 |
|
||||
| [`Shutdown`](shutdown.md) | 关闭查询堆 |
|
||||
| [`GetQueryHeap`](get-query-heap.md) | 获取 D3D12 查询堆 |
|
||||
| [`GetNativeHandle`](../../buffer/get-native-handle.md) | 获取原生句柄 |
|
||||
| [`GetType`](../../command-queue/get-type.md) | 获取查询类型 |
|
||||
| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 |
|
||||
| [`GetType`](get-type.md) | 获取查询类型 |
|
||||
| [`GetCount`](get-count.md) | 获取查询数量 |
|
||||
|
||||
## 使用示例
|
||||
|
||||
```cpp
|
||||
#include "XCEngine/RHI/D3D12/D3D12QueryHeap.h"
|
||||
|
||||
D3D12QueryHeap queryHeap;
|
||||
if (queryHeap.Initialize(device, QueryType::Timestamp, 1024)) {
|
||||
// 使用查询堆
|
||||
ID3D12QueryHeap* heap = queryHeap.GetQueryHeap();
|
||||
QueryType type = queryHeap.GetType();
|
||||
uint32_t count = queryHeap.GetCount();
|
||||
|
||||
queryHeap.Shutdown();
|
||||
}
|
||||
```
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [D3D12 后端总览](../../opengl/overview.md)
|
||||
- [D3D12 后端总览](../d3d12.md)
|
||||
|
||||
35
docs/api/rhi/d3d12/query-heap/shutdown.md
Normal file
35
docs/api/rhi/d3d12/query-heap/shutdown.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# D3D12QueryHeap::Shutdown
|
||||
|
||||
## 函数签名
|
||||
|
||||
```cpp
|
||||
void Shutdown()
|
||||
```
|
||||
|
||||
## 中文描述
|
||||
|
||||
关闭查询堆,释放所有关联的 GPU 资源。将重置内部状态为默认值。
|
||||
|
||||
## 参数
|
||||
|
||||
无
|
||||
|
||||
## 返回值
|
||||
|
||||
无
|
||||
|
||||
## 示例
|
||||
|
||||
```cpp
|
||||
D3D12QueryHeap queryHeap;
|
||||
queryHeap.Initialize(device, QueryType::Timestamp, 1024);
|
||||
|
||||
// 使用查询堆...
|
||||
|
||||
queryHeap.Shutdown(); // 释放资源
|
||||
```
|
||||
|
||||
## 相关文档
|
||||
|
||||
- [D3D12QueryHeap](query-heap.md)
|
||||
- [Initialize](initialize.md)
|
||||
Reference in New Issue
Block a user