Slowed down

So it’s been a while, this last month seems like I’ve not got much done.  I spent a few days battling the flu and a couple more getting sucked into watching Alias of DVD.

Coding wise I also started to work on a one size fits all serialization system.  I had the following goals:

  1. In final production code it needs to be fast.  Ideally load in a single block of data, fix up pointers and run.
  2. It has to be generic enough to handle any kind of data (which messes with (1) as certain data needs to be uploaded to gfx cards and so has to be streamed and copied into gfx memory.
  3. Needs to be easy to debug, I want a human readable form so I can see what’s going on in the files.  Considered XML but really it’s over the top for these purposes.
  4. Also needs to be able to stream load in for development purposes so version changes can happen and data packages conditioned for different platforms.

All in all a whole set of noble goals which I think I’ve just about fulfilled – or can fill in the case of (2) with a simple extension.  The versioning framework is also there but not yet fully implemented.  I’ll come to that as I need it and can build the test cases as the implementation comes.  Now it’s time to move onto using it and some more fun stuff!

However it took me a long time to get to where I wanted to be along with a couple of re-writes of various substructures.  Still now I’m pretty happy.  About the only thing I’m not supporting that I want to is loading/saving of base class pointers to child objects.  To do this I’m going to need some kind of run time analysis to find out if a pointer is a type of (in theory it could be compile time but compilers don’t support an istypeof expression as far as I know).

Other than that I messed around with a simple finger painting app for IPhone for about a week.  I got rendering to texturing working under GL/GLES as doing the required alpha blending on the CPU was way too slow.  I also got some simple GUI elements working together.  However to extend that I’d like to build a GUI editor that will help me to build such functionality – but I needed the serialization stuff to work first!  Still I’ve build the fingerpainting interface, a friend/partner is planning on building some network code so we can launch a collaborative IPhone fingerpainting app.

Leave a Reply

You must be logged in to post a comment.