Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve render pass commands, more validation #1884

Merged
merged 3 commits into from
Apr 24, 2022

Conversation

Rua
Copy link
Contributor

@Rua Rua commented Apr 23, 2022

Changelog:

- **Breaking** `begin_render_pass` now takes a `RenderPassBeginInfo` struct.
- **Breaking** `ClearRect` now has a single `Range<u32>` for array layers.
- **Breaking** The fields of `ClearAttachment::Color` are now named.
- **Breaking** The `ImageClearValue` trait is removed.

Depends on #1880. I improved the validation of render pass commands and added an info struct. There are some missing things that still need addressing in relation to render passes:

  • The correctness of subpass dependencies isn't checked at all when beginning a render pass.
  • Render pass attachments aren't checked for conflicts. For example, if the same image is used for multiple attachments, and they have different image layouts set, or if attachments are concurrently written.
  • Draw commands don't track attachment usage.
  • A few checks can't be performed in secondary command buffers, because they depend on knowing the parameters of the render pass in the primary command buffer. These need to be checked when the secondary command buffer is added to the primary.

Copy link
Member

@AustinJ235 AustinJ235 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! I went ahead a resolved the conflicts.

@AustinJ235 AustinJ235 merged commit 9e2b41a into vulkano-rs:master Apr 24, 2022
AustinJ235 added a commit that referenced this pull request Apr 24, 2022
@Rua Rua deleted the render-pass-commands branch May 31, 2022 18:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants