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

@@ -0,0 +1,49 @@
# OpenGLDevice::Shutdown
```cpp
void Shutdown() override
```
关闭 OpenGL 设备并释放相关资源。
## 详细描述
关闭 OpenGL 设备并执行清理操作:
1. **窗口销毁**: 如果设备拥有窗口 (`m_ownsWindow == true`),调用 `glfwDestroyWindow()` 销毁 GLFW 窗口
2. **状态重置**:
- `m_window` 设为 `nullptr`
- `m_initialized` 设为 `false`
- `m_ownsWindow` 设为 `false`
### 窗口所有权
设备可能通过两种方式获得窗口:
- **自有窗口**: 通过 `CreateRenderWindow()` 创建,设备负责销毁
- **外部窗口**: 通过 `InitializeWithExistingWindow()` 传入,设备不负责销毁
## 注意事项
- 多次调用 `Shutdown()` 是安全的
- 销毁窗口后,与该窗口关联的 OpenGL 上下文将无效
- 建议在程序结束前显式调用 `Shutdown()`
## 示例
```cpp
{
OpenGLDevice device;
device.Initialize(desc);
// ... 使用设备进行渲染
device.Shutdown(); // 显式关闭
}
// 或等待析构函数自动调用
```
## 相关文档
- [OpenGLDevice](device.md) - 类总览
- [Initialize](initialize.md) - 初始化设备
- [CreateRenderWindow](create-render-window.md) - 创建渲染窗口