Wednesday, 9 April 2008

Things you don't see

Adding new features or new artwork into Moviestorm is great. We all get to crane our necks over someone's monitor and go "oooooh". Then we make test movies which show off the new new stuff, and we can all see the results right away. And, of course, we can post nice screenies up here so you guys can go "oooooh" as well. We like that, yessir, we do. It makes us feel good.

However, a lot of what the code monkeys get up to has absolutely no visible benefit, isn't glamorous, and doesn't have any "wow factor" at all. For this upcoming release, for example, they've addressed a nagging memory issue. Whenever you switched scenes, the memory usage gradually built up, until MS was chewing up ridiculous amounts of memory and basically ground your entire machine to a halt. They've also fixed a horrid little bug where cancelling a render from a single camera could - sometimes - cause a crash. Plus they've been nibbling away at issues such as load times, graphics card support, and tiny little performance issues. Each little tweak may only improve things by 5%, so it's hardly even perceptible, but with enough of them, that adds up over time to a much faster and smoother app.

Something which is much more obvious when you're using MS, but still isn't the kind of news you go shouting from the rooftops, is that we've still been bashing away at the mouse bindings for set navigation and camera framing, trying to get something which is intuitive, consistent with what different people expect, and enables you to do all the things you need in a film tool. I don't know how many different bindings we've tried over the last two years, trying to take into account Mac users, different types of game UI, different types of 3D package UI, and so on, not to mention different people's tastes. The only way to do it is to try something, and then use it for a month or two, and see whether it "feels right" after you unlearn the previous version, and once you have any new features in and working. I've been using the new controls for a about three weeks now, and I'm finding them much better, although I do find myself occasionally reverting to the old way unconsciously. Going back to using 1.0.3 for demos feels quite clunky by comparison.

I could go on for pages, listing all the tedious and insignificant issues in our bug database that they address every day, but I'd get bored writing them and you'd get bored reading them. With around 300,000 lines of code in Moviestorm at the last count (and more every day), there are always niggling little errors to chase down and fix. And, just to add injury to insult, it's usually dealing with those evil little bugs deep down in the architecture that causes everything to fall over in a big stinking heap and stop working, at which point everyone else in the building starts to swear, curse, and bang their heads on their keyboards because their movie just broke.

It's a bug. (A stink bug, if you must know.) I just don't like posting without at least one picture. Plain text is just so 19th century!

These hidden changes aren't revolutionary, interesting to look at or world-shattering, but when you put them all together, that's how we make Moviestorm easier and nicer to use. In the background, we just keep grinding away. It's gonna be worth it.

OK, that's enough of the boring stuff. We'll have something pretty to show you tomorrow.


AngriBuddhist said...

I came to Moviestorm a few days after Early Release (1.0). It crashed on me about once every 10 minutes. Now, with 1.03, I can work on a project for hours at a time without any fear of it crashing.

I haven't felt this free since I got my "Depends".

Thanks Code Monkeys!!

Kate Fosk said...

I think this kind of communication is very necessary. Don't worry about it seeming boring. I think everyone likes to know that things are chugging along, even at those times when there doesn't seem much to show for the effort.

Spong3y said...

I'm not getting much problems with Moviestorm these days, although all the good stuff are unavailable for someone "incompatible" for me, I can run Moviestorm smoothly. No crashes, just the usual and annoying slow downs and sometimes the freeze when I have rendered 2800 frames and over.

Keep up the good work on fixing the bugs.