Trait gfx_core::command::Buffer
[−]
[src]
pub trait Buffer<R: Resources>: Send { fn reset(&mut self); fn bind_pipeline_state(&mut self, _: R::PipelineStateObject); fn bind_vertex_buffers(&mut self, _: VertexBufferSet<R>); fn bind_constant_buffers(&mut self, _: &[ConstantBufferParam<R>]); fn bind_global_constant(&mut self, _: Location, _: UniformValue); fn bind_resource_views(&mut self, _: &[ResourceViewParam<R>]); fn bind_unordered_views(&mut self, _: &[UnorderedViewParam<R>]); fn bind_samplers(&mut self, _: &[SamplerParam<R>]); fn bind_pixel_targets(&mut self, _: PixelTargetSet<R>); fn bind_index(&mut self, _: R::Buffer, _: IndexType); fn set_scissor(&mut self, _: Rect); fn set_ref_values(&mut self, _: RefValues); fn copy_buffer(
&mut self,
src: R::Buffer,
dst: R::Buffer,
src_offset_bytes: usize,
dst_offset_bytes: usize,
size_bytes: usize
); fn copy_buffer_to_texture(
&mut self,
src: R::Buffer,
src_offset_bytes: usize,
dst: R::Texture,
_: Kind,
_: Option<CubeFace>,
_: RawImageInfo
); fn copy_texture_to_buffer(
&mut self,
src: R::Texture,
_: Kind,
_: Option<CubeFace>,
_: RawImageInfo,
dst: R::Buffer,
dst_offset_bytes: usize
); fn update_buffer(&mut self, _: R::Buffer, data: &[u8], offset: usize); fn update_texture(
&mut self,
_: R::Texture,
_: Kind,
_: Option<CubeFace>,
data: &[u8],
_: RawImageInfo
); fn generate_mipmap(&mut self, _: R::ShaderResourceView); fn clear_color(&mut self, _: R::RenderTargetView, _: ClearColor); fn clear_depth_stencil(
&mut self,
_: R::DepthStencilView,
_: Option<Depth>,
_: Option<Stencil>
); fn call_draw(
&mut self,
_: VertexCount,
_: VertexCount,
_: Option<InstanceParams>
); fn call_draw_indexed(
&mut self,
_: VertexCount,
_: VertexCount,
_: VertexCount,
_: Option<InstanceParams>
); }
An interface of the abstract command buffer. It collects commands in an efficient API-specific manner, to be ready for execution on the device.
Required Methods
fn reset(&mut self)
Reset the command buffer contents, retain the allocated storage
fn bind_pipeline_state(&mut self, _: R::PipelineStateObject)
Bind a pipeline state object
fn bind_vertex_buffers(&mut self, _: VertexBufferSet<R>)
Bind a complete set of vertex buffers
fn bind_constant_buffers(&mut self, _: &[ConstantBufferParam<R>])
Bind a complete set of constant buffers
fn bind_global_constant(&mut self, _: Location, _: UniformValue)
Bind a global constant
fn bind_resource_views(&mut self, _: &[ResourceViewParam<R>])
Bind a complete set of shader resource views
fn bind_unordered_views(&mut self, _: &[UnorderedViewParam<R>])
Bind a complete set of unordered access views
fn bind_samplers(&mut self, _: &[SamplerParam<R>])
Bind a complete set of samplers
fn bind_pixel_targets(&mut self, _: PixelTargetSet<R>)
Bind a complete set of pixel targets, including multiple colors views and an optional depth/stencil view.
fn bind_index(&mut self, _: R::Buffer, _: IndexType)
Bind an index buffer
fn set_scissor(&mut self, _: Rect)
Set scissor rectangle
fn set_ref_values(&mut self, _: RefValues)
Set reference values for the blending and stencil front/back
fn copy_buffer(
&mut self,
src: R::Buffer,
dst: R::Buffer,
src_offset_bytes: usize,
dst_offset_bytes: usize,
size_bytes: usize
)
&mut self,
src: R::Buffer,
dst: R::Buffer,
src_offset_bytes: usize,
dst_offset_bytes: usize,
size_bytes: usize
)
Copy part of a buffer to another
fn copy_buffer_to_texture(
&mut self,
src: R::Buffer,
src_offset_bytes: usize,
dst: R::Texture,
_: Kind,
_: Option<CubeFace>,
_: RawImageInfo
)
&mut self,
src: R::Buffer,
src_offset_bytes: usize,
dst: R::Texture,
_: Kind,
_: Option<CubeFace>,
_: RawImageInfo
)
Copy part of a buffer to a texture
fn copy_texture_to_buffer(
&mut self,
src: R::Texture,
_: Kind,
_: Option<CubeFace>,
_: RawImageInfo,
dst: R::Buffer,
dst_offset_bytes: usize
)
&mut self,
src: R::Texture,
_: Kind,
_: Option<CubeFace>,
_: RawImageInfo,
dst: R::Buffer,
dst_offset_bytes: usize
)
Copy part of a texture to a buffer
fn update_buffer(&mut self, _: R::Buffer, data: &[u8], offset: usize)
Update a vertex/index/uniform buffer
fn update_texture(
&mut self,
_: R::Texture,
_: Kind,
_: Option<CubeFace>,
data: &[u8],
_: RawImageInfo
)
&mut self,
_: R::Texture,
_: Kind,
_: Option<CubeFace>,
data: &[u8],
_: RawImageInfo
)
Update a texture
fn generate_mipmap(&mut self, _: R::ShaderResourceView)
fn clear_color(&mut self, _: R::RenderTargetView, _: ClearColor)
Clear color target
fn clear_depth_stencil(
&mut self,
_: R::DepthStencilView,
_: Option<Depth>,
_: Option<Stencil>
)
&mut self,
_: R::DepthStencilView,
_: Option<Depth>,
_: Option<Stencil>
)
fn call_draw(
&mut self,
_: VertexCount,
_: VertexCount,
_: Option<InstanceParams>
)
&mut self,
_: VertexCount,
_: VertexCount,
_: Option<InstanceParams>
)
Draw a primitive
fn call_draw_indexed(
&mut self,
_: VertexCount,
_: VertexCount,
_: VertexCount,
_: Option<InstanceParams>
)
&mut self,
_: VertexCount,
_: VertexCount,
_: VertexCount,
_: Option<InstanceParams>
)
Draw a primitive with index buffer
Implementors
impl Buffer<DummyResources> for DummyCommandBuffer