I finally added grass to Cargo. It took a long time to do!

I have been wanting to do this for ages. The island looked quite bare without it, but I knew that it would be a hard task to render the blades in real time. A couple of tests showed that the blades could be rendered if they were all part of one big object, but as individual objects it was too slow. Individual objects is what I need though: it’s the only way to have each blade react when touched.
I ended up doing both: blades far from the snail are drawn in large clusters, while the near blades are drawn individually, and will wobble about when bumped into. Clusters are determined by putting the blades into a KD-tree. I hope to have time to write about this in detail later.
This took such a long time (about three months of my spare time). I am really glad that it ended up working. It was a big risk, and I felt bad about not making more progress on the story-side of the game, but the grass adds so much. Now I can get back to those parts that I have neglected.
Edit: Some rough statistics: There are more than 2000 blades of grass in the level, and it now runs at a frame rate of more than 40fps on my aged laptop. Drawing every blade individually (though without any dynamics) drops the frame rate below 20fps.
For the past year or so I’ve been working on making a video game. Actually that’s a lie: I made the first prototype for this game seven years ago. Back then I got the basic mechanics working for the player character, but I had no story to go along with it, and therefore no game.
This time I made exactly the same mistake, spending a few months getting the character’s motion working well before I had any idea where the game would go. But it has worked out well: the game play was interesting enough to inspire a friend to help with the script (hi Lara :) and now it’s well on the way. It’s being created in Blender.

In-game screenshot of Cargo
Cargo is a 3D adventure game. You play a snail who is on a mission to whoa! No spoilers just yet. But you can get an idea of the basic game play from the screenshot above: Cargo (the snail) can crawl on almost any surface and wraps around objects. The motion is fluid and quite engaging. A little too engaging: development is slow because I spend half of my time just playing the game. In fact, I think I might have a go now.
… although not as thoroughly as I’d like to. I’m keeping it, but not without resentment.
Photopress was a promising gallery plug-in, but has been unmaintaned for ages. I heard about people having problems with permalinks, so before upgrading my blog I wrote some SQL to migrate the old images over to the new built-in gallery of Wordpress. After a solid and very frustrating couple of days hacking SQL I have it working reasonably well. It can bake all the Photopress links and tags in a blog to not require the plugin at all. It also goes half-way towards creating proper galleries: new image posts are created and tagged as attachments so they show up in the new media browser. However they lack metadata, so they don’t quite display the image.
I’ve had a gut full of it, but if anyone else wants to hack on it, here it is. Just read the instructions very carefully first.
I had an old maths teacher who told us that she used to do calculations based on number plates while driving. We all thought that was terribly nerdy. Over the last few years I’ve started to be amused at some of the words that can be read in plates, but today it happened: there were two cars parked next to each other; one had the number plate TCP nnn and other other WEB nnn. When I caught myself smiling at this I felt a little piece of my cool slipping away – and I already had a reputation as something of a geek.
In fact there are loads of amusing nerdy number plates out there, mostly based on protocol names and file extensions. It makes life just that little bit more fun.
Edit: Also, I was warmed to read last night that a fourth elemental component of circuitry, the memristor, has been discovered. Lovely.
I’ve been having some trouble printing a painting that I drew with an uncalibrated monitor. Since fixing the gamma levels of both the painting and my screen the colours are reproduced very well. I had to play around with the brightness a bit more, but it really comes down to the light you’re viewing the print with. It looks great in sunlight.