49 lines
1.1 KiB
Markdown
49 lines
1.1 KiB
Markdown
# ResourceStates
|
|
|
|
**命名空间**: `XCEngine::RHI`
|
|
|
|
**类型**: `enum class`
|
|
|
|
**描述**: 资源状态枚举,定义 GPU 资源的使用状态
|
|
|
|
## 概述
|
|
|
|
ResourceStates 枚举定义了 GPU 资源的当前状态,用于资源 barriers 和同步管理。
|
|
|
|
## 枚举值
|
|
|
|
| 枚举值 | 描述 |
|
|
|--------|------|
|
|
| `Common` | 通用状态 |
|
|
| `VertexAndConstantBuffer` | 顶点或常量缓冲区 |
|
|
| `IndexBuffer` | 索引缓冲区 |
|
|
| `RenderTarget` | 渲染目标 |
|
|
| `UnorderedAccess` | 无序访问 |
|
|
| `DepthWrite` | 深度写入 |
|
|
| `DepthRead` | 深度读取 |
|
|
| `NonPixelShaderResource` | 非像素着色器资源 |
|
|
| `PixelShaderResource` | 像素着色器资源 |
|
|
| `CopySrc` | 复制源 |
|
|
| `CopyDst` | 复制目标 |
|
|
| `Present` | 呈现状态 |
|
|
| `GenericRead` | 通用读取 |
|
|
|
|
## 使用示例
|
|
|
|
```cpp
|
|
#include "RHI/RHIEnums.h"
|
|
|
|
void Example() {
|
|
ResourceStates state = ResourceStates::RenderTarget;
|
|
|
|
if (state == ResourceStates::Common) {
|
|
// 通用状态
|
|
}
|
|
}
|
|
```
|
|
|
|
## 相关文档
|
|
|
|
- [HeapType](heap-type.md) - 堆类型枚举
|
|
- [BufferType](buffer-type.md) - 缓冲区类型枚举
|