view pytouhou/ui/opengl/gamerenderer.pxd @ 795:2d60a14f4816

python: Rewrite the main entrypoint in Rust This lets us progressively replace Python modules with Rust ones. Currently missing features include: - Saving replays - Networking code for cooperative mode - Reading a configuration file for options - Maybe more. But the base game is working, so yay!
author Link Mauve <linkmauve@linkmauve.fr>
date Tue, 02 Jun 2026 19:06:16 +0200
parents a6af3ff86612
children
line wrap: on
line source

from pytouhou.utils.matrix cimport Matrix
from pytouhou.game.game cimport Game
from .background cimport BackgroundRenderer
from .renderer cimport Renderer
from .framebuffer cimport Framebuffer
from .shader cimport Shader

cdef class GameRenderer(Renderer):
    cdef Matrix *game_mvp
    cdef Matrix *interface_mvp
    cdef Matrix *proj
    cdef Shader game_shader, background_shader, interface_shader
    cdef Framebuffer framebuffer
    cdef BackgroundRenderer background_renderer
    cdef object background

    cdef bint render_game(self, Game game) except True
    cdef bint render_text(self, dict texts) except True
    cdef bint render_interface(self, interface, game_boss) except True