-
Notifications
You must be signed in to change notification settings - Fork 190
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
extensions: Always return
pipeline
/shaders
, even on error
In `ash::Device` `create_compute_pipeline()` and `create_graphics_pipeline()` already return the list of pipelines regardless of the error code, even if their return value isn't strictly defined, not even when `VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT` is passed. Now `VK_AMDX_shader_enqueue`'s `vkCreateExecutionGraphPipelinesAMDX()` is already defining much more clearly that _all_ output pipelines in the array will be written, but might be set to `vk::Pipeline::null()` if creation for it failed. Furthermore it also specifies that pipelines are compiled in order and that no further pipelines are compiled after the first failure when the faulty pipeline has `VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT` set. However `vkCreateShadersEXT` from `VK_EXT_shader_object` takes the crown by additionally detailing that the caller has to destroy any non-`vk::Handle::is_null()` `vk::ShaderEXT` in the resulting array when the caller does not wish to use this impartial result when an error was returned. Since it is expected that ray tracing pipeline creation behaves the same as `vkCreateGraphicsPipelines()` `vkCreateComputePipelines()` they are now equally updated to return pipelines on error.
- Loading branch information
Showing
5 changed files
with
62 additions
and
26 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters