Mercurial > touhou
diff pytouhou/ui/gamerenderer.pyx @ 511:2e8ceaa85d5c
Don’t type the renderer in GameRunner, so that we can switch it without type issues.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Thu, 28 Nov 2013 18:55:43 +0100 |
parents | bfea9e9a6845 |
children | b39ad30c6620 |
line wrap: on
line diff
--- a/pytouhou/ui/gamerenderer.pyx +++ b/pytouhou/ui/gamerenderer.pyx @@ -46,7 +46,17 @@ cdef class GameRenderer(Renderer): self.framebuffer = Framebuffer(0, 0, 640, 480) - cdef void load_background(self, background): + property size: + # We never need to get back the computed size, so size is write-only. + def __set__(self, tuple size): + self.x, self.y, self.width, self.height = size + + + def load_textures(self, dict anms): + self.texture_manager.load(anms) + + + def load_background(self, background): if background is not None: self.background_renderer = BackgroundRenderer(self.use_fixed_pipeline) self.background_renderer.load(background) @@ -54,7 +64,7 @@ cdef class GameRenderer(Renderer): self.background_renderer = None - cdef void start(self, common): + def start(self, common): self.proj = perspective(30, float(common.width) / float(common.height), 101010101./2010101., 101010101./10101.) game_view = setup_camera(0, 0, 1) @@ -63,7 +73,7 @@ cdef class GameRenderer(Renderer): float(common.interface.height), 0.) - cdef void render(self, Game game): + def render(self, Game game): if not self.use_fixed_pipeline: self.framebuffer.bind()