I’m writing from Coopers Coffee House this evening, sipping some virtual coffee (which never keeps me up) and watching the occasional boater go by. It would be quite relaxing if I wasn’t also setting up an event on the side. I’d ask why I make even my second life so complicated, if I didn’t already know the answer.
This news is a couple of days old, as any Firestorm user will know by now, assuming that they’ve logged in in the last couple days. I had actually been thinking that it was about time for a new version moments before launching the viewer. Then, up popped the notifier letting me know that version 6.4.21.etc.etc. was available. Brilliant! I’m actually in the [rare!] mood for updating.
So what’s in this new version for all us hard working users you may ask? Of course the Firestorm team provide you with a link to read all about it (here, if you just keep clicking the “Close Me” button on the notifier). Here’s my own take on the highlights from the release notes.
Things That Will [Should?] Interest Most Users
There is a healthy number of changes included in this release and they run the spectrum from changes to specialty features to updates that will affect performance for just about everybody. We’ll start with the ones I think will be of note to the widest audience.
Multithreaded Image Decoding
If you are not fluent in geek speak, then you are probably wondering why this is the first change I’m talking about. Trust me, this will impact just about every user.
First, know that Second Life is awash in textures. Everything and everybody you look at appears they way they do – instead of uniform gray shapes – because of textures. Textures are really just pictures and they are stored in a compressed format. It takes a fair amount of work for the viewer to turn that compressed picture into a texture ready for your graphics card to render on the screen.
So how does ‘multithreading’ help this? The old way of doing this was a one-at-a-time affair. Imagine you’re in one of those winding lines at the post office, and there’s just one person manning the counter. Each customer must be completely taken care of before the next can be served and the line advances. That’s analogous to how images were being de-compressed, one image at a time.
Odds are that your computer is capable of doing things much better than that. Now imagine that lunch break is over and several more clerks return to open more windows at the post office counter. You’re still standing in the same order in the same queue, but the line is moving many times faster. That’s all ‘multithreading’ means.
The viewer will now have a look at your computer’s capabilities and decide how many worker threads can reasonably be run at the same time to split up the job of decoding images. The result should be ‘snappier’ appearance of textures on objects inworld. Which is a good thing.
There’s a new setting in preferences (Preferences, Graphics, Hardware Settings, down near the bottom) where you can control this new feature. A setting of zero, the default, means let the viewer decide what your computer can do. One means do things the old way and any other number means set that specific number of worker threads, with the caveat that you’d better know what you’re doing if you do that.

Custom Keymapping
Imported from the Linden Lab viewer is the new custom keymapping feature. If you’ve ever grumbled about the choices of what keys cause what to happen in the viewer, this feature is for you. In the Preferences dialog, you’ll see a whole new Controls tab. You can use this to change and add key mappings to viewer actions.

For example, let’s say you wanted to add key controls for zooming in and out in 3rd person view. Open Settings. Select preferences, and then scroll down to the Camera Pan In and Camera Pan Out mappings, which are currently empty. Click Pan In and you get a little dialog that prompts you to press the key, or key combination, for that action. I pressed ‘Z’.

Repeat for Pan Out, pressing Shift-Z when the dialog pops up, and we’re set. Press the OK button and try it out. Z zooms in. Shift-Z zooms out. Super!

If you decide you aren’t wild about your changes, you can go back in, click any single mapping and press the Default button to return that action to the default. Or you can just press the “Restore Defaults” button at the top and everything will return to Firestorm’s out-of-the-box settings.
While I’m fine with most of the default key mappings, I imagine that I will slowly add a number of custom ones of my own. (And I will really try to remember to backup my settings so I don’t lose them!)
There’s a lot more to the new Firestorm version, but that’s all I have time for today. Besides, this is the first day in weeks that it is not coma inducing hot outside in RL and I plan to go enjoy some “fresh” air and sunshine for a bit.
Pingback: A New Firestorm Released into the Wild (Part 2) | Thinking Outside the Plywood Box