Chernobog, Week 2

rackham_valkyrie_smI made pretty good progress on my SDL project this second week. It’s approaching the point where I could start writing some game-centric stuff and have it reasonably integrated into a handsomely designed framework. There are definitely a lot of chunks missing, and a lot of what I have will inevitably need expansion, but it feels like it’s shaping up. Since last week, I’ve added timing functionality (for regulating framerate and animation speed), event handling for user input, and movable sprites which can display frame-by-frame animation.

Here’s a ghetto diagram of the important classes. (One of these days I need to learn how to make honest-to-god UML diagrams.)

classorg02

And here’s a video showing off keyboard/mouse input to move sprites, as well as sprite animation and the recently-hacked-together text display class. Jefferson animates when he moves — the screen recording skips too many frames for it to translate well to video.

I’m finding this all very fun, and I’m getting to the point where I’m comfortable enough with these things to fluidly express my ideas in code without excessive limitations. I owe a lot of that comfort to watching the lectures from Harvard’s Intro to Computer Science course over winter break. I doubt that ITGM415 will require me to deal directly with cryptography, or data forensics, or sorting algorithms, but being exposed to the implementations of these things has helped a lot. Especially with regard to memory, knowing how things work at a lower level than is traditionally taught in programming classes at art school leaves me with far fewer questions on how to efficiently solve problems.

There’s much more to do. For the immediate future, my sights are set on text display and some more advanced drawing functions. I also need to work on sealing and preventing memory leaks, and a big part of that will be writing an XNA-style ContentManager class that keeps track of external files to prevent redundancy, streamline cleanup, and confine the loading of files to predetermined times. Next week is also my target date for having a tile-based Level system in place, including reading from file, drawing, scrolling, etc.

No Comments

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment

WordPress Themes