def setUpClass(cls): cls.ctx = get_context() prog = cls.ctx.program( vertex_shader=''' #version 330 in vec2 vert; out vec2 text; void main() { gl_Position = vec4(vert * 2.0 - 1.0, 0.0, 1.0); text = vert; } ''', fragment_shader=''' #version 330 uniform sampler2D Texture; in vec2 text; out vec4 color; void main() { color = texture(Texture, text); } ''', ) vbo = cls.ctx.buffer(struct.pack('8f', 0, 0, 0, 1, 1, 0, 1, 1)) cls.vao = cls.ctx.simple_vertex_array(prog, vbo, 'vert')
def setUpClass(cls): cls.ctx = get_context() cls.prog = cls.ctx.program( vertex_shader=''' #version 330 in vec2 in_v; out vec2 out_v; uniform Block1 { float x; }; uniform Block2 { float y; }; uniform Block3 { float z; }; void main() { out_v = in_v * z + vec2(x, y); } ''', varyings=['out_v'] )
def setUpClass(cls): cls.ctx = get_context() cls.vertex_shader = ''' #version 330 uniform mat4 Mvp; in vec4 vertex; uniform Block { mat4 Transform; }; void main() { gl_Position = Mvp * Transform * vertex; } ''' cls.geometry_shader = ''' #version 330 layout(points) in; uniform vec4 Position; layout(line_strip, max_vertices = 2) out; out vec4 color; void main() { gl_Position = gl_in[0].gl_Position + Position; EmitVertex(); gl_Position = gl_in[0].gl_Position - Position; EmitVertex(); EndPrimitive(); } ''' cls.fragment_shader = '''
def setUpClass(cls): cls.ctx = get_context() cls.vbo = cls.ctx.buffer(reserve=1024) cls.res = cls.ctx.buffer(reserve=1024) cls.vbo.clear() cls.shader = '''
def setUpClass(cls): cls.ctx = get_context() if 'llvmpipe' in cls.ctx.info['GL_RENDERER']: raise unittest.SkipTest('Temp disable for llvmpipe') cls.prog = cls.ctx.program(vertex_shader=''' #version 330 in vec2 in_v; out vec2 out_v; uniform Block1 { float x; }; uniform Block2 { float y; }; uniform Block3 { float z; }; void main() { out_v = in_v * z + vec2(x, y); } ''', varyings=['out_v'])
def setUpClass(cls): cls.ctx = get_context() cls.prog = cls.ctx.program( vertex_shader=''' #version 330 in int a_in; in int b_in; in int c_in; in int d_in; out int a_out; out int b_out; out int c_out; out int d_out; void main() { a_out = a_in * 2; b_out = b_in * 2; c_out = c_in * 2; d_out = d_in * 2; } ''', varyings=['a_out', 'b_out', 'c_out', 'd_out'] )
def setUpClass(cls): cls.ctx = get_context() cls.prog = cls.ctx.program( vertex_shader=''' #version 330 in int a_in; in int b_in; in int c_in; in int d_in; out int a_out; out int b_out; out int c_out; out int d_out; void main() { a_out = a_in * 2; b_out = b_in * 2; c_out = c_in * 2; d_out = d_in * 2; } ''', varyings=['a_out', 'b_out', 'c_out', 'd_out'])
def setUpClass(cls): cls.ctx = get_context() cls.prog = cls.ctx.program(vertex_shader=''' #version 330 in vec2 in_v1; in vec2 in_v2; out vec2 out_v; void main() { out_v = in_v1 + in_v2; } ''', varyings=['out_v'])
def setUpClass(cls): cls.ctx = get_context() cls.prog = cls.ctx.program(vertex_shader=''' #version 330 in mat2 in_m; in vec2 in_v; out vec2 out_v; uniform float mult; void main() { out_v = in_m * in_v * mult; } ''', varyings=['out_v'])
def setUpClass(cls): cls.ctx = get_context() cls.prog = cls.ctx.program( vertex_shader=''' #version 330 in mat2 in_m; in vec2 in_v; out vec2 out_v; uniform float mult; void main() { out_v = in_m * in_v * mult; } ''', varyings=['out_v'] )
def setUpClass(cls): cls.ctx = get_context() prog = cls.ctx.program( vertex_shader=''' #version 330 in float v_in_1; in float v_in_2; in float v_in_3; out float v_out; void main() { v_out = v_in_1 + v_in_2 + v_in_3; } ''', varyings=['v_out'] ) vbo1 = cls.ctx.buffer(struct.pack('4f', 1.0, 2.0, 3.0, 4.0)) vbo2 = cls.ctx.buffer(struct.pack('4f', 10.0, 20.0, 30.0, 40.0)) vbo3 = cls.ctx.buffer(struct.pack('4f', 100.0, 200.0, 300.0, 400.0)) vao1_content = [ (vbo1, 'f', 'v_in_1'), (vbo2, 'f/i', 'v_in_2'), ] cls.vao1 = cls.ctx.vertex_array(prog, vao1_content) vao2_content = [ (vbo1, 'f', 'v_in_1'), (vbo2, 'f/i', 'v_in_2'), (vbo3, 'f/r', 'v_in_3'), ] cls.vao2 = cls.ctx.vertex_array(prog, vao2_content) cls.res = cls.ctx.buffer(reserve=1024)
def setUpClass(cls): cls.ctx = get_context() prog = cls.ctx.program([ cls.ctx.vertex_shader(''' #version 330 in float v_in_1; in float v_in_2; in float v_in_3; out float v_out; void main() { v_out = v_in_1 + v_in_2 + v_in_3; } '''), ], varyings=['v_out']) vbo1 = cls.ctx.buffer(struct.pack('4f', 1.0, 2.0, 3.0, 4.0)) vbo2 = cls.ctx.buffer(struct.pack('4f', 10.0, 20.0, 30.0, 40.0)) vbo3 = cls.ctx.buffer(struct.pack('4f', 100.0, 200.0, 300.0, 400.0)) vao1_content = [ (vbo1, 'f', ['v_in_1']), (vbo2, 'f/i', ['v_in_2']), ] cls.vao1 = cls.ctx.vertex_array(prog, vao1_content) vao2_content = [ (vbo1, 'f', ['v_in_1']), (vbo2, 'f/i', ['v_in_2']), (vbo3, 'f/r', ['v_in_3']), ] cls.vao2 = cls.ctx.vertex_array(prog, vao2_content) cls.res = cls.ctx.buffer(reserve=1024)
def setUpClass(cls): """Set up program, vbo and fbo""" cls.ctx = get_context() cls.prog = cls.ctx.program( vertex_shader=''' #version 330 in vec2 in_vert; void main() { gl_Position = vec4(in_vert, 0.0, 1.0); } ''', fragment_shader=''' #version 330 out vec4 fragColor; uniform vec4 color; void main() { fragColor = color; } ''', ) quad = [ -1.0, 1.0, -1.0, -1.0, 1.0, 1.0, 1.0, -1.0, ] vbo = cls.ctx.buffer(np.array(quad, dtype='f4').tobytes()) cls.vao = cls.ctx.simple_vertex_array(cls.prog, vbo, 'in_vert') cls.fbo = cls.ctx.framebuffer(color_attachments=[ cls.ctx.texture((1, 1), 4, dtype='f4'), ])
def setUpClass(cls): raise unittest.SkipTest('') cls.ctx = get_context() if cls.ctx.vendor.startswith('Intel'): raise unittest.SkipTest('')
def setUpClass(cls): cls.ctx = get_context(require=430) if not cls.ctx: raise unittest.SkipTest('compute shaders not supported')
def setUpClass(cls): cls.ctx = get_context(require=410) if not cls.ctx: raise unittest.SkipTest('double types not supported')
def setUpClass(cls): cls.ctx = get_context()
def setUpClass(cls): cls.ctx = get_context() cls.max_samples = cls.ctx.info['GL_MAX_SAMPLES']
def setUpClass(cls): raise unittest.SkipTest('') cls.ctx = get_context()
def setUpClass(cls): cls.ctx = get_context() cls.vendor = cls.ctx.info['GL_VENDOR']
def setUpClass(cls): cls.ctx = get_context(require=400) if not cls.ctx: raise unittest.SkipTest("Subroutines not supported")
def setUpClass(cls): raise unittest.SkipTest('NYI') cls.ctx = get_context()
def setUpClass(cls): cls.ctx = get_context() if cls.ctx.vendor.startswith('Intel'): raise unittest.SkipTest('')
def setUpClass(cls): cls.ctx = get_context(require=330)