Mercurial > touhou
comparison pytouhou/ui/opengl/renderer.pxd @ 627:ec972eb44391
Use a specific vbo/vao pair for text rendering.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Thu, 05 Mar 2015 20:36:41 +0100 |
parents | a6af3ff86612 |
children |
comparison
equal
deleted
inserted
replaced
626:13789ac717c4 | 627:ec972eb44391 |
---|---|
3 from .texture cimport TextureManager, FontManager | 3 from .texture cimport TextureManager, FontManager |
4 from .framebuffer cimport Framebuffer | 4 from .framebuffer cimport Framebuffer |
5 | 5 |
6 cdef struct Vertex: | 6 cdef struct Vertex: |
7 short x, y, z, padding | 7 short x, y, z, padding |
8 float u, v | |
9 unsigned char r, g, b, a | |
10 | |
11 | |
12 cdef struct TextVertex: | |
13 short x, y | |
8 float u, v | 14 float u, v |
9 unsigned char r, g, b, a | 15 unsigned char r, g, b, a |
10 | 16 |
11 | 17 |
12 cdef class Texture: | 18 cdef class Texture: |
24 cdef FontManager font_manager | 30 cdef FontManager font_manager |
25 cdef Vertex vertex_buffer[MAX_ELEMENTS] | 31 cdef Vertex vertex_buffer[MAX_ELEMENTS] |
26 cdef long x, y, width, height | 32 cdef long x, y, width, height |
27 | 33 |
28 # For modern GL. | 34 # For modern GL. |
29 cdef GLuint vbo | 35 cdef GLuint vbo, text_vbo |
30 cdef GLuint vao | 36 cdef GLuint vao, text_vao |
31 | 37 |
32 cdef GLuint textures[MAX_TEXTURES] | 38 cdef GLuint textures[MAX_TEXTURES] |
33 cdef unsigned short *indices[MAX_TEXTURES][2] | 39 cdef unsigned short *indices[MAX_TEXTURES][2] |
34 cdef unsigned short last_indices[2 * MAX_TEXTURES] | 40 cdef unsigned short last_indices[2 * MAX_TEXTURES] |
35 cdef PyObject *elements[640*3] | 41 cdef PyObject *elements[640*3] |
36 | 42 |
37 cdef void set_state(self) nogil | 43 cdef void set_state(self) nogil |
44 cdef void set_text_state(self) nogil | |
38 cdef bint render_elements(self, elements) except True | 45 cdef bint render_elements(self, elements) except True |
39 cdef bint render_quads(self, rects, colors, GLuint texture) except True | 46 cdef bint render_quads(self, rects, colors, GLuint texture) except True |