Instead of recreating the same renderpass object in every frame and for every offscreen, just reuse it. Technically, we can save this per-renderer or even per-display (it should really be cached by VkDevice), but we have no infrastructure for that.