oa::Presenter::PresentArgs
Body of the graphics CB that presentSwapchainImage builds. All members are optional; precedence (step 3b.5): drawImGui = true → render pass with loadOp=CLEAR + ImGui draw → finalLayout PRESENT_SRC. ImGui-only renders today; blit+ImGui composite needs a render-pass with loadOp=LOAD (step 3c). blitSrcBuffer != nullptr → UNDEFINED → TRANSFER_DST → vkCmdCopyBufferToImage → PRESENT_SRC clearRgba != nullptr → UNDEFINED → TRANSFER_DST → vkCmdClearColorImage → PRESENT_SRC none → UNDEFINED → PRESENT_SRC (no content; chain smoke-test only) Buffer source is assumed to be packed 4-bytes-per-pixel and the same extent as the swapchain image. format swizzle: today's swapchain is VK_FORMAT_B8G8R8A8_SRGB but oa::Texture is RGBA8; channel-swap + linear→sRGB conversion are tracked as known limitations until the staging-image vkCmdBlitImage path lands.
Public Data Members
blitSrcBuffervoid *fieldblitSrcHeightoa::U32fieldblitSrcImagevoid *fieldblitSrcLayoutoa::I32fieldblitSrcWidthoa::U32fieldclearRgbaconst oa::F32 *fielddrawImGuiboolfieldfilterFilterfieldwaitTimelineSemaphorevoid *fieldwaitTimelineValueoa::U64field