MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ create_offscreen_color()

RenderPassCreateInfo MayaFlux::Core::VKRenderPass::create_offscreen_color ( vk::Format  color_format,
vk::ImageLayout  final_layout = vk::ImageLayout::eShaderReadOnlyOptimal 
)
static

Definition at line 204 of file VKRenderPass.cpp.

207{
208
209 RenderPassCreateInfo create_info;
210
211 AttachmentDescription color_attachment;
212 color_attachment.format = color_format;
213 color_attachment.load_op = vk::AttachmentLoadOp::eClear;
214 color_attachment.store_op = vk::AttachmentStoreOp::eStore;
215 color_attachment.initial_layout = vk::ImageLayout::eUndefined;
216 color_attachment.final_layout = final_layout;
217 create_info.attachments.push_back(color_attachment);
218
219 SubpassDescription subpass;
220 subpass.color_attachments.emplace_back(0, vk::ImageLayout::eColorAttachmentOptimal);
221 create_info.subpasses.push_back(subpass);
222
223 SubpassDependency dependency;
224 dependency.src_subpass = VK_SUBPASS_EXTERNAL;
225 dependency.dst_subpass = 0;
226 dependency.src_stage_mask = vk::PipelineStageFlagBits::eColorAttachmentOutput;
227 dependency.dst_stage_mask = vk::PipelineStageFlagBits::eColorAttachmentOutput;
228 dependency.dst_access_mask = vk::AccessFlagBits::eColorAttachmentWrite;
229 create_info.dependencies.push_back(dependency);
230
231 return create_info;
232}

References MayaFlux::Core::RenderPassCreateInfo::attachments, MayaFlux::Core::SubpassDescription::color_attachments, MayaFlux::Core::RenderPassCreateInfo::dependencies, MayaFlux::Core::SubpassDependency::dst_access_mask, MayaFlux::Core::SubpassDependency::dst_stage_mask, MayaFlux::Core::SubpassDependency::dst_subpass, MayaFlux::Core::AttachmentDescription::final_layout, MayaFlux::Core::AttachmentDescription::format, MayaFlux::Core::AttachmentDescription::initial_layout, MayaFlux::Core::AttachmentDescription::load_op, MayaFlux::Core::SubpassDependency::src_stage_mask, MayaFlux::Core::SubpassDependency::src_subpass, MayaFlux::Core::AttachmentDescription::store_op, and MayaFlux::Core::RenderPassCreateInfo::subpasses.