Query
- class moderngl.Query
Create
- Context.query(*, samples: bool = False, any_samples: bool = False, time: bool = False, primitives: bool = False) Query
Attributes
- Query.samples
- Query.primitives
- Query.elapsed
- Query.crender
- Query.extra
- Query.mglo
- Query.ctx
Examples
Simple query example
1import moderngl
2import numpy as np
3
4ctx = moderngl.create_standalone_context()
5prog = ctx.program(
6 vertex_shader='''
7 #version 330
8
9 in vec2 in_vert;
10
11 void main() {
12 gl_Position = vec4(in_vert, 0.0, 1.0);
13 }
14 ''',
15 fragment_shader='''
16 #version 330
17
18 out vec4 color;
19
20 void main() {
21 color = vec4(1.0, 0.0, 0.0, 1.0);
22 }
23 ''',
24)
25
26vertices = np.array([
27 0.0, 0.0,
28 1.0, 0.0,
29 0.0, 1.0,
30], dtype='f4')
31
32vbo = ctx.buffer(vertices.tobytes())
33vao = ctx.simple_vertex_array(prog, vbo, 'in_vert')
34
35fbo = ctx.simple_framebuffer((64, 64))
36fbo.use()
37
38query = ctx.query(samples=True, time=True)
39
40with query:
41 vao.render()
42
43print('It took %d nanoseconds' % query.elapsed)
44print('to render %d samples' % query.samples)
Output
It took 13529 nanoseconds
to render 496 samples