Tuesday, September 22, 2009

Much of the weeks coding has been focused around exploratory coding with OGRE and related libraries. My star fighter game was originally planned to be built around SDL, but if this goes well I might actually use OGRE, and replace GIMP/.png with Blender/meshes for the entities of interest in it lol. Being the thing I am most familiar with, the prototype work is focused around a First Person Shooter type environment for right now.

My current thing to muck around with has been input; I'd rather like to set things up to use runtime choice of OIS/SDL for handling input and OpenAL/SDL for audio; right now I'm using just OIS for the prototype (and no audio).

This type of program is quiet a different beast then I am used to working on, most programs that I write usually can care less about individual keystrokes and mouse movements lol. So I've laid out some thought in how to deal with things. I've decided settings will be saved in XML format and will employ a key = command style mapping(; whatever is considered normal, I've been around quake/unreal games enough that my brain thinks that way about mapping controls lol). Each command will be an instance of a subclass of a more general command class, in charge of figuring out what the heck /should/ happen when the command is given. The games input manager is to register a std::map of key sequence = command object pairings (hard coded for now, since I've to busy to muck with an XML parser right now). Whenever input occurs that an interested command object has registered itself for, the command listener has a method called with the details about the input it wanted to know about.

One of my reasons for doing this, is I would rather like to implement a Quake style console for communication with the game; which is a style of program more up my avenue of expertise... lol. And it seems that it would make it easier to use the same interface for both the input manager and the console, in order to dispatch commands.

The thing I have not figured out just yet, is how these command objects will relate to actually getting their work done; but hey, I have got to get some sleep eventually and life sucks anyway; the code ain't going to go any faster then life is!

Time for me to crash to a pillow, work cometh on swift wings...

No comments:

Post a Comment