Friday, March 14, 2008

Optimising, Music and More

A busy day today. From the very start I leapt into action on the optimisation front. Just running a fullscreen release build using fraps meant I could pinpoint some parts of the code that were too slow. I added a switch to my engine to turn 'vertical synch' off, which lets me see the 'real' frame rate my card could achieve. I have a Geforce 8800 GTS, so I need it to run like the clappers on my machine, in the hope that people with less cards can run the game ok. Its a fairly static, GUI game, but that's no excuse for clunky coding, and besides I might want to add some particle stuff later.
basically, despite concerns about overdraw, its my text rendering code that's a bit slow, especially when I draw lots of different pieces of text in one frame.
I'd already coded a sort of 'buffer system' for text, which lets me pre-compute all the slow stuff for drawing some characters, then just re-draw it the next frame. It was a case of tidying up (and improving) that code, and using it in some of the more immediately vital areas. I raised the frame rate in my worst case from 65 to 91 eventually, so that's a good start.

Once that was out of the way, it was time to listen to the 'final' passes of the games music and stick it in. Some of the music I love, some of it I'm not sure fits in with the game as well, but there's a long way to go yet, so it will probably involve a lot of trial and error as to where to put things.

My GUI artist is away, and un-contactable, which is a bit of a pain as I have lots of stuff I need him to do. On top of all of this fun and games, there is the fact that I'm supposed to be doing some decorating with the medium term view towards selling the house. Oh joy. At least I could console myself with a sausage sandwich.