docs: update RHI API docs

This commit is contained in:
2026-03-20 02:35:45 +08:00
parent ea756c0177
commit 070b444f8f
501 changed files with 13493 additions and 2022 deletions

View File

@@ -27,3 +27,4 @@ uint32_t count = d3d12QueryHeap->GetCount();
## 相关文档
- [D3D12QueryHeap](query-heap.md) - 类总览
- [GetType](get-type.md)

View 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)

View File

@@ -27,3 +27,4 @@ ID3D12QueryHeap* queryHeap = d3d12QueryHeap->GetQueryHeap();
## 相关文档
- [D3D12QueryHeap](query-heap.md) - 类总览
- [GetNativeHandle](get-native-handle.md)

View 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)

View 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)

View File

@@ -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)

View 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)