pub trait CustomPipeline {
// Required methods
fn needs_preparing(&self) -> bool;
fn prepare(
&mut self,
device: &Device,
queue: &Queue,
screen_size: PhysicalSizeI32,
scale_factor: ScaleFactor,
primitives: &[QueuedCustomPrimitive],
) -> Result<(), Box<dyn Error>>;
fn render_primitives<'pass>(
&'pass self,
primitives: &[QueuedCustomPrimitive],
render_pass: &mut RenderPass<'pass>,
) -> Result<(), Box<dyn Error>>;
}