pub trait CommandEncoder<D: Device>: Sized {
type RenderPass<'e>: RenderPassEncoder<D>
where Self: 'e;
type ComputePass<'e>: ComputePassEncoder<D>
where Self: 'e;
// Required methods
fn begin_render_pass<'e>(
&'e mut self,
desc: &RenderPassDesc<'_, D>,
) -> Self::RenderPass<'e>;
fn begin_compute_pass<'e>(
&'e mut self,
desc: &ComputePassDesc<'_, D>,
) -> Self::ComputePass<'e>;
fn copy_buffer_to_buffer(
&mut self,
src: &D::Buffer,
src_offset: u64,
dst: &D::Buffer,
dst_offset: u64,
size: u64,
);
fn copy_texture_to_buffer(
&mut self,
src: &D::Texture,
origin: (u32, u32),
size: (u32, u32),
bytes_per_row: u32,
destination_offset: u64,
dst: &D::Buffer,
);
fn resolve_query_set(
&mut self,
queries: &D::QuerySet,
range: Range<u32>,
dst: &D::Buffer,
offset: u64,
);
// Provided methods
fn build_blas(
&mut self,
_desc: &BlasBuildDesc<'_, D>,
) -> Result<(), GpuError> { ... }
fn build_tlas(&mut self, _tlas: &D::Tlas) -> Result<(), GpuError> { ... }
}Expand description
Records passes and copies into one submission.
Required Associated Types§
Sourcetype RenderPass<'e>: RenderPassEncoder<D>
where
Self: 'e
type RenderPass<'e>: RenderPassEncoder<D> where Self: 'e
The recording handle of an open render pass.
Sourcetype ComputePass<'e>: ComputePassEncoder<D>
where
Self: 'e
type ComputePass<'e>: ComputePassEncoder<D> where Self: 'e
The recording handle of an open compute pass.
Required Methods§
Sourcefn begin_render_pass<'e>(
&'e mut self,
desc: &RenderPassDesc<'_, D>,
) -> Self::RenderPass<'e>
fn begin_render_pass<'e>( &'e mut self, desc: &RenderPassDesc<'_, D>, ) -> Self::RenderPass<'e>
Begins a render pass over the given attachments.
Sourcefn begin_compute_pass<'e>(
&'e mut self,
desc: &ComputePassDesc<'_, D>,
) -> Self::ComputePass<'e>
fn begin_compute_pass<'e>( &'e mut self, desc: &ComputePassDesc<'_, D>, ) -> Self::ComputePass<'e>
Begins a compute pass.
Sourcefn copy_buffer_to_buffer(
&mut self,
src: &D::Buffer,
src_offset: u64,
dst: &D::Buffer,
dst_offset: u64,
size: u64,
)
fn copy_buffer_to_buffer( &mut self, src: &D::Buffer, src_offset: u64, dst: &D::Buffer, dst_offset: u64, size: u64, )
GPU-to-GPU buffer copy; how indirect-argument templates reset per-frame counts without a host write.
Provided Methods§
Sourcefn build_blas(&mut self, _desc: &BlasBuildDesc<'_, D>) -> Result<(), GpuError>
fn build_blas(&mut self, _desc: &BlasBuildDesc<'_, D>) -> Result<(), GpuError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".