Package Exports
- gl-reset
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (gl-reset) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
gl-reset
Completely reset the state of a WebGL context, deleting any allocated resources.
Resetting is slow and instrumentation introduces a very slight overhead on creating new resources. However, this is useful:
- If you want to safely recycle a WebGL context without state leaking between renders.
- To capture and remove any generated resources during a render.
There's a limit on the number of contexts you can have running simultaneously on a page, and (at least on Chrome) when hitting the threshold you simply lose the least recently created one. To work around this limit, you can instead reset and reuse a single WebGL context between multiple renders.
Usage
reset = require('gl-reset')(gl)
Returns a function that, when called, will remove any existing resources and reset the current WebGL state.
Note: this function must be created before creating any resources, as it instruments several WebGL methods to do its thing.
var reset = require('gl-reset')(gl)
function render() {
// Triggers a context reset
reset()
}
require('gl-reset/state')(gl)
Resets the state, without instrumenting the context and without removing any allocated resources.
License
MIT. See LICENSE.md for details.