Fix for incorrect framebuffer attachment handling #89
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Framebuffer attachments should always be matched with the same image:
And in the case of merged render passes they will always having matching formats and sample counts because
Attachment::are_identical()
checks that they are in fact the same image.With this logic it is safe to set the format, sample count, and initial layout on framebuffer load operations and then also set the format and sample count in addition to final layout on store operations. In cases where the user does not specify a load or store operation we can infer the format. This fixes the issue of depth images having the wrong layout due to it being set based on the load operation but ignoring the store.
In cases where the user simply attaches images (the
DONT_CARE
ops) there is no change.