Struct awsm_web::webgl::WebGlRenderer
source · pub struct WebGlRenderer<T: WebGlCommon> {
pub gl: T,
pub canvas: HtmlCanvasElement,
pub version: WebGlVersion,
pub hardcoded_attribute_locations: FxHashMap<String, AttributeLocation>,
pub hardcoded_ubo_locations: FxHashMap<String, BufferLocation>,
/* private fields */
}
Fields§
§gl: T
§canvas: HtmlCanvasElement
§version: WebGlVersion
§hardcoded_attribute_locations: FxHashMap<String, AttributeLocation>
§hardcoded_ubo_locations: FxHashMap<String, BufferLocation>
Implementations§
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn cache_attribute_name( &mut self, program_id: Id, name: &str ) -> Result<(u32, bool), Error>
pub fn get_attribute_location_name( &mut self, name: &str ) -> Result<AttributeLocation, Error>
pub fn activate_attribute_loc( &self, target_loc: AttributeLocation, opts: &AttributeOptions )
pub fn activate_attribute_name( &mut self, target_name: &str, opts: &AttributeOptions ) -> Result<(), Error>
pub fn activate_buffer_for_attribute_name( &mut self, buffer_id: Id, buffer_target: BufferTarget, attribute_name: &str, opts: &AttributeOptions ) -> Result<(), Error>
pub fn activate_buffer_for_attribute_loc( &self, buffer_id: Id, buffer_target: BufferTarget, attribute_loc: AttributeLocation, opts: &AttributeOptions ) -> Result<(), Error>
pub fn upload_buffer_to_attribute_name<B: BufferDataImpl>( &mut self, id: Id, data: B, attribute_name: &str, opts: &AttributeOptions ) -> Result<(), Error>
pub fn upload_buffer_to_attribute_loc<B: BufferDataImpl>( &self, id: Id, data: B, attribute_loc: AttributeLocation, opts: &AttributeOptions ) -> Result<(), Error>
source§impl<T: WebGlCommon + 'static> WebGlRenderer<T>
impl<T: WebGlCommon + 'static> WebGlRenderer<T>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn create_buffer(&mut self) -> Result<Id, Error>
pub fn delete_buffer(&self, buffer_id: Id) -> Result<(), Error>
pub fn bind_buffer( &self, buffer_id: Id, target: BufferTarget ) -> Result<(), Error>
pub fn release_buffer(&self, target: BufferTarget)
pub fn upload_buffer<B: BufferDataImpl>( &self, id: Id, data: B ) -> Result<(), Error>
pub fn upload_buffer_sub<B: BufferSubDataImpl>( &self, id: Id, dest_byte_offset: u32, data: B ) -> Result<(), Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn bind_buffer_base( &self, buffer_id: Id, index: u32, target: BufferTarget ) -> Result<(), Error>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
source§impl WebGlRenderer<WebGlRenderingContext>
impl WebGlRenderer<WebGlRenderingContext>
pub fn draw_buffers(&self, target_buffers: &[DrawBuffer]) -> Result<(), Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn draw_buffers(&self, target_buffers: &[DrawBuffer]) -> Result<(), Error>
pub fn clear_draw_buffer_vf32_values( &self, buffer: Buffer, draw_buffer_index: usize, values: &[f32] )
pub fn reset_color_draw_buffer_vf32(&self, draw_buffer_index: usize)
pub fn clear_draw_buffer_vi32_values( &self, buffer: Buffer, draw_buffer_index: usize, values: &[i32] )
pub fn reset_color_draw_buffer_vi32(&self, draw_buffer_index: usize)
pub fn clear_draw_buffer_vu32_values( &self, buffer: Buffer, draw_buffer_index: usize, values: &[u32] )
pub fn reset_color_draw_buffer_vu32(&self, draw_buffer_index: usize)
pub fn clear_draw_buffer_fi( &self, buffer: Buffer, draw_buffer_index: usize, depth: f32, stencil: i32 )
pub fn clear_draw_buffer_depth_stencil_values(&self, depth: f32, stencil: i32)
pub fn reset_depth_stencil_draw_buffer(&self)
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
source§impl WebGlRenderer<WebGlRenderingContext>
impl WebGlRenderer<WebGlRenderingContext>
pub fn register_extension_instanced_arrays( &mut self ) -> Result<&AngleInstancedArrays, Error>
pub fn get_extension_instanced_arrays( &self ) -> Result<&AngleInstancedArrays, Error>
pub fn register_extension_vertex_array( &mut self ) -> Result<&OesVertexArrayObject, Error>
pub fn get_extension_vertex_array(&self) -> Result<&OesVertexArrayObject, Error>
pub fn register_extension_draw_buffers( &mut self ) -> Result<&WebglDrawBuffers, Error>
pub fn get_extension_draw_buffers(&self) -> Result<&WebglDrawBuffers, Error>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn set_depth_func(&mut self, func: CmpFunction)
pub fn set_blend_color(&mut self, r: f32, g: f32, b: f32, a: f32)
pub fn set_blend_func(&mut self, sfactor: BlendFactor, dfactor: BlendFactor)
pub fn set_blend_func_separate( &mut self, src_rgb: BlendFactor, dest_rgb: BlendFactor, src_alpha: BlendFactor, dest_alpha: BlendFactor )
pub fn set_blend_equation(&mut self, mode: BlendEquation)
pub fn set_blend_equation_separate( &mut self, rgb_mode: BlendEquation, alpha_mode: BlendEquation )
source§impl WebGlRenderer<WebGlRenderingContext>
impl WebGlRenderer<WebGlRenderingContext>
pub fn vertex_attrib_divisor(&self, loc: u32, divisor: u32) -> Result<(), Error>
pub fn draw_arrays_instanced( &self, mode: BeginMode, first: u32, count: u32, primcount: u32 ) -> Result<(), Error>
pub fn draw_elements_instanced( &self, mode: BeginMode, count: u32, data_type: DataType, offset: u32, primcount: u32 ) -> Result<(), Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn vertex_attrib_divisor(&self, loc: u32, divisor: u32) -> Result<(), Error>
pub fn draw_arrays_instanced( &self, mode: BeginMode, first: u32, count: u32, primcount: u32 ) -> Result<(), Error>
pub fn draw_elements_instanced( &self, mode: BeginMode, count: u32, data_type: DataType, offset: u32, primcount: u32 ) -> Result<(), Error>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn set_depth_mask(&mut self, flag: bool)
pub fn set_clear_color(&mut self, r: f32, g: f32, b: f32, a: f32)
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn create_query(&self) -> Result<WebGlQuery, Error>
pub fn begin_query(&self, kind: GlQueryKind, query: &WebGlQuery)
pub fn end_query(&self, kind: GlQueryKind)
pub fn delete_query(&self, query: WebGlQuery)
pub fn current_query(&self, kind: GlQueryKind) -> Option<WebGlQuery>
pub fn query_available(&self, query: &WebGlQuery) -> Result<bool, Error>
pub fn query_result(&self, query: &WebGlQuery) -> Result<u32, Error>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn activate_program(&mut self, program_id: Id) -> Result<(), Error>
pub fn compile_shader( &mut self, source: &str, source_type: ShaderType ) -> Result<Id, Error>
source§impl<G: WebGlCommon> WebGlRenderer<G>
impl<G: WebGlCommon> WebGlRenderer<G>
pub fn create_texture(&mut self) -> Result<Id, Error>
pub fn delete_texture(&mut self, id: Id) -> Result<(), Error>
pub fn release_texture_target(&mut self, bind_target: TextureTarget)
pub fn get_texture_sampler_names( &self, program_id: Id ) -> Result<Vec<String>, Error>
pub fn cache_sampler_index_name( &mut self, program_id: Id, name: &str ) -> Result<u32, Error>
pub fn get_sampler_index_name(&mut self, name: &str) -> Result<u32, Error>
pub fn get_texture(&self, texture_id: Id) -> Result<&WebGlTexture, Error>
pub fn assign_simple_texture( &mut self, texture_id: Id, bind_target: TextureTarget, opts: &SimpleTextureOptions, src: &WebGlTextureSource<'_> ) -> Result<(), Error>
pub fn assign_simple_texture_mips( &mut self, texture_id: Id, bind_target: TextureTarget, opts: &SimpleTextureOptions, srcs: &[&WebGlTextureSource<'_>] ) -> Result<(), Error>
pub fn assign_texture( &mut self, texture_id: Id, bind_target: TextureTarget, opts: &TextureOptions, set_parameters: Option<impl Fn(&G)>, src: &WebGlTextureSource<'_> ) -> Result<(), Error>
pub fn assign_texture_mips( &mut self, texture_id: Id, bind_target: TextureTarget, opts: &TextureOptions, set_parameters: Option<impl Fn(&G)>, srcs: &[&WebGlTextureSource<'_>] ) -> Result<(), Error>
pub fn activate_texture_sampler_name( &mut self, texture_id: Id, sampler_name: &str ) -> Result<(), Error>
pub fn activate_texture_sampler_index( &mut self, texture_id: Id, sampler_loc: WebGlUniformLocation, sampler_index: u32 ) -> Result<(), Error>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn get_uniform_buffer_offsets( &self, program_id: Id ) -> Result<Vec<(String, UniformIndex, BlockOffset)>, Error>
pub fn get_uniform_buffer_offset( &self, program_id: Id, uniform_index: u32 ) -> Result<u32, Error>
pub fn cache_uniform_buffer_location( &mut self, program_id: Id, name: &str ) -> Result<(BufferLocation, bool), Error>
pub fn cache_uniform_buffer_block_index( &mut self, program_id: Id, name: &str ) -> Result<(BlockIndex, bool), Error>
pub fn cache_uniform_buffer_block_field_offset_name( &mut self, program_id: Id, block_name: &str, field_name: &str, field_offset: FieldOffset ) -> Result<(BlockOffset, bool), Error>
pub fn get_uniform_buffer_location_name( &mut self, program_id: Id, name: &str ) -> Result<BufferLocation, Error>
pub fn get_uniform_buffer_block_index_name( &mut self, program_id: Id, name: &str ) -> Result<BlockIndex, Error>
pub fn get_uniform_buffer_block_field_offset_name( &mut self, program_id: Id, block_name: &str, field_name: &str ) -> Result<BlockOffset, Error>
pub fn get_uniform_buffer_block_field_offset( &mut self, program_id: Id, block_name: &str, field_offset: FieldOffset ) -> Result<BlockOffset, Error>
pub fn init_uniform_buffer_name( &mut self, program_id: Id, name: &str ) -> Result<(), Error>
pub fn init_uniform_buffer_loc( &mut self, program_id: Id, block_index: BlockIndex, location: BufferLocation ) -> Result<(), Error>
pub fn activate_uniform_buffer_loc(&mut self, id: Id, location: BufferLocation)
pub fn activate_uniform_buffer_name( &mut self, id: Id, name: &str ) -> Result<(), Error>
sourcepub fn upload_uniform_buffer<B: BufferDataImpl>(
&mut self,
id: Id,
buffer_data: B
) -> Result<(), Error>
pub fn upload_uniform_buffer<B: BufferDataImpl>( &mut self, id: Id, buffer_data: B ) -> Result<(), Error>
upload buffer data
sourcepub fn upload_sub_uniform_buffer<B: BufferSubDataImpl>(
&mut self,
block_offset: BlockOffset,
id: Id,
buffer_data: B
) -> Result<(), Error>
pub fn upload_sub_uniform_buffer<B: BufferSubDataImpl>( &mut self, block_offset: BlockOffset, id: Id, buffer_data: B ) -> Result<(), Error>
upload buffer data from sub slice
sourcepub fn upload_uniform_buffer_f32(
&mut self,
id: Id,
values: &[f32],
buffer_usage: BufferUsage
) -> Result<(), Error>
pub fn upload_uniform_buffer_f32( &mut self, id: Id, values: &[f32], buffer_usage: BufferUsage ) -> Result<(), Error>
convenience function
sourcepub fn upload_uniform_buffer_u8_loc(
&mut self,
id: Id,
values: &[u8],
buffer_usage: BufferUsage
) -> Result<(), Error>
pub fn upload_uniform_buffer_u8_loc( &mut self, id: Id, values: &[u8], buffer_usage: BufferUsage ) -> Result<(), Error>
convenience function
pub fn upload_sub_uniform_buffer_f32( &mut self, block_offset: BlockOffset, id: Id, values: &[f32] ) -> Result<(), Error>
pub fn upload_sub_uniform_buffer_u8( &mut self, block_offset: BlockOffset, id: Id, values: &[u8] ) -> Result<(), Error>
source§impl<G: WebGlCommon> WebGlRenderer<G>
impl<G: WebGlCommon> WebGlRenderer<G>
pub fn cache_uniform_name( &mut self, program_id: Id, name: &str ) -> Result<(WebGlUniformLocation, bool), Error>
pub fn get_uniform_location_name( &mut self, name: &str ) -> Result<WebGlUniformLocation, Error>
pub fn upload_uniform_fvec_loc<T: AsRef<[f32]>>( &self, loc: &WebGlUniformLocation, _type: UniformType, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_name<T: AsRef<[f32]>>( &mut self, target_name: &str, _type: UniformType, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_loc<T: AsRef<[i32]>>( &self, loc: &WebGlUniformLocation, _type: UniformType, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_name<T: AsRef<[i32]>>( &mut self, target_name: &str, _type: UniformType, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_4_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_4_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_3_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_3_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_2_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_2_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_transposed_4_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_transposed_4_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_transposed_3_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_transposed_3_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_transposed_2_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_mat_transposed_2_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_4_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_4_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_3_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_3_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_2_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_2_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_1_loc<T: AsRef<[f32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvec_1_name<T: AsRef<[f32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_4_loc<T: AsRef<[i32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_4_name<T: AsRef<[i32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_3_loc<T: AsRef<[i32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_3_name<T: AsRef<[i32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_2_loc<T: AsRef<[i32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_2_name<T: AsRef<[i32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_1_loc<T: AsRef<[i32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_ivec_1_name<T: AsRef<[i32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_fvals_4_loc( &mut self, loc: &WebGlUniformLocation, data: (f32, f32, f32, f32) )
pub fn upload_uniform_fvals_4_name( &mut self, target_name: &str, data: (f32, f32, f32, f32) ) -> Result<(), Error>
pub fn upload_uniform_fvals_3_loc( &mut self, loc: &WebGlUniformLocation, data: (f32, f32, f32) )
pub fn upload_uniform_fvals_3_name( &mut self, target_name: &str, data: (f32, f32, f32) ) -> Result<(), Error>
pub fn upload_uniform_fvals_2_loc( &mut self, loc: &WebGlUniformLocation, data: (f32, f32) )
pub fn upload_uniform_fvals_2_name( &mut self, target_name: &str, data: (f32, f32) ) -> Result<(), Error>
pub fn upload_uniform_fval_loc(&mut self, loc: &WebGlUniformLocation, data: f32)
pub fn upload_uniform_fval_name( &mut self, target_name: &str, data: f32 ) -> Result<(), Error>
pub fn upload_uniform_ivals_4_loc( &mut self, loc: &WebGlUniformLocation, data: (i32, i32, i32, i32) )
pub fn upload_uniform_ivals_4_name( &mut self, target_name: &str, data: (i32, i32, i32, i32) ) -> Result<(), Error>
pub fn upload_uniform_ivals_3_loc( &mut self, loc: &WebGlUniformLocation, data: (i32, i32, i32) )
pub fn upload_uniform_ivals_3_name( &mut self, target_name: &str, data: (i32, i32, i32) ) -> Result<(), Error>
pub fn upload_uniform_ivals_2_loc( &mut self, loc: &WebGlUniformLocation, data: (i32, i32) )
pub fn upload_uniform_ivals_2_name( &mut self, target_name: &str, data: (i32, i32) ) -> Result<(), Error>
pub fn upload_uniform_ival_loc(&mut self, loc: &WebGlUniformLocation, data: i32)
pub fn upload_uniform_ival_name( &mut self, target_name: &str, data: i32 ) -> Result<(), Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn get_uniform_index_name( &self, program_id: Id, name: &str ) -> Result<u32, Error>
pub fn upload_uniform_uvec_loc<T: AsRef<[u32]>>( &mut self, loc: &WebGlUniformLocation, _type: UniformType, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_name<T: AsRef<[u32]>>( &mut self, target_name: &str, _type: UniformType, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_4_loc<T: AsRef<[u32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_4_name<T: AsRef<[u32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_3_loc<T: AsRef<[u32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_3_name<T: AsRef<[u32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_2_loc<T: AsRef<[u32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_2_name<T: AsRef<[u32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_1_loc<T: AsRef<[u32]>>( &mut self, loc: &WebGlUniformLocation, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvec_1_name<T: AsRef<[u32]>>( &mut self, target_name: &str, data: &T ) -> Result<(), Error>
pub fn upload_uniform_uvals_4_loc( &mut self, loc: &WebGlUniformLocation, data: (u32, u32, u32, u32) )
pub fn upload_uniform_uvals_4_name( &mut self, target_name: &str, data: (u32, u32, u32, u32) ) -> Result<(), Error>
pub fn upload_uniform_uvals_3_loc( &mut self, loc: &WebGlUniformLocation, data: (u32, u32, u32) )
pub fn upload_uniform_uvals_3_name( &mut self, target_name: &str, data: (u32, u32, u32) ) -> Result<(), Error>
pub fn upload_uniform_uvals_2_loc( &mut self, loc: &WebGlUniformLocation, data: (u32, u32) )
pub fn upload_uniform_uvals_2_name( &mut self, target_name: &str, data: (u32, u32) ) -> Result<(), Error>
pub fn upload_uniform_uval_loc(&mut self, loc: &WebGlUniformLocation, data: u32)
pub fn upload_uniform_uval_name( &mut self, target_name: &str, data: u32 ) -> Result<(), Error>
source§impl WebGlRenderer<WebGlRenderingContext>
impl WebGlRenderer<WebGlRenderingContext>
pub fn release_vertex_array(&self) -> Result<(), Error>
pub fn activate_vertex_array(&self, vao_id: Id) -> Result<(), Error>
pub fn assign_vertex_array( &mut self, vao_id: Id, element_buffer_id: Option<Id>, configs: &[VertexArray<'_>] ) -> Result<(), Error>
pub fn create_vertex_array(&mut self) -> Result<Id, Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn release_vertex_array(&self) -> Result<(), Error>
pub fn activate_vertex_array(&self, vao_id: Id) -> Result<(), Error>
pub fn assign_vertex_array( &mut self, vao_id: Id, element_buffer_id: Option<Id>, configs: &[VertexArray<'_>] ) -> Result<(), Error>
pub fn create_vertex_array(&mut self) -> Result<Id, Error>
pub fn delete_vertex_array(&self, vao_id: Id) -> Result<(), Error>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn resize(&mut self, strategy: ResizeStrategy) -> bool
pub fn get_viewport(&self) -> (u32, u32, u32, u32)
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn create_framebuffer(&mut self) -> Result<Id, Error>
pub fn delete_framebuffer(&mut self, id: Id) -> Result<(), Error>
pub fn release_framebuffer(&self, target: FrameBufferTarget)
pub fn bind_framebuffer( &self, framebuffer_id: Id, target: FrameBufferTarget ) -> Result<(), Error>
pub fn assign_framebuffer_texture_2d( &mut self, framebuffer_id: Id, texture_id: Id, target: FrameBufferTarget, attachment: FrameBufferAttachment, texture_target: FrameBufferTextureTarget ) -> Result<(), Error>
pub fn assign_framebuffer_renderbuffer( &self, framebuffer_id: Id, renderbuffer_id: Id, target: FrameBufferTarget, attachment: FrameBufferAttachment ) -> Result<(), Error>
pub fn check_framebuffer_status( &self, target: FrameBufferTarget ) -> Result<(), Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn blit_framebuffer( &self, src_x0: u32, src_y0: u32, src_x1: u32, src_y1: u32, dst_x0: u32, dst_y0: u32, dst_x1: u32, dst_y1: u32, mask: BufferMask, filter: BlitFilter )
pub fn framebuffer_texture_layer( &mut self, target: FrameBufferTarget, attachment: FrameBufferAttachment, texture_id: Id, mipmap_level: u32, layer: u32 ) -> Result<(), Error>
pub fn invalidate_framebuffer( &self, target: FrameBufferTarget, attachments: &[FrameBufferAttachment] ) -> Result<(), Error>
pub fn invalidate_sub_framebuffer( &self, target: FrameBufferTarget, attachments: &[FrameBufferAttachment], x: u32, y: u32, width: usize, height: usize ) -> Result<(), Error>
pub fn read_buffer(&self, src: ReadBuffer)
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn create_renderbuffer(&mut self) -> Result<Id, Error>
pub fn get_renderbuffer( &self, renderbuffer_id: Id ) -> Result<&WebGlRenderbuffer, Error>
pub fn delete_renderbuffer(&mut self, id: Id) -> Result<(), Error>
pub fn release_renderbuffer(&self)
pub fn bind_renderbuffer(&self, renderbuffer_id: Id) -> Result<(), Error>
pub fn assign_renderbuffer_storage( &self, renderbuffer_id: Id, format: RenderBufferFormat, width: u32, height: u32 ) -> Result<(), Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn assign_renderbuffer_storage_multisample( &self, renderbuffer_id: Id, samples: u32, format: RenderBufferFormat, width: u32, height: u32 ) -> Result<(), Error>
pub fn assign_renderbuffer_storage_multisample_max( &self, renderbuffer_id: Id, format: RenderBufferFormat, width: u32, height: u32 ) -> Result<(), Error>
source§impl<T: WebGlCommon> WebGlRenderer<T>
impl<T: WebGlCommon> WebGlRenderer<T>
pub fn read_pixels_u8( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, data: &mut [u8] ) -> Result<(), Error>
pub fn read_pixels_u8_typed( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, data: &mut [u8] ) -> Result<(), Error>
pub fn read_pixels_u16( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, data: &mut [u16] ) -> Result<(), Error>
pub fn read_pixels_f32( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, data: &mut [f32] ) -> Result<(), Error>
source§impl WebGlRenderer<WebGl2RenderingContext>
impl WebGlRenderer<WebGl2RenderingContext>
pub fn read_pixels_u8_offset( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, offset: usize, data: &mut [u8] ) -> Result<(), Error>
pub fn read_pixels_u8_typed_offset( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, offset: usize, data: &mut [u8] ) -> Result<(), Error>
pub fn read_pixels_u16_offset( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, offset: usize, data: &mut [u16] ) -> Result<(), Error>
pub fn read_pixels_f32_offset( &self, x: u32, y: u32, width: u32, height: u32, format: ReadPixelFormat, data_type: ReadPixelDataType, offset: usize, data: &mut [f32] ) -> Result<(), Error>
Auto Trait Implementations§
impl<T> !Freeze for WebGlRenderer<T>
impl<T> !RefUnwindSafe for WebGlRenderer<T>
impl<T> !Send for WebGlRenderer<T>
impl<T> !Sync for WebGlRenderer<T>
impl<T> Unpin for WebGlRenderer<T>where
T: Unpin,
impl<T> UnwindSafe for WebGlRenderer<T>where
T: UnwindSafe,
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