docs: 重构 API 文档结构并修正源码准确性
- 重组文档目录结构: 每个模块的概述页移动到模块子目录
- 重命名 index.md 为 main.md
- 修正所有模块文档中的错误:
- math: FromEuler→FromEulerAngles, TransformDirection 包含缩放, Box 是 OBB, Color::ToRGBA 格式
- containers: 新增 operator==/!= 文档, 补充 std::hash DJB 算法细节
- core: 修复 types 链接错误
- debug: LogLevelToString 返回大写, timestamp 是秒, Profiler 空实现标注, Windows API vs ANSI
- memory: 修复头文件路径, malloc vs operator new, 新增方法文档
- resources: 修复 Shader/Texture 链接错误
- threading: TaskSystem::Wait 空实现标注, ReadWriteLock 重入描述, LambdaTask 链接
- 验证: fix_links.py 确认 0 个断裂引用
2026-03-19 00:22:30 +08:00
|
|
|
|
# OpenGLDepthStencilView
|
|
|
|
|
|
|
|
|
|
|
|
**命名空间**: `XCEngine::RHI`
|
|
|
|
|
|
|
2026-03-20 02:35:45 +08:00
|
|
|
|
**描述**: OpenGL 深度模板视图实现,用于管理深度缓冲区和模板缓冲区的帧缓冲对象。
|
|
|
|
|
|
|
|
|
|
|
|
## 概述
|
|
|
|
|
|
|
|
|
|
|
|
`OpenGLDepthStencilView` 类封装了 OpenGL 深度模板视图(Depth-Stencil View)的功能,通过帧缓冲对象(Framebuffer Object)管理深度缓冲区和模板缓冲区。该类支持多种纹理类型,包括 2D 纹理、2D 纹理数组和立方体贴图。
|
|
|
|
|
|
|
|
|
|
|
|
主要功能:
|
|
|
|
|
|
- 创建和管理深度模板帧缓冲对象
|
|
|
|
|
|
- 绑定/解绑深度模板视图到渲染管线
|
|
|
|
|
|
- 清除深度缓冲区和/或模板缓冲区的值
|
|
|
|
|
|
- 查询视图相关的纹理和帧缓冲信息
|
docs: 重构 API 文档结构并修正源码准确性
- 重组文档目录结构: 每个模块的概述页移动到模块子目录
- 重命名 index.md 为 main.md
- 修正所有模块文档中的错误:
- math: FromEuler→FromEulerAngles, TransformDirection 包含缩放, Box 是 OBB, Color::ToRGBA 格式
- containers: 新增 operator==/!= 文档, 补充 std::hash DJB 算法细节
- core: 修复 types 链接错误
- debug: LogLevelToString 返回大写, timestamp 是秒, Profiler 空实现标注, Windows API vs ANSI
- memory: 修复头文件路径, malloc vs operator new, 新增方法文档
- resources: 修复 Shader/Texture 链接错误
- threading: TaskSystem::Wait 空实现标注, ReadWriteLock 重入描述, LambdaTask 链接
- 验证: fix_links.py 确认 0 个断裂引用
2026-03-19 00:22:30 +08:00
|
|
|
|
|
2026-03-19 02:01:18 +08:00
|
|
|
|
## 公共方法
|
docs: 重构 API 文档结构并修正源码准确性
- 重组文档目录结构: 每个模块的概述页移动到模块子目录
- 重命名 index.md 为 main.md
- 修正所有模块文档中的错误:
- math: FromEuler→FromEulerAngles, TransformDirection 包含缩放, Box 是 OBB, Color::ToRGBA 格式
- containers: 新增 operator==/!= 文档, 补充 std::hash DJB 算法细节
- core: 修复 types 链接错误
- debug: LogLevelToString 返回大写, timestamp 是秒, Profiler 空实现标注, Windows API vs ANSI
- memory: 修复头文件路径, malloc vs operator new, 新增方法文档
- resources: 修复 Shader/Texture 链接错误
- threading: TaskSystem::Wait 空实现标注, ReadWriteLock 重入描述, LambdaTask 链接
- 验证: fix_links.py 确认 0 个断裂引用
2026-03-19 00:22:30 +08:00
|
|
|
|
|
2026-03-19 02:01:18 +08:00
|
|
|
|
| 方法 | 描述 |
|
docs: 重构 API 文档结构并修正源码准确性
- 重组文档目录结构: 每个模块的概述页移动到模块子目录
- 重命名 index.md 为 main.md
- 修正所有模块文档中的错误:
- math: FromEuler→FromEulerAngles, TransformDirection 包含缩放, Box 是 OBB, Color::ToRGBA 格式
- containers: 新增 operator==/!= 文档, 补充 std::hash DJB 算法细节
- core: 修复 types 链接错误
- debug: LogLevelToString 返回大写, timestamp 是秒, Profiler 空实现标注, Windows API vs ANSI
- memory: 修复头文件路径, malloc vs operator new, 新增方法文档
- resources: 修复 Shader/Texture 链接错误
- threading: TaskSystem::Wait 空实现标注, ReadWriteLock 重入描述, LambdaTask 链接
- 验证: fix_links.py 确认 0 个断裂引用
2026-03-19 00:22:30 +08:00
|
|
|
|
|------|------|
|
2026-03-20 02:35:45 +08:00
|
|
|
|
| [`OpenGLDepthStencilView`](constructor.md) | 构造函数 |
|
|
|
|
|
|
| [`~OpenGLDepthStencilView`](destructor.md) | 析构函数 |
|
2026-03-19 02:01:18 +08:00
|
|
|
|
| [`Initialize`](initialize.md) | 初始化深度模板视图 |
|
|
|
|
|
|
| [`InitializeCubemap`](initialize-cubemap.md) | 初始化立方体贴图深度模板视图 |
|
|
|
|
|
|
| [`Shutdown`](shutdown.md) | 关闭深度模板视图 |
|
|
|
|
|
|
| [`Bind`](bind.md) | 绑定深度模板视图 |
|
|
|
|
|
|
| [`Unbind`](unbind.md) | 解绑深度模板视图 |
|
|
|
|
|
|
| [`ClearDepth`](clear-depth.md) | 清除深度 |
|
|
|
|
|
|
| [`ClearStencil`](clear-stencil.md) | 清除模板 |
|
|
|
|
|
|
| [`ClearDepthStencil`](clear-depth-stencil.md) | 清除深度和模板 |
|
|
|
|
|
|
| [`GetFramebuffer`](get-framebuffer.md) | 获取帧缓冲 |
|
|
|
|
|
|
| [`GetTexture`](get-texture.md) | 获取纹理 |
|
|
|
|
|
|
| [`GetMipLevel`](get-mip-level.md) | 获取 Mip 级别 |
|
|
|
|
|
|
| [`BindFramebuffer`](bind-framebuffer.md) | 绑定帧缓冲 |
|
|
|
|
|
|
| [`UnbindFramebuffer`](unbind-framebuffer.md) | 解绑帧缓冲 |
|
docs: 重构 API 文档结构并修正源码准确性
- 重组文档目录结构: 每个模块的概述页移动到模块子目录
- 重命名 index.md 为 main.md
- 修正所有模块文档中的错误:
- math: FromEuler→FromEulerAngles, TransformDirection 包含缩放, Box 是 OBB, Color::ToRGBA 格式
- containers: 新增 operator==/!= 文档, 补充 std::hash DJB 算法细节
- core: 修复 types 链接错误
- debug: LogLevelToString 返回大写, timestamp 是秒, Profiler 空实现标注, Windows API vs ANSI
- memory: 修复头文件路径, malloc vs operator new, 新增方法文档
- resources: 修复 Shader/Texture 链接错误
- threading: TaskSystem::Wait 空实现标注, ReadWriteLock 重入描述, LambdaTask 链接
- 验证: fix_links.py 确认 0 个断裂引用
2026-03-19 00:22:30 +08:00
|
|
|
|
|
2026-03-20 02:35:45 +08:00
|
|
|
|
## 相关结构体与枚举
|
|
|
|
|
|
|
|
|
|
|
|
- [`OpenGLDepthStencilViewDesc`](openGLDepthStencilViewDesc.md) - 深度模板视图描述结构体
|
|
|
|
|
|
- [`DepthStencilFormat`](depth-stencil-format.md) - 深度模板格式枚举
|
|
|
|
|
|
- [`DepthStencilType`](depth-stencil-type.md) - 深度模板类型枚举
|
|
|
|
|
|
|
docs: 重构 API 文档结构并修正源码准确性
- 重组文档目录结构: 每个模块的概述页移动到模块子目录
- 重命名 index.md 为 main.md
- 修正所有模块文档中的错误:
- math: FromEuler→FromEulerAngles, TransformDirection 包含缩放, Box 是 OBB, Color::ToRGBA 格式
- containers: 新增 operator==/!= 文档, 补充 std::hash DJB 算法细节
- core: 修复 types 链接错误
- debug: LogLevelToString 返回大写, timestamp 是秒, Profiler 空实现标注, Windows API vs ANSI
- memory: 修复头文件路径, malloc vs operator new, 新增方法文档
- resources: 修复 Shader/Texture 链接错误
- threading: TaskSystem::Wait 空实现标注, ReadWriteLock 重入描述, LambdaTask 链接
- 验证: fix_links.py 确认 0 个断裂引用
2026-03-19 00:22:30 +08:00
|
|
|
|
## 相关文档
|
|
|
|
|
|
|
2026-03-26 01:29:00 +08:00
|
|
|
|
- [OpenGL 后端总览](../opengl.md)
|