RenderBackend

Trait RenderBackend 

Source
pub trait RenderBackend {
Show 30 methods // Required methods fn new_buffer( &mut self, data: BufferData, source: BufferSource<'_>, ) -> RawBufferID; fn buffer_update(&mut self, dest: RawBufferID, source: &BufferSource<'_>); fn delete_buffer(&mut self, id: RawBufferID); fn new_texture(&mut self, data: &TextureData) -> RawTextureID; fn texture_update(&mut self, dest: RawTextureID, data: &TextureData); fn texture_set_mag_filter(&mut self, id: RawTextureID, filter: FilterMode); fn texture_set_wrap( &mut self, id: RawTextureID, wrap: (TextureWrap, TextureWrap), ); fn texture_generate_mipmaps(&mut self, id: RawTextureID); fn texture_read_pixels( &mut self, id: RawTextureID, dest: &mut TextureSource, ); fn texture_update_portion( &mut self, id: RawTextureID, rect: Rect2P, source: &TextureSource, ); fn delete_texture(&mut self, id: RawTextureID); fn new_render_pass( &mut self, texture: RawTextureID, depth: Option<RawTextureID>, ) -> RawRenderPassID; fn delete_render_pass(&mut self, id: RawRenderPassID); fn new_pipeline(&mut self, data: &PipelineData) -> RawPipelineID; fn apply_pipeline(&mut self, pipeline: RawPipelineID); fn delete_pipeline(&mut self, pipeline: RawPipelineID); fn new_shader( &mut self, data: &ShaderData, ) -> Result<RawShaderID, ShaderError>; fn delete_shader(&mut self, program: RawShaderID); fn apply_viewport(&mut self, viewport: Rect2P); fn apply_scissor(&mut self, scissor: Rect2P); fn apply_bindings_view(&mut self, binding: BindingsView<'_>); fn apply_uniforms_from_bytes(&mut self, uniform_ptr: &[u8]); fn clear(&mut self, data: ClearData); fn begin_default_pass(&mut self, action: PassAction); fn begin_pass(&mut self, pass: Option<RawRenderPassID>, action: PassAction); fn end_render_pass(&mut self); fn end_frame(&mut self); fn draw( &mut self, base_element: usize, num_elements: usize, num_instances: usize, ); // Provided methods fn apply_bindings(&mut self, binding: &Bindings) { ... } fn apply_uniforms(&mut self, uniforms: UniformsSource<'_>) { ... }
}

Required Methods§

Source

fn new_buffer( &mut self, data: BufferData, source: BufferSource<'_>, ) -> RawBufferID

Source

fn buffer_update(&mut self, dest: RawBufferID, source: &BufferSource<'_>)

Source

fn delete_buffer(&mut self, id: RawBufferID)

Source

fn new_texture(&mut self, data: &TextureData) -> RawTextureID

Source

fn texture_update(&mut self, dest: RawTextureID, data: &TextureData)

Source

fn texture_set_mag_filter(&mut self, id: RawTextureID, filter: FilterMode)

Source

fn texture_set_wrap( &mut self, id: RawTextureID, wrap: (TextureWrap, TextureWrap), )

Source

fn texture_generate_mipmaps(&mut self, id: RawTextureID)

Source

fn texture_read_pixels(&mut self, id: RawTextureID, dest: &mut TextureSource)

Source

fn texture_update_portion( &mut self, id: RawTextureID, rect: Rect2P, source: &TextureSource, )

Source

fn delete_texture(&mut self, id: RawTextureID)

Source

fn new_render_pass( &mut self, texture: RawTextureID, depth: Option<RawTextureID>, ) -> RawRenderPassID

Source

fn delete_render_pass(&mut self, id: RawRenderPassID)

Source

fn new_pipeline(&mut self, data: &PipelineData) -> RawPipelineID

Source

fn apply_pipeline(&mut self, pipeline: RawPipelineID)

Source

fn delete_pipeline(&mut self, pipeline: RawPipelineID)

Source

fn new_shader(&mut self, data: &ShaderData) -> Result<RawShaderID, ShaderError>

Source

fn delete_shader(&mut self, program: RawShaderID)

Source

fn apply_viewport(&mut self, viewport: Rect2P)

Source

fn apply_scissor(&mut self, scissor: Rect2P)

Source

fn apply_bindings_view(&mut self, binding: BindingsView<'_>)

Source

fn apply_uniforms_from_bytes(&mut self, uniform_ptr: &[u8])

Source

fn clear(&mut self, data: ClearData)

Source

fn begin_default_pass(&mut self, action: PassAction)

Source

fn begin_pass(&mut self, pass: Option<RawRenderPassID>, action: PassAction)

Source

fn end_render_pass(&mut self)

Source

fn end_frame(&mut self)

Source

fn draw( &mut self, base_element: usize, num_elements: usize, num_instances: usize, )

Provided Methods§

Source

fn apply_bindings(&mut self, binding: &Bindings)

Source

fn apply_uniforms(&mut self, uniforms: UniformsSource<'_>)

Implementations on Foreign Types§

Source§

impl RenderBackend for ()

Source§

fn new_buffer(&mut self, _: BufferData, _: BufferSource<'_>) -> RawBufferID

Source§

fn buffer_update(&mut self, _: RawBufferID, _: &BufferSource<'_>)

Source§

fn delete_buffer(&mut self, _id: RawBufferID)

Source§

fn new_texture(&mut self, _: &TextureData) -> RawTextureID

Source§

fn texture_update(&mut self, _: RawTextureID, _: &TextureData)

Source§

fn texture_set_mag_filter(&mut self, _: RawTextureID, _: FilterMode)

Source§

fn texture_set_wrap(&mut self, _: RawTextureID, _: (TextureWrap, TextureWrap))

Source§

fn texture_generate_mipmaps(&mut self, _: RawTextureID)

Source§

fn texture_read_pixels(&mut self, _: RawTextureID, _: &mut TextureSource)

Source§

fn texture_update_portion( &mut self, _: RawTextureID, _: Rect2P, _: &TextureSource, )

Source§

fn delete_texture(&mut self, _: RawTextureID)

Source§

fn new_render_pass( &mut self, _: RawTextureID, _: Option<RawTextureID>, ) -> RawRenderPassID

Source§

fn delete_render_pass(&mut self, _: RawRenderPassID)

Source§

fn new_pipeline(&mut self, _: &PipelineData) -> RawPipelineID

Source§

fn apply_pipeline(&mut self, _: RawPipelineID)

Source§

fn delete_pipeline(&mut self, _: RawPipelineID)

Source§

fn new_shader(&mut self, _: &ShaderData) -> Result<RawShaderID, ShaderError>

Source§

fn delete_shader(&mut self, _: RawShaderID)

Source§

fn apply_viewport(&mut self, _: Rect2P)

Source§

fn apply_scissor(&mut self, _: Rect2P)

Source§

fn apply_bindings_view(&mut self, _: BindingsView<'_>)

Source§

fn apply_uniforms_from_bytes(&mut self, _: &[u8])

Source§

fn clear(&mut self, _: ClearData)

Source§

fn begin_default_pass(&mut self, _: PassAction)

Source§

fn begin_pass(&mut self, _: Option<RawRenderPassID>, _: PassAction)

Source§

fn end_render_pass(&mut self)

Source§

fn end_frame(&mut self)

Source§

fn draw(&mut self, _: usize, _: usize, _: usize)

Implementors§