# RHIFramebuffer **命名空间**: `XCEngine::RHI` **类型**: `class (abstract)` **头文件**: `XCEngine/RHI/RHIFramebuffer.h` **描述**: 帧缓冲抽象接口,封装渲染目标帧缓冲的创建和管理。 ## 概述 `RHIFramebuffer` 是 RHI 抽象层的帧缓冲接口,用于管理渲染目标(Render Target)的帧缓冲对象。它代表一个可用的帧缓冲结构,包含颜色附件、深度附件和模板附件。不同图形 API 后端(OpenGL、D3D12)通过实现此接口提供各自的帧缓冲管理机制。 帧缓冲是渲染管线中的核心对象,用于: - 存储渲染操作的颜色、深度、模板数据 - 作为纹理输入传递给后续渲染步骤 - 支持多重渲染目标(MRT)和延迟渲染 ## 公共方法 | 方法 | 描述 | |------|------| | [`Initialize`](initialize.md) | 初始化帧缓冲 | | [`Shutdown`](shutdown.md) | 关闭帧缓冲 | | [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | | [`GetWidth`](get-width.md) | 获取帧缓冲宽度 | | [`GetHeight`](get-height.md) | 获取帧缓冲高度 | | [`IsValid`](is-valid.md) | 检查帧缓冲是否有效 | ## 使用示例 ```cpp #include #include // 通过 RHIDevice 创建帧缓冲 RHIFramebuffer* framebuffer = device->CreateFramebuffer( renderPass, width, height, colorAttachmentCount, colorAttachments, depthStencilAttachment ); if (framebuffer && framebuffer->IsValid()) { // 使用帧缓冲进行渲染 framebuffer->Shutdown(); } ``` ## 相关文档 - [RHIRenderPass](../render-pass/render-pass.md) - 渲染通道接口