Ejemplo n.º 1
0
def _RenderFramebuffer(samplesToRender: int, attachmentToRender: int) -> None:
    global _acumVertexCount, _acumDrawsCount

    _postProcessVao.Bind()

    _postProcessShader.Use()
    _postProcessShader.SetUniform1i("uSamples", samplesToRender)

    GL.glBindTextureUnit(
        MULTISAMPLE_TEXTURE_SAMPLER
        if samplesToRender > 1 else NORMAL_TEXTURE_SAMPLER, attachmentToRender)

    GL.glDrawElementsInstanced(GL.GL_TRIANGLES, INDICES_PER_QUAD, _ibo.Type,
                               None, 1)

    renderStats.drawsCount += 1
    renderStats.vertexCount += VERTICES_PER_QUAD
    _ResetCounters()
Ejemplo n.º 2
0
 def bind(self, slot=0):
     # same as:
     # gl.glActiveTexture(gl.GL_TEXTURE0)
     # gl.glBindTexture(gl.GL_TEXTURE_2D, self.tex_handle)
     gl.glBindTextureUnit(slot, self.handle)
Ejemplo n.º 3
0
 def BindToUnit(self, slot) -> None:
     GL.glBindTextureUnit(slot, self._id)