vispy.gloo.framebuffer module#
- class vispy.gloo.framebuffer.FrameBuffer(color=None, depth=None, stencil=None)#
Bases:
GLObject
Frame buffer object
- Parameters:
- colorRenderBuffer (optional)
The color buffer to attach to this frame buffer
- depthRenderBuffer (optional)
The depth buffer to attach to this frame buffer
- stencilRenderBuffer (optional)
The stencil buffer to attach to this frame buffer
- activate()#
Activate/use this frame buffer.
- property color_buffer#
Color buffer attachment
- deactivate()#
Stop using this frame buffer, the previous framebuffer will be made active.
- property depth_buffer#
Depth buffer attachment
- read(mode='color', alpha=True, crop=None)#
Return array of pixel values in an attached buffer
- Parameters:
- modestr
The buffer type to read. May be ‘color’, ‘depth’, or ‘stencil’.
- alphabool
If True, returns RGBA array. Otherwise, returns RGB.
- croparray-like
If not None, specifies pixels to read from buffer. Format is (x, y, w, h).
- Returns:
- bufferarray
3D array of pixels in np.uint8 format. The array shape is (h, w, 3) or (h, w, 4), with the top-left corner of the framebuffer at index [0, 0] in the returned array if crop was not specified. If crop was given, the result will match the offset and dimensions of the crop.
- resize(shape)#
Resize all attached buffers with the given shape
- Parameters:
- shapetuple of two integers
New buffer shape (h, w), to be applied to all currently attached buffers. For buffers that are a texture, the number of color channels is preserved.
- property shape#
The shape of the Texture/RenderBuffer attached to this FrameBuffer
- property stencil_buffer#
Stencil buffer attachment
- class vispy.gloo.framebuffer.RenderBuffer(shape=None, format=None, resizeable=True)#
Bases:
GLObject
Base class for render buffer object
A render buffer can be in color, depth or stencil format. If this format is not specified, it is set when attached to the FrameBuffer.
- Parameters:
- shapetuple
The shape of the render buffer.
- format{None, ‘color’, ‘depth’, ‘stencil’}
The format of the render buffer. See resize.
- resizeablebool
Indicates whether texture can be resized
- property format#
Render Buffer format
- resize(shape, format=None)#
Set the render-buffer size and format
- Parameters:
- shapetuple of integers
New shape in yx order. A render buffer is always 2D. For symmetry with the texture class, a 3-element tuple can also be given, in which case the last dimension is ignored.
- format{None, ‘color’, ‘depth’, ‘stencil’}
The buffer format. If None, the current format is maintained. If that is also None, the format will be set upon attaching it to a framebuffer. One can also specify the explicit enum: GL_RGB565, GL_RGBA4, GL_RGB5_A1, GL_DEPTH_COMPONENT16, or GL_STENCIL_INDEX8
- property shape#
Render Buffer shape