Vulkan: Remove framebuffer slot assert
This assert was to notify developers that they are using a framebuffer configuration that isn't supported when using render passes. Render passes should not be used and will be removed later in 5.0. Removing the assert will already help during triaging. Pull Request: https://projects.blender.org/blender/blender/pulls/143936
This commit is contained in:
@@ -41,6 +41,8 @@ struct VKExtensions {
|
||||
bool fragment_shader_barycentric = false;
|
||||
/**
|
||||
* Does the device support VK_KHR_dynamic_rendering enabled.
|
||||
*
|
||||
* We should assume that this is always supported. Option will be removed later in 5.0.
|
||||
*/
|
||||
bool dynamic_rendering = false;
|
||||
|
||||
|
||||
@@ -126,34 +126,7 @@ void VKFrameBuffer::vk_render_areas_append(Vector<VkRect2D> &r_render_areas) con
|
||||
|
||||
bool VKFrameBuffer::check(char err_out[256])
|
||||
{
|
||||
bool success = true;
|
||||
|
||||
if (has_gaps_between_color_attachments()) {
|
||||
success = false;
|
||||
|
||||
BLI_snprintf(err_out,
|
||||
256,
|
||||
"Framebuffer '%s' has gaps between color attachments. This is not supported by "
|
||||
"legacy devices using VkRenderPass natively.\n",
|
||||
name_);
|
||||
}
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
bool VKFrameBuffer::has_gaps_between_color_attachments() const
|
||||
{
|
||||
bool empty_slot = false;
|
||||
for (int attachment_index : IndexRange(GPU_FB_COLOR_ATTACHMENT0, GPU_FB_MAX_COLOR_ATTACHMENT)) {
|
||||
const GPUAttachment &attachment = attachments_[attachment_index];
|
||||
if (attachment.tex == nullptr) {
|
||||
empty_slot = true;
|
||||
}
|
||||
else if (empty_slot) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void VKFrameBuffer::build_clear_attachments_depth_stencil(
|
||||
|
||||
@@ -157,13 +157,6 @@ class VKFrameBuffer : public FrameBuffer {
|
||||
const bool multi_clear_colors,
|
||||
render_graph::VKClearAttachmentsNode::CreateInfo &clear_attachments) const;
|
||||
void clear(render_graph::VKClearAttachmentsNode::CreateInfo &clear_attachments);
|
||||
|
||||
/**
|
||||
* Check if there are gaps between color attachments.
|
||||
*
|
||||
* This is not supported when using VkRenderPass/VkFramebuffer.
|
||||
*/
|
||||
bool has_gaps_between_color_attachments() const;
|
||||
};
|
||||
|
||||
static inline VKFrameBuffer *unwrap(FrameBuffer *framebuffer)
|
||||
|
||||
Reference in New Issue
Block a user