Mercurial > touhou
annotate pytouhou/lib/opengl.pxd @ 587:6c9d8a3d853f
Use ARB_framebuffer_blit instead of a second rendering pass for scaled rendering, if supported, and remove framebuffer stuff from the Renderer.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Wed, 08 Oct 2014 18:34:27 +0200 |
parents | 4b0593da29d5 |
children | 19d930f9e3f0 |
rev | line source |
---|---|
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
1 # -*- encoding: utf-8 -*- |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
2 ## |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
3 ## Copyright (C) 2013 Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
4 ## |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
5 ## This program is free software; you can redistribute it and/or modify |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
6 ## it under the terms of the GNU General Public License as published |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
7 ## by the Free Software Foundation; version 3 only. |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
8 ## |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
9 ## This program is distributed in the hope that it will be useful, |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
10 ## but WITHOUT ANY WARRANTY; without even the implied warranty of |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
11 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
12 ## GNU General Public License for more details. |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
13 ## |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
14 |
450
2a352118c55a
Add back Windows support, using GLEW for OpenGL.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
426
diff
changeset
|
15 |
555
98380e4a0ee5
Switch to libepoxy instead of libGLEW, which will help with OpenGL portability.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
519
diff
changeset
|
16 cdef extern from 'epoxy/gl.h' nogil: |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
17 ctypedef unsigned int GLuint |
519
b18f0bd30ad0
Optimise background rendering.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
518
diff
changeset
|
18 ctypedef unsigned short GLushort |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
19 ctypedef int GLint |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
20 ctypedef float GLfloat |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
21 ctypedef char GLboolean |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
22 ctypedef char GLchar |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
23 ctypedef unsigned int GLsizei |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
24 ctypedef unsigned int GLsizeiptr |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
25 ctypedef unsigned int GLbitfield |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
26 ctypedef void GLvoid |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
27 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
28 ctypedef enum GLenum_blendfunc 'GLenum': |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
29 GL_SRC_ALPHA |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
30 GL_ONE_MINUS_SRC_ALPHA |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
31 GL_ONE |
462
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
32 GL_ZERO |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
33 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
34 ctypedef enum GLenum_type 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
35 GL_UNSIGNED_BYTE |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
36 GL_UNSIGNED_SHORT |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
37 GL_SHORT |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
38 GL_FLOAT |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
39 GL_UNSIGNED_SHORT_5_6_5 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
40 GL_UNSIGNED_SHORT_4_4_4_4 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
41 GL_UNSIGNED_SHORT_4_4_4_4_REV |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
42 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
43 ctypedef enum GLenum_format 'GLenum': |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
44 GL_BGRA |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
45 GL_RGBA |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
46 GL_RGB |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
47 GL_LUMINANCE |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
48 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
49 ctypedef enum GLenum_bitfield 'GLenum': |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
50 GL_COLOR_BUFFER_BIT |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
51 GL_DEPTH_BUFFER_BIT |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
52 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
53 ctypedef GLenum GLenum_textarget |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
54 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
55 ctypedef enum GLenum_texparam 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
56 GL_TEXTURE_MIN_FILTER |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
57 GL_TEXTURE_MAG_FILTER |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
58 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
59 ctypedef enum GLenum_client_state 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
60 GL_COLOR_ARRAY |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
61 GL_VERTEX_ARRAY |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
62 GL_TEXTURE_COORD_ARRAY |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
63 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
64 ctypedef enum GLenum_matrix 'GLenum': |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
65 GL_MODELVIEW |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
66 GL_PROJECTION |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
67 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
68 ctypedef enum GLenum_fog 'GLenum': |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
69 GL_FOG_MODE |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
70 GL_FOG_START |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
71 GL_FOG_END |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
72 GL_FOG_COLOR |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
73 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
74 ctypedef enum GLenum_hint 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
75 GL_FOG_HINT |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
76 GL_PERSPECTIVE_CORRECTION_HINT |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
77 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
78 ctypedef enum GLenum_quality 'GLenum': |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
79 GL_NICEST |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
80 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
81 ctypedef enum GLenum_mode 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
82 GL_TRIANGLES |
585
e0166cda75d5
Use primitive-restart to lower the size of our ibo, if supported.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
584
diff
changeset
|
83 GL_TRIANGLE_STRIP |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
84 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
85 ctypedef enum GLenum_buffer 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
86 GL_ARRAY_BUFFER |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
87 GL_ELEMENT_ARRAY_BUFFER |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
88 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
89 ctypedef enum GLenum_usage 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
90 GL_STATIC_DRAW |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
91 GL_DYNAMIC_DRAW |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
92 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
93 ctypedef enum GLenum_shader 'GLenum': |
424
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
94 GL_VERTEX_SHADER |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
95 GL_FRAGMENT_SHADER |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
96 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
97 ctypedef enum GLenum_shader_param 'GLenum': |
424
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
98 GL_INFO_LOG_LENGTH |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
99 GL_COMPILE_STATUS |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
100 GL_LINK_STATUS |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
101 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
102 ctypedef enum GLenum_framebuffer 'GLenum': |
462
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
103 GL_FRAMEBUFFER |
587
6c9d8a3d853f
Use ARB_framebuffer_blit instead of a second rendering pass for scaled rendering, if supported, and remove framebuffer stuff from the Renderer.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
586
diff
changeset
|
104 GL_DRAW_FRAMEBUFFER |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
105 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
106 ctypedef enum GLenum_renderbuffer 'GLenum': |
462
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
107 GL_RENDERBUFFER |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
108 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
109 ctypedef enum GLenum_renderbuffer_format 'GLenum': |
559
1be60813f7cb
Get OpenGL ES 2.0 to work thanks to libepoxy. PCB textures will need swizzle in the shaders since BGRA isn’t natively supported on GLES.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
558
diff
changeset
|
110 GL_DEPTH_COMPONENT16 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
111 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
112 ctypedef enum GLenum_attachment 'GLenum': |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
113 GL_COLOR_ATTACHMENT0 |
462
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
114 GL_DEPTH_ATTACHMENT |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
115 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
116 ctypedef enum GLenum_framebuffer_status 'GLenum': |
462
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
117 GL_FRAMEBUFFER_COMPLETE |
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
118 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
119 ctypedef enum GLenum_debug 'GLenum': |
579
b8df946d394d
Add grouping for OpenGL calls, making traces much more readable.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
559
diff
changeset
|
120 GL_DEBUG_SOURCE_APPLICATION |
b8df946d394d
Add grouping for OpenGL calls, making traces much more readable.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
559
diff
changeset
|
121 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
122 ctypedef enum GLenum: |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
123 GL_BLEND |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
124 GL_TEXTURE_2D |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
125 GL_DEPTH_TEST |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
126 GL_LINEAR |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
127 GL_SCISSOR_TEST |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
128 GL_FOG |
585
e0166cda75d5
Use primitive-restart to lower the size of our ibo, if supported.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
584
diff
changeset
|
129 GL_PRIMITIVE_RESTART |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
130 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
131 void glVertexPointer(GLint size, GLenum_type type_, GLsizei stride, GLvoid *pointer) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
132 void glTexCoordPointer(GLint size, GLenum_type type_, GLsizei stride, GLvoid *pointer) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
133 void glColorPointer(GLint size, GLenum_type type_, GLsizei stride, GLvoid *pointer) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
134 |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
135 void glBlendFunc(GLenum_blendfunc sfactor, GLenum_blendfunc dfactor) |
586
4b0593da29d5
Simplify framebuffer rendering with glDrawArrays, and move it all to its own file.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
585
diff
changeset
|
136 void glDrawArrays(GLenum_mode mode, GLint first, GLsizei count) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
137 void glDrawElements(GLenum_mode mode, GLsizei count, GLenum_type type_, const GLvoid *indices) |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
138 void glEnable(GLenum cap) |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
139 void glDisable(GLenum cap) |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
140 |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
141 void glGenTextures(GLsizei n, GLuint *textures) |
426
5d7bb2fd74f7
Never keep texture on the host when it has been uploaded, and prevent them from being decoded again.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
424
diff
changeset
|
142 void glDeleteTextures(GLsizei n, const GLuint *textures) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
143 void glBindTexture(GLenum_textarget target, GLuint texture) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
144 void glTexParameteri(GLenum_textarget target, GLenum_texparam pname, GLint param) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
145 void glTexImage2D(GLenum_textarget target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum_format format_, GLenum_type type_, const GLvoid *data) |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
146 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
147 void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
148 void glClear(GLbitfield mask) |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
149 void glViewport(GLint x, GLint y, GLsizei width, GLsizei height) |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
150 void glScissor(GLint x, GLint y, GLsizei width, GLsizei height) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
151 void glMatrixMode(GLenum_matrix mode) |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
152 void glLoadIdentity() |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
153 void glLoadMatrixf(const GLfloat * m) |
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
154 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
155 void glFogi(GLenum_fog pname, GLint param) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
156 void glFogf(GLenum_fog pname, GLfloat param) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
157 void glFogfv(GLenum_fog pname, const GLfloat * params) |
423
d8630c086926
Replace Pyglet with our own Cython OpenGL wrapper.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
diff
changeset
|
158 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
159 void glHint(GLenum_hint target, GLenum_quality mode) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
160 void glEnableClientState(GLenum_client_state cap) |
424
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
161 |
555
98380e4a0ee5
Switch to libepoxy instead of libGLEW, which will help with OpenGL portability.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
519
diff
changeset
|
162 # Here start non-1.x declarations. |
491
2276229282fd
Fix gcc’s warnings with -Wall -Wextra.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
462
diff
changeset
|
163 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
164 void glVertexAttribPointer(GLuint index, GLint size, GLenum_type type_, GLboolean normalized, GLsizei stride, const GLvoid *pointer) |
491
2276229282fd
Fix gcc’s warnings with -Wall -Wextra.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
462
diff
changeset
|
165 void glEnableVertexAttribArray(GLuint index) |
2276229282fd
Fix gcc’s warnings with -Wall -Wextra.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
462
diff
changeset
|
166 |
2276229282fd
Fix gcc’s warnings with -Wall -Wextra.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
462
diff
changeset
|
167 void glGenBuffers(GLsizei n, GLuint * buffers) |
2276229282fd
Fix gcc’s warnings with -Wall -Wextra.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
462
diff
changeset
|
168 void glDeleteBuffers(GLsizei n, const GLuint * buffers) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
169 void glBindBuffer(GLenum_buffer target, GLuint buffer_) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
170 void glBufferData(GLenum_buffer target, GLsizeiptr size, const GLvoid *data, GLenum_usage usage) |
491
2276229282fd
Fix gcc’s warnings with -Wall -Wextra.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
462
diff
changeset
|
171 |
424
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
172 GLuint glCreateProgram() |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
173 GLuint glCreateShader(GLenum_shader shaderType) |
424
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
174 void glLinkProgram(GLuint program) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
175 void glUseProgram(GLuint program) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
176 void glGetProgramiv(GLuint program, GLenum_shader_param pname, GLint *params) |
424
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
177 void glGetProgramInfoLog(GLuint program, GLsizei maxLength, GLsizei *length, GLchar *infoLog) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
178 |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
179 void glShaderSource(GLuint shader, GLsizei count, const GLchar **string, const GLint *length) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
180 void glCompileShader(GLuint shader) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
181 void glGetShaderiv(GLuint shader, GLenum_shader_param pname, GLint *params) |
424
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
182 void glGetShaderInfoLog(GLuint shader, GLsizei maxLength, GLsizei *length, GLchar *infoLog) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
183 void glAttachShader(GLuint program, GLuint shader) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
184 |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
185 GLint glGetUniformLocation(GLuint program, const GLchar *name) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
186 void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
187 void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
188 void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) |
f4d76d3d6f2a
Make the Shader class use cython too.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
423
diff
changeset
|
189 void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) |
462
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
190 |
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
191 void glGenFramebuffers(GLsizei n, GLuint *ids) |
586
4b0593da29d5
Simplify framebuffer rendering with glDrawArrays, and move it all to its own file.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
585
diff
changeset
|
192 void glDeleteFramebuffers(GLsizei n, GLuint *ids) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
193 void glBindFramebuffer(GLenum_framebuffer target, GLuint framebuffer) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
194 void glFramebufferTexture2D(GLenum_framebuffer target, GLenum_attachment attachment, GLenum_textarget textarget, GLuint texture, GLint level) |
586
4b0593da29d5
Simplify framebuffer rendering with glDrawArrays, and move it all to its own file.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
585
diff
changeset
|
195 |
462
a71b912b45b7
Render to framebuffers first, and reposition some interface elements in the game area.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
450
diff
changeset
|
196 void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers) |
586
4b0593da29d5
Simplify framebuffer rendering with glDrawArrays, and move it all to its own file.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
585
diff
changeset
|
197 void glDeleteRenderbuffers(GLsizei n, GLuint *renderbuffers) |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
198 void glBindRenderbuffer(GLenum_renderbuffer target, GLuint renderbuffer) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
199 void glRenderbufferStorage(GLenum_renderbuffer target, GLenum_renderbuffer_format internalformat, GLsizei width, GLsizei height) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
200 void glFramebufferRenderbuffer(GLenum_framebuffer target, GLenum_attachment attachment, GLenum_renderbuffer renderbuffertarget, GLuint renderbuffer) |
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
201 GLenum_framebuffer_status glCheckFramebufferStatus(GLenum_framebuffer target) |
587
6c9d8a3d853f
Use ARB_framebuffer_blit instead of a second rendering pass for scaled rendering, if supported, and remove framebuffer stuff from the Renderer.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
586
diff
changeset
|
202 void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter_) |
558
94725968dabb
Use vertex array objects, to be compatible with OpenGL 3.1+ core profile.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
203 |
94725968dabb
Use vertex array objects, to be compatible with OpenGL 3.1+ core profile.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
204 void glGenVertexArrays(GLsizei n, GLuint *arrays) |
94725968dabb
Use vertex array objects, to be compatible with OpenGL 3.1+ core profile.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
205 void glDeleteVertexArrays(GLsizei n, const GLuint *arrays) |
94725968dabb
Use vertex array objects, to be compatible with OpenGL 3.1+ core profile.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
555
diff
changeset
|
206 void glBindVertexArray(GLuint array) |
579
b8df946d394d
Add grouping for OpenGL calls, making traces much more readable.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
559
diff
changeset
|
207 |
585
e0166cda75d5
Use primitive-restart to lower the size of our ibo, if supported.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
584
diff
changeset
|
208 void glPrimitiveRestartIndex(GLuint index) |
e0166cda75d5
Use primitive-restart to lower the size of our ibo, if supported.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
584
diff
changeset
|
209 |
579
b8df946d394d
Add grouping for OpenGL calls, making traces much more readable.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
559
diff
changeset
|
210 # Debug |
b8df946d394d
Add grouping for OpenGL calls, making traces much more readable.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
559
diff
changeset
|
211 |
584
538b52aafbca
Split GLenum into subtypes, in order to add type safety when calling OpenGL functions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
583
diff
changeset
|
212 void glPushDebugGroup(GLenum_debug source, GLuint id_, GLsizei length, const char *message) |
579
b8df946d394d
Add grouping for OpenGL calls, making traces much more readable.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
559
diff
changeset
|
213 void glPopDebugGroup() |
583
47cf4e3d159d
Use libepoxy to discover the actual GL version we are using, and available extensions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
579
diff
changeset
|
214 |
47cf4e3d159d
Use libepoxy to discover the actual GL version we are using, and available extensions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
579
diff
changeset
|
215 # Non-OpenGL libepoxy functions. |
47cf4e3d159d
Use libepoxy to discover the actual GL version we are using, and available extensions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
579
diff
changeset
|
216 |
47cf4e3d159d
Use libepoxy to discover the actual GL version we are using, and available extensions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
579
diff
changeset
|
217 int epoxy_gl_version() |
47cf4e3d159d
Use libepoxy to discover the actual GL version we are using, and available extensions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
579
diff
changeset
|
218 bint epoxy_has_gl_extension(const char *extension) |
47cf4e3d159d
Use libepoxy to discover the actual GL version we are using, and available extensions.
Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
parents:
579
diff
changeset
|
219 bint epoxy_is_desktop_gl() |