Esempio n. 1
0
 def paintGL(self):
     context['mx'] += context['dmx']
     context['my'] += context['dmy']
     context['s'] += context['ds']
     GL.Clear(240, 240, 240)
     GL.SetUniform(context['center'], context['mx'], context['my'])
     GL.SetUniform(context['scale'], 0.5**context['s'])
     GL.RenderTriangleStrip(context['vao'], 4)
     self.update()
Esempio n. 2
0
    def paintGL(self):
        z = 0.5**context['s']
        context['mx'] += context['dmx'] * z
        context['my'] += context['dmy'] * z
        context['s'] += context['ds']
        GL.Clear(240, 240, 240)

        GL.SetUniform(context['pos'], context['mx'] / z, context['my'] / z)
        GL.SetUniform(context['zoom'], z)
        GL.RenderTriangleStrip(context['vao'], 4)
        self.update()
Esempio n. 3
0
	def paintGL(self):
		GL.Clear(240, 240, 240)
		GL.RenderTriangleStrip(context['vao'], 4)
Esempio n. 4
0
vao = GL.NewVertexArray(grass_prog, vbo, '3f3f3f1f1f',
                        ['vert', 'direction', 'color', 'thickness', 'power'],
                        ibo)

ssao_vbo = GL.NewVertexBuffer(
    struct.pack('8f', 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0))
ssao_vao = GL.NewVertexArray(ssao_prog, ssao_vbo, '2f', ['vert'])

ubo = GL.NewUniformBuffer(b''.join(struct.pack('2f', x, y) for x, y in kernel))

fbo, color, depth = GL.NewFramebuffer()

GL.SetUniform(grass_prog['mat'], struct.pack('16f', *camera))
GL.SetUniform(ssao_prog['texture'], 0)
GL.SetUniform(ssao_prog['depth'], 1)

GL.UseUniformBuffer(ubo, ssao_prog['Kernel'])

while WND.Update():
    GL.UseFramebuffer(fbo)
    GL.EnableDepthTest()
    GL.Clear(0, 0, 0)

    GL.RenderTriangleStrip(vao, 1000 * 8)

    GL.UseFramebuffer(GL.SCREEN)
    GL.DisableDepthTest()
    GL.UseTexture(color, 0)
    GL.UseTexture(depth, 1)
    GL.RenderTriangleStrip(ssao_vao, 4)
			z = v;
		}

		float cm = fract((i == iter ? 0.0 : float(i)) * 10 / iter);
		color = vec4(fract(cm + 0.0 / 3.0), fract(cm + 1.0 / 3.0), fract(cm + 2.0 / 3.0), 1.0);
	}
''')

prog = GL.NewProgram([vert, frag])

vbo = GL.NewVertexBuffer(
    struct.pack('8f', -1.0, -1.0, -1.0, 1.0, 1.0, -1.0, 1.0, 1.0))
vao = GL.NewVertexArray(prog, vbo, '2f', ['vert'])

GL.SetUniform(prog['iter'], 100)
GL.SetUniform(prog['scale'], 1.0)
GL.SetUniform(prog['center'], 0.3, 0.2)

x, y, scale = 0, 0, 1

while WND.Update():
    GL.Clear(240, 240, 240)
    mx, my, mw = WND.GetMouse()
    scale *= 1.1**(mw / 150)
    x += mx / 100
    y += my / 100

    GL.SetUniform(prog['center'], x, y)
    GL.SetUniform(prog['scale'], scale)
    GL.RenderTriangleStrip(vao, 4)
Esempio n. 6
0
GL.NewVertexShader()

GL.ReadPixel()
GL.ReadPixels()

GL.ReadDepthPixel()
GL.ReadDepthPixels()

GL.ReadStorageBuffer()

GL.RenderLineLoop()
GL.RenderLineStrip()
GL.RenderLines()
GL.RenderPoints()
GL.RenderTriangleFan()
GL.RenderTriangleStrip()
GL.RenderTriangles()

GL.RenderLinesAdjacency()
GL.RenderLineStripAdjacency()
GL.RenderTrianglesAdjacency()
GL.RenderTriangleStripAdjacency()

GL.SetTextureFiltered()
GL.SetTextureMipmapped()
GL.SetTexturePixelated()
GL.SetUniform()
GL.SetUniformMatrix()

# GL.UpdateIndexBuffer()
# GL.UpdateTexture()