
Scary, isn't it?
I'm currently at Week 3... actually, I'm a bit further than that, but this is Week 3 of study.
As you can see, I have a milestone in two weeks... getting ready to do engine tests to ensure the base engine is all fine and working before going near the multi-platform code.
I should be able to hit this milestone right on the head without any problems, as since I just said, I am slightly ahead in my chart.
Now the reason I'm slightly ahead is that I used the same engine for my Networking Coursework, which although didn't quite work out as planned, I can back port a LOT of good code back into the engine - such as the Texture Managers, re-designed Input System, and some other really nifty code tidbits, as well as the Networking Layers too.
That said, it's no reason for me to rest as the next bit, is to start the binding process between script and engine. For this, I'm glad I'm slightly ahead as this will be the most troublesome, and possibly tedious bit that I'll have to do in this project. It's also the most important part - exporting the engine functionality to the script language, so the logic can be external as I want.
To do this, I think I'll employ the use of SWIG -
www.swig.org which is script agnostic. Means should I decide Lua isn't working for me, I should be able to switch to Python without much trouble. That's the plan anyway. I'm not quite sure how SWIG will behave when compiling for other platforms, but I'll get to that later.. worst comes to it, I'll be writing my own binding templates and wrappers.
Also recently got my grubby mitts upon a really nice book -
Beginning Game Development with Python and Pygame: From Novice to Professional - which I've been going through slowly. PyGame is VERY interesting to me as it's done partly what I'll be doing - binding Python with SDL - a Scripting Language with a platform independent API. Amusingly, the PC side of things will be using SDL as it's base API anyway, though I'll be more aiming towards using Lua rather than Python.
So, what will I have done for next week?
A start on the binding procedure. Either using SWIG or "rolling my own" if need be. At least by that time I'll have a working PS2 to abuse again, so will be able to ensure SWIG is going to compile and run on at least that. Other platforms are still in the air as to whether I'll have time to support them. I have code snippets for most platforms and I have given myself seven weeks to work on multi-platform coding, so who knows? Maybe it'll support the PSP too! or the DS! or something more exotic and insane ( Apple Mac, anyone? ;) ) but two main platforms are PC (Win/Linux) and PS2.
Course, not quite related to the project directly, but I need to get the stuckieGAMEZ site up and running soon, so I have a more organised space to store information. Specifically, the impending Doxygen dump of source.
But I'll get there.. one step at a time :)
I'll be updating this each week from now on at least. It's my "digital diary" so to speak, so shall be kept up to date with how my project is progressing. Hopefully it's interesting to someone :)
(updated to fix book link -- Stuckie)