gl-texture2d-read-float
Read out the contents of a floating-point gl-texture2d.
This will eventually be supported natively in WebGL (it's listed in the OpenGL ES 3 spec), but this fills that need until then!
Usage
read(glTex2d, done(err, data))
Reads out the contents of glTex2d
, which should be an instance of
gl-texture2d
. When complete, done(err, data)
will be called where data
is
a Float32Array
containing the resulting floats in the texture.
const canvas = documentconst gl = canvasconst read =const Texture2d =const baboon =const assert =const texture =
A few things to note:
- Right now, this is slow as it requires reading data back from the GPU. There's not much that can be done about this for the time being unfortunately.
- The data is retrieved synchronously under the hood, but the API has been made
asynchronous in preparation for WebGL's eventual async
readPixels
equivalent. - Only
gl.RGBA
/gl.FLOAT
textures are currently supported. Pull requests are, however, very welcome! :)
Contributing
See stackgl/contributing for details.
License
MIT. See LICENSE.md for details.