Framebuffers

Context.framebuffer(color_attachments, depth_attachment=None) → Framebuffer

A Framebuffer is a collection of buffers that can be used as the destination for rendering. The buffers for Framebuffer objects reference images from either Textures or Renderbuffers.

Parameters:
  • color_attachments (list) – A list of Texture or Renderbuffer objects.
  • depth_attachment (Renderbuffer or Texture) – A Texture or Renderbuffer object.
Returns:

framebuffer

Return type:

Framebuffer

class Framebuffer

A Framebuffer is a collection of buffers that can be used as the destination for rendering. The buffers for Framebuffer objects reference images from either Textures or Renderbuffers.

Create a Framebuffer using Context.framebuffer().

clear(red=0.0, green=0.0, blue=0.0, alpha=0.0, viewport=None)

Clear the framebuffer.

Values must be in (0, 255) range. If the viewport is not None then scrissor test will be used to clear the given viewport.

If the viewport is a 2-tuple it will clear the (0, 0, width, height) where (width, height) is the 2-tuple.

If the viewport is a 4-tuple it will clear the given viewport.

Parameters:
  • red (float) – color component.
  • green (float) – color component.
  • blue (float) – color component.
  • alpha (float) – alpha component.
Keyword Arguments:
 

viewport (tuple) – The viewport.

use()

Bind the framebuffer. Set the target for the VertexArray.render or VertexArray.transform methods.

read(viewport=None, components=3, attachment=0, alignment=1, floats=False) → bytes

Read the content of the framebuffer.

Parameters:
  • viewport (tuple) – The viewport.
  • components (int) – The number of components to read.
Keyword Arguments:
 
  • attachment (int) – The color attachment.
  • alignment (int) – The byte alignment of the pixels.
  • floats (bool) – The precision of the pixels.
Returns:

the pixels

Return type:

bytes

read_into(buffer, viewport=None, components=3, attachment=0, alignment=1, floats=False, write_offset=0)

Read the content of the framebuffer into a buffer.

Parameters:
  • buffer (bytearray) – The buffer that will receive the pixels.
  • viewport (tuple) – The viewport.
  • components (int) – The number of components to read.
Keyword Arguments:
 
  • attachment (int) – The color attachment.
  • alignment (int) – The byte alignment of the pixels.
  • floats (bool) – The precision of the pixels.
  • write_offset (int) – The write offset.
viewport

tuple – The viewport of the framebuffer.

color_mask

tuple – The color mask of the framebuffer.

depth_mask

tuple – The depth mask of the framebuffer.

width

int – The width of the framebuffer.

height

int – The height of the framebuffer.

size

tuple – The size of the framebuffer.

samples

int – The samples of the framebuffer.

bits

dict – The bits of the framebuffer.

color_attachments

tuple – The color attachments of the framebuffer.

depth_attachment

Renderbuffer – The depth attachment of the framebuffer.