Video/rendering - SDL
Can load BMP
Can set transparency with ease.
Can Init the SDL video system
Can Draw to the screen
Can set Resolution width and height
Can also set programname and icon
Can updatescreen and clearscreen
The Video system as it stands right now is just a bunch of wrapper functions to hide SDL and make things a easy one call.
Plans for the Video/rendering
I plan on intergrating SDL_ttf in the same way as the surface's to make creating and writing text a simple call. not sure about anything else right now
Sound - SDL_mixer
Can load a sound effectt
Can load a music file
Can play music/sound effects
Can init the sound system
Very basic set of wrapper functions and I dont think i will get much more into it but we shall see
This is a variatey of classes that make the event system not bound by the API but by a defined list of events.
Right now its very primitive and the keyevents have to still be set but the game code is not in the Message pump instead hte message pump dispatchs events to all registered interfaces. Those interfaces then check there list of events and see if they have something defined for that event and if they do they perform the event.
As of right now I have 3 problems Iam working on. Right now each interface is sent every event so say if someone uses the up down left right keys as movement in there game interface and then want it to do something in there menu interface like scrolling the options it will try to perform all of those.
I also want to setup a keybinding system so that the events bound to a key can be variable and change at a glance without going into the engine code.
And the 3rd problem is tied directly into the second in the fact that each event is hardcoded to a key and I would like to change that.
This is where iam working right now and will be for awhile and Iam actually having fun here.
For the future
In the future I plan on adding a mapping system. My goal would be to make it versitile enough to have a simple map that can be used as a board for a board game and it will also be able to do a fairly complex based tile map/Isometric tile map.. we shall see
Also as I learn more about it collision detection, animation, physics as I will eventually be making a RPG or shooter or something that requires atleast collision detection..
A Timer system for the various issues of timed abilities and FPS counters and all that jazz...
As well give the engine file i/o capabilities for the maps and settings of keybindings and whatnot... in the end i would love to go from a simple engine that can do things like tictactoe and conect four to do a RPG..
With this approach iam hoping to be able to be able to change to say OGL or D3D or something in the future with very little changes for the games...
This my friends is the Legacy Engine. As soon as I get off work ill make up a lil demo so you can see it (even though it is so simple)
As well Iam making a hangman game with what I have right now.