So again, I'm sat in front of my IDE wondering whether to work on Manta-X or jsInvaders. With jsI, I've got to reimplement the script interface again - mainly because the last implementation was buggy and that I want to keep the codebase consistent with the articles. I could easily just drop in the old code, but I'd rather reimplement it with this sweet "Curiously Recursive Template Pattern" (Barton & Nackman) which reduces the duplication of effort in creating the script-classes. I picked up the idea from the wxJS source by Franky Braem - perhaps one of the only complete implementations of SpiderMonkey code out there. Although I started my templated implementation before I found this code, it'd only be right to recommend this guy's work for inspiration.
With all that said, Manta-X has me particularly gripped right now. I'm about an hour off implementing the collision detection code. As I've never used Scene Graphs before, I'm pondering on whether I can build in the collision into he SceneGraph node itself. I mean, it makes sense on having the AABB stored within the SceneNode - it just means I'll have to throw in some matrix code to keep the AABB and positional information current - something I'd wanted to avoid. Being new to SceneGraphs, it makes sense, but the tutorials and threads I've read seem to recommend against combining them. Right now, I can avoid a full AABB implementation as the game is essentially 2d in a 3d world, so it's something I can revisit later if needs be.
Other than that, I'm needing some scripted entities in the code. I'm actually thinking of turning away from a scripting language, opting instead for a basic action list which is triggered by events. For this, I can quite easy adapt the code I knoecked up a few weeks ago. For a shooter, the AI doesn't need to be as complex as a FPS or RPG, so a list of actions is likely to be the easiest and best solution to the problem. To take advantage of this, I'm building the level editor directly into the game, so I can stop the action at any point.
With that said, I think I've just made up my mind... Manta-X is is for a couple of hours [grin]
Well I worked on several small systems of Manta-X. I'm hitting memory problems in the particle system because of the Smart Pointers I'm using (adapted from Enginuity). It's enough to annoy me for now :/
Anyway, off to see if "I, Robot" is pants or not :)