1. 帧缓冲区(Framebuffer)
定义与作用
帧缓冲区(Framebuffer)是 Vulkan/D3D12/OpenGL 中的核心对象,用于存储渲染结果的最终目标(即“画布”)。它绑定了一组 附件(Attachments),包括:
- 颜色附件
(Color Attachments):存储像素颜色(输出到屏幕或纹理)。
- 深度/模板附件
(Depth/Stencil Attachments):用于深度测试和模板测试。
关键特点
- 与 RenderPass 关联
:Framebuffer 的附件必须匹配 RenderPass 中定义的格式和数量。
- 多渲染目标(MRT)
:可同时绑定多个颜色附件(如延迟渲染中的 G-Buffer)。
- 生命周期
:通常在渲染循环开始前创建,结束时销毁。
代码示例
void CVulkanApp::createFrameBuffers()
{
swapChainFramebuffers_.resize(swapChainImageViews_.size());
for (size_t i = 0; i < swapChainImageViews_.size(); i++) {
VkImageView attachments[] = {
swapChainImageViews_[i]
};
VkFramebufferCreateInf

4607

被折叠的 条评论
为什么被折叠?



