Trying, bit by bit, to work my way through the things that make working on the game harder, on the infrastructure of its construction. Lately this has taken the form of a visual editor for designing the vector-based tiles the game uses.
You see, the tiles the game uses are constructed out of OpenGL graphics quads on different "layers." This provides many subtle advantages: we can arbitrarily scale up or down the graphic size, most of the quads are stored on the graphics card and displayed as needed "for free" and so we only have to change those quads that are both visible and have changed since their last display, we can have larger-than-grid-size tiles if need be, the layering system, where each tile can have components on different layers, gives us free outlining and neat effects, and so on. I honestly don't think I've even exhausted my idea space for what the system can be used for.
The catch is, I can't design tile graphics in a graphics editor. At the moment, all the tiles are stored in the source code as sets of coordinate and color values, which reminds me uncomfortably of coding up large DATA statements back in C64 BASIC 2.0 days. The idea is to use the visual editor to design them, then store them in an external file, probably as a Python pickle, at run time. Of course I'll release the editor too for modding purposes. Since realtime performance isn't such a priority I can use Pygame for it.
Well, that's the update. So you see I'm not completely idle, there are things being done. I'm churning away, although keeping everything straight in my head is a formidable problem I am nowhere close to giving up on this.
No comments:
Post a Comment