pub struct Context {
pub programs: Arc<RwLock<HashMap<Vec<u8>, Program>>>,
/* private fields */
}
Expand description
Contains the low-level OpenGL/WebGL graphics context as well as other “global” variables. Implements Deref with the low-level graphics context as target, so you can call low-level functionality directly on this struct. Use the context module to get access to low-level constants and structs.
Fields§
§programs: Arc<RwLock<HashMap<Vec<u8>, Program>>>
A cache of programs to avoid recompiling a Program every frame.
Implementations§
Source§impl Context
impl Context
Sourcepub fn from_gl_context(context: Arc<Context>) -> Result<Self, CoreError>
pub fn from_gl_context(context: Arc<Context>) -> Result<Self, CoreError>
Creates a new mid-level context, used in this core module, from a low-level OpenGL/WebGL context from the context module. This should only be called directly if you are creating a low-level context yourself (ie. not using the features in the window module). Since the content in the context module is just a re-export of glow, you can also call this method with a reference counter to a glow context created using glow and not the re-export in context.
Sourcepub fn set_scissor(&self, scissor_box: ScissorBox)
pub fn set_scissor(&self, scissor_box: ScissorBox)
Set the scissor test for this context (see ScissorBox).
Sourcepub fn set_viewport(&self, viewport: Viewport)
pub fn set_viewport(&self, viewport: Viewport)
Set the viewport for this context (See Viewport).
Sourcepub fn set_write_mask(&self, write_mask: WriteMask)
pub fn set_write_mask(&self, write_mask: WriteMask)
Set the write mask for this context (see WriteMask).
Sourcepub fn set_depth_test(&self, depth_test: DepthTest)
pub fn set_depth_test(&self, depth_test: DepthTest)
Set the depth test for this context (see DepthTest).
Sourcepub fn set_render_states(&self, render_states: RenderStates)
pub fn set_render_states(&self, render_states: RenderStates)
Set the render states for this context (see RenderStates).
Sourcepub fn error_check(&self) -> Result<(), CoreError>
pub fn error_check(&self) -> Result<(), CoreError>
Returns an error if an GPU-side error has happened while rendering which can be used to check for errors while developing. Can also be used in production to handle unexpected rendering errors, but do not call it too often to avoid performance problems.