diff --git a/vulkano/src/pipeline/graphics_pipeline/builder.rs b/vulkano/src/pipeline/graphics_pipeline/builder.rs index ea5c34ce4..61cc773d5 100644 --- a/vulkano/src/pipeline/graphics_pipeline/builder.rs +++ b/vulkano/src/pipeline/graphics_pipeline/builder.rs @@ -769,35 +769,24 @@ impl Copy for - GraphicsPipelineBuilder<'a, Vdef, Vsp, Vi, Vo, Vl, Tcs, Tci, Tco, Tcl, Tes, Tei, Teo, - Tel, Gs, Gi, Go, Gl, Fs, Fi, Fo, Fl, Rp> - where Vdef: Copy, Rp: Copy -{ -} - -impl<'a, Vdef, Vsp, Vi, Vo, Vl, Tcs, Tci, Tco, Tcl, Tes, Tei, Teo, Tel, Gs, Gi, Go, Gl, Fs, Fi, - Fo, Fl, Rp> Clone for - GraphicsPipelineBuilder<'a, Vdef, Vsp, Vi, Vo, Vl, Tcs, Tci, Tco, Tcl, Tes, Tei, Teo, - Tel, Gs, Gi, Go, Gl, Fs, Fi, Fo, Fl, Rp> - where Vdef: Clone, Rp: Clone +impl Clone for + GraphicsPipelineBuilder + where Vdef: Clone, Vs: Clone, Tcs: Clone, Tes: Clone, Gs: Clone, Fs: Clone, Rp: Clone { fn clone(&self) -> Self { GraphicsPipelineBuilder { vertex_input: self.vertex_input.clone(), - vertex_shader: self.vertex_shader, - input_assembly: self.input_assembly, - tessellation: self.tessellation, - geometry_shader: self.geometry_shader, - viewport: self.viewport, - raster: self.raster, - multisample: self.multisample, - fragment_shader: self.fragment_shader, - depth_stencil: self.depth_stencil, - blend: self.blend, - render_pass: self.render_pass, + vertex_shader: self.vertex_shader.clone(), + input_assembly: self.input_assembly.clone(), + tessellation: self.tessellation.clone(), + geometry_shader: self.geometry_shader.clone(), + viewport: self.viewport.clone(), + raster: self.raster.clone(), + multisample: self.multisample.clone(), + fragment_shader: self.fragment_shader.clone(), + depth_stencil: self.depth_stencil.clone(), + blend: self.blend.clone(), + render_pass: self.render_pass.clone(), } } -}*/ +} diff --git a/vulkano/src/pipeline/graphics_pipeline/mod.rs b/vulkano/src/pipeline/graphics_pipeline/mod.rs index 2f2c3e528..2c44c5427 100644 --- a/vulkano/src/pipeline/graphics_pipeline/mod.rs +++ b/vulkano/src/pipeline/graphics_pipeline/mod.rs @@ -132,6 +132,7 @@ pub(crate) struct GraphicsPipelineParams< } /// Additional parameters if you use tessellation. +#[derive(Copy, Clone)] pub(crate) struct GraphicsPipelineParamsTess { /// The entry point of the tessellation control shader. pub tessellation_control_shader: Tcs, diff --git a/vulkano/src/pipeline/multisample.rs b/vulkano/src/pipeline/multisample.rs index d5cb4123a..50d876032 100644 --- a/vulkano/src/pipeline/multisample.rs +++ b/vulkano/src/pipeline/multisample.rs @@ -37,6 +37,7 @@ /// State of the multisampling. /// /// See the documentation in this module. +#[derive(Debug, Copy, Clone)] pub struct Multisample { pub rasterization_samples: u32, pub sample_mask: [u32; 4],