Fix multi graphics pipeline creation
When creating multiple graphics pipelines, some may fail and an error will be returned. Some pipelines might still be built correctly, so we want to return the error and the pipelines. The current implementation discards all pipelines
This commit is contained in:
parent
a7af586e92
commit
495c617513
1 changed files with 3 additions and 3 deletions
|
@ -425,7 +425,7 @@ pub trait DeviceV1_0 {
|
|||
pipeline_cache: vk::PipelineCache,
|
||||
create_infos: &[vk::GraphicsPipelineCreateInfo],
|
||||
allocation_callbacks: Option<&vk::AllocationCallbacks>)
|
||||
-> VkResult<Vec<vk::Pipeline>> {
|
||||
-> (Vec<vk::Pipeline>, VkResult<()>) {
|
||||
let mut pipelines = Vec::with_capacity(create_infos.len());
|
||||
let err_code = self.fp_v1_0()
|
||||
.create_graphics_pipelines(self.handle(),
|
||||
|
@ -436,8 +436,8 @@ pub trait DeviceV1_0 {
|
|||
pipelines.as_mut_ptr());
|
||||
pipelines.set_len(create_infos.len());
|
||||
match err_code {
|
||||
vk::Result::Success => Ok(pipelines),
|
||||
_ => Err(err_code),
|
||||
vk::Result::Success => (pipelines, Ok(())),
|
||||
_ => (pipelines, Err(err_code)),
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue