More Diagonal Updates
I decided to move on past signals and get the next important tool up and running; the logging system. This step essentially involved porting the logger I had in my old system across. My current logger operates a bit like a cross between fprintf() and cout; just give it a series of arguments in the function prototype and it prints it to an HTML file.
I'm in two minds about whether I need to port this over to a more ostream like format. On the one hand, it's a more C++ like interface and would be more elegant from the user's perspective. On the other, overloading all those functions looks plenty confusing and I'm not sure I need to bother with that level of detail for something as simple as the logger. I'm starting to debate whether going the full hog with a C++ approach is worth it if the principal user of the engine is going to be myself; it's not as if I need to hide the implementation details to an insane degree.
I'm also not sure about the best way to deal with files in a cross-platform way. I'm pretty sure that both Mac OS X and Vista now frown upon writing files in the application folder; while everyone seems to do it it's not proper. However I'm not sure of the best way to code this up in an elegant way that makes it work nicely cross-platform and isn't a burden on the game code. Given I know Ravuya codes for both Mac OS X and Windows I'll look at what he does in Propane Injector and see if I can use what he does.
Going too slow?
Given ANZAC day is now over (it was yesterday for those readers of the non-Australasian persuation) I'm a bit worried about my lack of progress on all fronts. I've been in a bit of a wash since Easter and I didn't hit any of the milestones I wanted to meet hard enough. I know most of them were a bit ambitious, but on the game dev front I should have finished the first operation version of the engine by now, plus written all that music I said I would for Stompy, plus worked a lot harder on my cartooning art style. Instead I'm at the raw beginnings of the Diagonal system, I've only got a few scraps of the music done, and my art's still just a collection of doodles.
I think I'll have to spend some of the weekend taking stock of where I'm at and where I need to get to. I think part of the problem is I've got too many things running at once and I need to make some decisions about what I can actually achieve in the time I've got available. It's no good aiming for something I can't physically do. As Bismarck said, "Computer game development is the art of the possible". Actually, he didn't say that about game development, he said it about politics. And he said it in German. But he would have said something similar if he knew about computer games back then. Or at least Goethe might have.
I need another cup of coffee.