pub enum Command<RenderBackend: Backend> {
BeginRecording,
SetViewports {
start_at: u32,
viewports: Vec<ViewPort>,
},
SetScissors {
start_at: u32,
viewports: Vec<ViewPort>,
},
BeginRenderPass {
render_pass: Rc<RenderPass<RenderBackend>>,
surface: Rc<Surface<RenderBackend>>,
frame_buffer: Rc<Framebuffer<RenderBackend>>,
viewport: ViewPort,
},
EndRenderPass,
AttachGraphicsPipeline {
pipeline: Rc<RenderPipeline<RenderBackend>>,
},
Draw {
vertices: Range<u32>,
},
PushConstants {
pipeline: Rc<RenderPipeline<RenderBackend>>,
stage: PipelineStage,
offset: u32,
bytes: Vec<u32>,
},
BindVertexBuffer {
buffer: Rc<Buffer<RenderBackend>>,
},
EndRecording,
}
Expand description
Enumeration for issuing commands to a CommandBuffer allocated on the GPU. The enumerations are evaluated upon being issued to an active command buffer and correspond to lower level function calls.
Variants§
BeginRecording
Begins recording commands to the GPU. A primary command buffer can only issue this command once.
SetViewports
SetScissors
BeginRenderPass
EndRenderPass
Ends a currently active render pass.
AttachGraphicsPipeline
Fields
§
pipeline: Rc<RenderPipeline<RenderBackend>>
Draw
PushConstants
BindVertexBuffer
EndRecording
Auto Trait Implementations§
impl<RenderBackend> Freeze for Command<RenderBackend>
impl<RenderBackend> RefUnwindSafe for Command<RenderBackend>where
<RenderBackend as Backend>::RenderPass: RefUnwindSafe,
<RenderBackend as Backend>::Surface: RefUnwindSafe,
<RenderBackend as Backend>::Framebuffer: RefUnwindSafe,
<RenderBackend as Backend>::PipelineLayout: RefUnwindSafe,
<RenderBackend as Backend>::GraphicsPipeline: RefUnwindSafe,
<RenderBackend as Backend>::Buffer: RefUnwindSafe,
<RenderBackend as Backend>::Memory: RefUnwindSafe,
<<RenderBackend as Backend>::Surface as PresentationSurface<RenderBackend>>::SwapchainImage: RefUnwindSafe,
impl<RenderBackend> !Send for Command<RenderBackend>
impl<RenderBackend> !Sync for Command<RenderBackend>
impl<RenderBackend> Unpin for Command<RenderBackend>
impl<RenderBackend> UnwindSafe for Command<RenderBackend>where
<RenderBackend as Backend>::RenderPass: RefUnwindSafe,
<RenderBackend as Backend>::Surface: RefUnwindSafe,
<RenderBackend as Backend>::Framebuffer: RefUnwindSafe,
<RenderBackend as Backend>::PipelineLayout: RefUnwindSafe,
<RenderBackend as Backend>::GraphicsPipeline: RefUnwindSafe,
<RenderBackend as Backend>::Buffer: RefUnwindSafe,
<RenderBackend as Backend>::Memory: RefUnwindSafe,
<<RenderBackend as Backend>::Surface as PresentationSurface<RenderBackend>>::SwapchainImage: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more