Tuesday, 7 April 2009

Almost time for holidays.

It's been almost 3 months I've been working in a Thai/French speaking office, so being the only English guy here with no other language experience has been a tough experience which has forced me to learn to communicate a LOT better. I've developed more patience, I talk more clearly, and I can explain myself much better too. The skills I've picked up are defiantly going to help me when I get back to Mere Mortals. Sadly, I've not done as much work as planned on my own projects.

Most of my programming efforts have been putting together a simple DS engine. All the time I've spent working on the DS over here has made me appreciate working on platform with less memory, less CPU, and less capabilities in general than most games programmers are used to working on. One of the things which has annoyed me very much whilst working on the DS over here is the engine I'm using doesn't do much for you. It loads everything in for you, and there you go. You've got to choose where it all goes. I don't like that one bit - which is why I decided to have a go at my own engine.

Basically, my engine, PsybrusDS of course, has a bulky tool behind it to convert graphics, including any sizes sprites into something usable by the DS. All it does is swizzles it all into the correct 8x8 block format you can go read about on any of the GBA/DS homebrew sites - nothing spectacular. Engine side, you load a sprite - and it doesn't go into graphics memory until it is needed, and when it hasn't been used in a while, it is unloaded from graphics memory, giving me plenty of room to breathe when it comes to number of sprites. Next step is to treat ROM as a level of cache too - so the sprite isn't even loaded into main memory until it's needed! The loading time is reasonably fast, and there is no seek time, so this is probably a doable approach. Background layers - I don't want to fidget with where in memory they need to go - so my engine has a simple approach - give it the backgrounds, and say "upload these for me will you?" and it works out where to place them in memory for you. A sigh of relief. Progress has been slow on it, but it is just a small project to keep me occupied when I'm bored!

Another project I've been working on (well...just started) is PyAL. It's actually just a wrapper around OpenAL to make it work better in C++, and then SIP bindings. I'm bolting a couple of extra into it such as sound layers to allow you to specify multiple sound files for different gains and pitches, file loading (via libsndfile), and eventually some utility stuff for the EAX extensions. I plan to use it to develop some sound tools for games in Python, so I can have a decent GUI to play with instead of hard coding.

As I said in the title of this update - almost time for holidays. I leave on Saturday coming up to go to Australia to see family and basically relax for my long flight back to the UK, and back to work!

Monday, 19 January 2009

Adventures of a programmer in Thailand.

Well, I made it! Landed safely in Dubai, wandered round failing to find the Irish bar (was in the other terminal), then a few hours later went and jumped on a plane headed for Bangkok. I've been there a few days now, the heat has not killed me just yet, although it is dry season, so I'm lucky!

Been a hectic few days, finding that my apartment didn't have electricity (noooo), so I was put up in a hotel until that was sorted out. Following this, I went for a few beers with the MD of the company I'm working at over here, got shown some nice places, and shown some great food! Theres plenty of great food over here, although it's a little too sweet for me personally, but it's something I'm sure a couple of weeks will sort out!

I eventually got a chance to sleep, and sunday came. Woke up stupidly early - 5am, sat on the internet for a bit talking to people back home, and attempted to go back to sleep. Awoke again at half 12! Ouch! Nonetheless I wasn't going to let the day go by without doing a bit of exploring. Took a wander round the area I'm going to be spending the next 3 months to find that there are very few English speakers here. The ONLY English speaking person I ran into was an American guy at a food place - where he asked what I was doing this side of Bangkok - given that it's not a tourist area! Oh joy, I'm gonna go insane from lack of conversation! However all should be good, it'll encourage me to try and learn some Thai whilst I'm out here, at the very least enough to show courtesy when ordering food and such!

Monday finally arrived, I had my first day at work - which was quite unusual to say the least, given that no-one in the office was engaging in conversation in English. Was headphone time for me until lunch time. I did get through the day though - and finally moved into my condo! The condo is fantastic, a good amount of space, a rather large bed, 13th floor view of the swimming pool, and oh yes - a swimming pool! There is also a gym which I have access to, so maybe I can use this opportunity to get myself back into shape!

Sadly, no work has been done on FF yet, though a day or two's time I'll have began to settle into my new home, and will resume work on it! First job is to get reacquinted with the source code and tidy up the dirty bits I've left for a bit now. But anyways, for now, ลาก่อน!