view pytouhou/ui/opengl/shader.pxd @ 772:7492d384d122 default tip

Rust: Add a Glide renderer (2D only for now) This is an experiment for a Rust renderer, iterating over the Python data using pyo3. It requires --feature=glide to be passed to cargo build, doesn’t support NPOT textures, text rendering, the background, or even msg faces, some of that may come in a future changeset.
author Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
date Mon, 05 Sep 2022 17:53:36 +0200
parents a6af3ff86612
children
line wrap: on
line source

from pytouhou.lib.opengl cimport GLuint, GLint, GLchar, GLenum_shader, GLfloat
from pytouhou.utils.matrix cimport Matrix

cdef class Shader:
    cdef GLuint handle
    cdef bint linked
    cdef dict location_cache

    cdef bint create_shader(self, const GLchar *string, GLenum_shader shader_type) except True
    cdef bint link(self) except True
    cdef GLint get_uniform_location(self, name) except -1
    cdef void bind(self) nogil
    cdef bint uniform_1(self, name, GLfloat val) except True
    cdef bint uniform_4(self, name, GLfloat a, GLfloat b, GLfloat c, GLfloat d) except True
    cdef bint uniform_matrix(self, name, Matrix *mat) except True