pyglet.image.buffer
GL框架缓冲区抽象。
此模块提供用于处理Frame buffers和Renderbuffers及其附件的类。附件可以是pyglet Texture对象,可以轻松访问其数据、保存到磁盘等。如果您以后不需要访问其数据,则可以使用Renderbuffer。例如::
# Create two objects to use as attachments for our Framebuffer.
color_buffer = pyglet.image.Texture.create(width, height, min_filter=GL_NEAREST, mag_filter=GL_NEAREST)
depth_buffer = pyglet.image.buffer.Renderbuffer(width, height, GL_DEPTH_COMPONENT)
# Create a framebuffer object, and attach the two buffers:
framebuffer = pyglet.image.Framebuffer()
framebuffer.attach_texture(color_buffer, attachment=GL_COLOR_ATTACHMENT0)
framebuffer.attach_renderbuffer(depth_buffer, attachment=GL_DEPTH_ATTACHMENT)
# Bind the Framebuffer, which sets it as the active render target:
framebuffer.bind()
有关有效附件类型和目标的更多信息,请参阅GL文档。
- class Framebuffer
GL框架缓冲区对象。
Added in version 2.0.
- attach_renderbuffer(
- renderbuffer: Renderbuffer,
- target: int = 36160,
- attachment: int = 36064,
将渲染缓冲区附加到框架缓冲区。
- 参数:
renderbuffer (
Renderbuffer
) -- 指定要附加到由Attach命名的帧缓冲区附着点的渲染缓冲区。target (
int
) -- 指定帧缓冲区目标。目标必须是GL_DRAW_FRAMEBUFFER、GL_READ_FRAMEBUFFER或GL_FRAMEBUFFER。GL_FRAMEBUFFER等同于GL_DRAW_FRAMEBUFFER。attachment (
int
) -- 指定帧缓冲区的附着点。附件必须是GL_COLOR_ATTACHMENTI、GL_Depth_ATTACHATURE、GL_STEMSEL_ATTACHATURE或GL_Depth_STEMWLE_ATTACH。
- 返回类型:
- attach_texture_layer( ) None
将纹理层附加到框架缓冲区。
- 参数:
texture (
Texture
) -- 指定要附加到由Attach命名的帧缓冲区附着点的纹理对象。layer (
int
) -- 指定要附加的纹理层。level (
int
) -- 指定要附加的纹理的mipmap级别。target (
int
) -- 指定帧缓冲区目标。目标必须是GL_DRAW_FRAMEBUFFER、GL_READ_FRAMEBUFFER或GL_FRAMEBUFFER。GL_FRAMEBUFFER等同于GL_DRAW_FRAMEBUFFER。attachment (
int
) -- 指定帧缓冲区的附着点。附件必须是GL_COLOR_ATTACHMENTI、GL_Depth_ATTACHATURE、GL_STEMSEL_ATTACHATURE或GL_Depth_STEMWLE_ATTACH。
- 返回类型: