- Random Observation of the Day!
Tonight is a drinking night!
(and so is tommorrow night)
So... I got incredibly bored with the equation crap. Because its boring. Essentially the only thing left to do with it is to write a renderer (ie, something that can render and preferrably buffer a list of points) for it. Which is meh. I'm not too caring about it, if I want to do it it's easy enough to do.
I think my new project is going to be a framework (still utilizing the GUI system) to write minigames. Think along the lines of Wario Ware/Mario Party. Because those games are fun as hell, and can be broken up into many smaller, easy to write components.
One limitation I'm probably going to impose on such a system is that it's going to be single player only. This is due to the fact that its going to be on the PC, and hotseat gaming sucks. I currently have no existing codebase (anymore) for networking stuff, so that's basically out of the question.
Along with that new project is an upgrade of my rendering components. I've still been using that SDL placeholder dummy code which sucks ass. I really need to write a full-fledged OGL adapter for it, which (again) shouldn't take that long but is still something to do.
One thing that I've never done before is combine 2D and 3D elements. Well, I have, but I've always implemented it by billboarding textured quads. Which isn't what I want to do this time.
I think my OGL adapter will have 2 modes - 2D and 3D mode. The key difference is, essentially, the matrices loaded. Its trivial enough to just buffer a perspective/modelview matrix for each mode (whoo, for a combined total of 4 matrices) and use glLoadMatrix(..) to swap 'em out.
Additionally, an optimized program should only need to swap the matrices out twice each pass - all of the 2D stuff should (hypothetically) be drawn on top of the 3D stuff.
There are some other nasty bits that'll result in this, the bigest of which is the manditory disabling of the z-buffer tests during 2D mode. Which isn't a problem because I'm already using the painter's algorithm (render scene from back->front) because SDL doesn't have a z-buffer. So it'll work out.
Finally, the biggest nightmare is to implement a real font engine. As I've ranted in other people's journals, I can't stand writing font engines. What I'm using now is SDL_ttf, which is nice, but I'm creating a new surface (and freeing it) for every call to drawText(..) every frame. Which is slllooowww.
So that'll have to be fixed. Wrote one before, it was a bloody nightmare. Hopefully this one won't be as bad :/
Crap, I always seem to write too much recently. Guess I've always got too much crap on my mind. That's college for ya [headshake]