Exemple #1
0
    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']
        )
Exemple #7
0
    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 = '''
Exemple #8
0
    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()

        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')
Exemple #10
0
    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'])
Exemple #11
0
    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)
Exemple #16
0
    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')
Exemple #19
0
 def setUpClass(cls):
     cls.ctx = get_context(require=410)
     if not cls.ctx:
         raise unittest.SkipTest('double types not supported')
Exemple #20
0
 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()
Exemple #23
0
 def setUpClass(cls):
     cls.ctx = get_context()
     cls.max_samples = cls.ctx.info['GL_MAX_SAMPLES']
Exemple #24
0
 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('')
Exemple #28
0
 def setUpClass(cls):
     cls.ctx = get_context()
 def setUpClass(cls):
     cls.ctx = get_context(require=330)