Rapid update: Kirsten’s Viewer & Speedlight

Isla Caitinara via Kirsten’s Viewer

While viewer updates are always in process across the available TPVs and clients, I thought I’d take a brief delve into recent updates for a couple of those I tend to routinely follow – Kirsten’s Viewer and the Speedlight Browser / Android / iOS client.

Kirsten’s Viewer

Late February and early March have seen a burst of activity from KirstenLee Cinquetti, with three versions of the Kirsten’s Viewer being released in a rapid-fire succession, started with S23.6.1500 on February 23rd and running through S23.6.1525 (codenamed Valkyrie, dated February 27th) and then S23.6.1533 (also, I gather, Valkyrie, released on March 2nd).

Give it’s been getting close to a year since the last update (see Kirsten’s viewer: a return to active duty and Kirsten’s Viewer gains the client-side AO), these releases do not focus on new features so much on both catching-up with the Lab’s core code base (which appears to be currently still in progress) and a lot of under-the-hood house cleaning.

In particular, the code clean-up means that as from the S23 release, Kirsten’s Viewer discontinues support for Linux /Solaris/ OSX, and the viewer will be Windows-only. The reason for this is simple: time.

Why would I do such a thing? Its simply the realisation that keeping this thing maintained takes time, which is a rare commodity and focusing on a pure windows based solution without sifting through endless defines and endif’s not to mention the triple whammy cmake files or anything else for that matter makes life a heck of a lot simpler.

– KirstenLee on why Kirsten’s Viewer is now Windows-centric

A further benefit of this move, as Kirsten goes on to note, is that it also streamlines the Windows built process itself, through the integration of some of the build libraries into Visual Studio 2017 (now the core build tool for the Windows flavour of viewers), rather than relying on third-party libraries.

Given this focus, it appears the viewer has yet to get some of the more recent updates from the Lab, including:

  • Camera Presets (contributed to the Lab by open-source developer Jonathan Yap).
  • Mesh Uploader updates (contributed by open-source / Firestorm developer Beq Janus, with further modifications by the Lab).
  • Avatar “jelly doll” rendering improvements (via Vir Linden).

That said there are a couple of new additions to be found in preferences:

  • The return of the Midnight UI skin (Preferences → S23 Features → S23 UI Selection).
Kirsten’s S23 see the return of the purple “Midnight” UI skinning (viewer restart required)
  • The inclusion of the Controls Tab from the Lab’s Custom Key Mappings RC viewer, which allows users to assign specific key mappings to a range of viewer functions (Preferences Controls).
S23 incorporates the Lab’s custom key mapping options, which at the time of this review, were still at viewer release candidate status in the official viewer.

As  noted, these recent releases are more along the lines of maintenance work and under-the-hood changes that are vital to the viewer’s longevity and future ease-of-update, rather than intending to present significant user-facing updates.

But that said, and with this work now completed, it hopefully won’t be too long before options such as the jelly doll updates and Camera Presets appear within Kirsten’s Viewer  and it continued to recover greater parity with the Lab’s code base and releases.

Details on KirstenLee’s recent work on the viewer can be found on her blog, and the viewer can be downloaded here.


Speedlight, the browser / android / iOS client updated in mid-February, with updates for both Basic and Gold users.

Core updates (Basic and Gold):

  • Places search has been added.
Speedlight now includes the ability to search via region / parcel name (subject to location’s search listing)
  • SLURLs are now clickable with an ability to teleport.
  • Avatar maturity can be changed via the Settings → Maturity tab.
  • The Avatars page (dashboard) now displays the current location of your avatars.
The location of your avatar(s) is now listed on the Avatar dashboard page

3D World View Updates:

  • Walk auto-pilot: right-click or long touch on device screen at location to the walked to, then select Walk Here from the pop-up menu.
  • In-world object interaction (Touch): right-click or long touch object, and select Touch from the pop-up menu.
  • Revised interface for the world view, with improved rendering.
  • Gold 3D Word View Updates:
    • While in low-poly mode, touch any object to load a high LOD model.
    • Holding ALT+mouse will rotate camera around avatar (as with a viewer).
    • On-screen joystick can be turned on in 3D settings.
    • Stick avatars size adjusted to fit with real avatars in preparation for avatar rendering).

The core updates noted above further tune Speedlight’s ability to meet with many use-cases for those needing to access SL while away from a full viewer. As noted last time around, however, my personal view is that the 3D world view remains hit-and-miss – even on my PC using a browser, objects frequently fail to fully render and avatar movement can be unpredictable.

Whether this is just done to my being Basic / have a bad connection to the rendering pre-processing server, I’ve no idea; but if these issues are more endemic, then perhaps they might suggest that more more needs to be tweaked before full-scale avatar rendering is attempted.

In the meantime, Speedlight can be run via any browser via the Speedlight Website, or downloaded from either Google Play or the Apple Store (fee payble for the latter, with automatic Gold lifetime subscription).

Kirsten’s Viewer gains the client-side AO

On May 2nd, I wrote about the return of Kirsten’s Viewer and its return to active duty. In that review I noted that while what goes into a viewer is down to those who maintain it, it would be nice to see Kirsten’s adopt the client-side AO mechanism, as first seen in the Firestorm viewer.

Following that review, KirstenLee’s partner, Dawny Daviau let me know the AO system was being considered and then, just a couple of days later, she Tweeted that the viewer had been updated with the AO code.

Even as an inside joke, I was flattered that KirstenLee had responded so rapidly to both Dawny’s prompting and my comment.

Dawny’s Tweet

I understand from KirstenLee’s own comments that getting the AO code into the viewer wasn’t easy, what with the UI changes created by EEP – so kudos and thanks got to KirstenLee and Dawny for going ahead and integrating it. Given it did take a little crowbarring, it’s not surprising that the AO floater has a couple of minor of rough edges to it – but these do not prevent it from being used or cannot be easily fixed.

For those unfamiliar with the idea of a client-side AO, it allows the animations from an animation overrider system to run directly from the viewer without the need to wear a resource-gabbing scripted HUD. It takes a little setting-up, but once done, it’s easy to use – and has the further benefit of allowing you to use multiple AOs together without having to worry about swapping HUDS or including different outfit links to different HUDs.

Quick guide to the essentials of the client-side AO as included in Kirstens Viewer

The best place to get information on setting-up and using the client-side AO is via the Firestorm wiki. A couple of points should be noted here:

  • When first loaded, the AO floater may not display all of the AOs in its floater (e.g. all your stands might be listed, but none of your walks). If this happens, click the Reload button at the bottom of the AO floater to get them to list and run.
  • The UI scaling in the floater is a little off in this S23-1387 KV iteration, so it my need to be broadened to correctly display.

Neither of the above points impact the AO’s usability, and in my own tests, I had no issues with setting it up and using it.

Also note that the AO will create a folder called #Kirstens in your invention, which will contain a copy of the AO(s) you have selected for client-side use – do not delete this folder when using the capability!

As a long-time user of client-side AO capabilities (including loading it with more than one AO set), I’m clearly a fan of the capability. I like the freedom it gives, and the fact there’s no need to have screen real estate (however small) taken up by a HUD and, more particularly, the fact that texture RAM and script resources needn’t be taken up by the use of a HUD. So while this might be a “small” update, I think it to be worthwhile and – if you’re trying out Kirsten’s Viewer and haven’t used a viewer-side AO system, this is a good opportunity to try it out.

For those who do use the client-side AO, and might be looking to an alternative to (say) Firestorm for photography, the addition of the AO button and floater offers another reason for giving Kirsten’s Viewer a try out.

My thanks again to KirstenLee for responding to the request from Dawny and I!

Related Links

Kirsten’s viewer: a return to active duty

Around a decade ago, a popular third party viewer (TPV) among Second Life photographers was Kirsten’s viewer, produced by KirstenLee Cinquetti (aka skilled coder Lee Quick).

At the time, it pushed hard to make the graphical appearance of SL rich and deep. It was also the first TPV to experiment with analgyph 3D, far back in 2011, long before “VR headset” was in common use.

Sadly, development of the viewer drew to a close in late 2011 as a result of personal circumstance (some of which is charted in these pages), although KirstenLee kept dabbling with it on-and off (such as returning to the S19 UI version and updating it in in 2013, and keeping pace with significant viewer updates from the Lab, such as Bento for the S22.x (current UI) version in 2017).  Now – and as pointed out to me by Austin Tate – the viewer is more formally back, KirstenLee having completed the self-certification required to have the viewer once more added to the Lab’s Third Party Viewer Directory.

Available for Windows, the updated Kirsten’s Viewer is bang-slap up-to-date, in that it is built on the most recent release of the official LL code base (release at the time of writing), and so includes the viewer 3.x+ UI, and all significant updates from the Lab up to and including EEP, the Environment Enhancement Project, although as Kirsten noted with it’s release, some tweaks might still be required.

Kirsten’s Viewer is EEP capable

KirstenLee refers to the viewer as something of a “hybrid”, and when approaching it, it is as well to keep this in mind. “Hybrid” is this case is a reference to the fact that while it is based on the core LL code base, the viewer also pulls in elements from what might be LL project viewers (and so not necessarily ready for “prime time” use), and from other TPVs. In doing so, the focus is very much on code that improves stability / performance.

I tend as a rule to keep any feature or alteration within the existing code base and not add extras which cannot be integrated into the standard source. I also use LL code style and naming conventions.

– KirstenLee, discussing Kirsten’s Viewer

In this regard, the viewer is also described as being “aimed specifically at experienced users, with emphasis on the visuals.” This is not so much to put people off, but to underline the fact that use of the viewer comes best if you have an understanding of the more esoteric aspects of viewer use – such as clearing caches and settings from any prior versions when installing a new version (aka, performing a “clean install”). Such capabilities are not hard to grasp, and can be found documented in various locations.

Given the S23.x release is based on the latest LL code base, you can comfortably expect all of the major Lab updates to be present, as noted, and may from time-to-time include elements from upstream of the release viewer (as with the Legacy Profiles, again as mentioned above). It also pulls some updates from TPVs like Firestorm; however, those familiar with the latter should not expect Kirsten’s Viewer to expose debugs or offer viewer-specific capabilities to anywhere near the same degree – that’s not the point of this viewer (although that said, it would be nice to see Kirsten’s adopt the client-side AO mechanisms, simply because it is available in several TPVs and used by many people as a result).

Kirsten’s Viewer includes the upcoming re-integration of viewer-based profile panels – which includes the profile feed from the web, and currently found in the Lab’s current Legacy Profiles project viewer

Given this, the viewer’s Preferences and Tool Bar options are pretty must as found in the official viewer, with just a trio of differences in the the former. The Move & View tab, for example, includes additional sliders for camera movement  – lag, smoothness zoom time – again in keeping with the ideals of photography / visuals. Further, the Set-up tab does not include the auto update options, for reasons KirstenLee also explains:

I do not use the Linden auto build system. I host all the build libraries because I occasionally work on those in concert with the viewer code. It allows for much finer control over the entire process. I have a tendency to do custom compilations with different tool-sets which is something an official client would never do, for reasons of the broadest compatibility with the consumer.

– Kirstenlee, discussing Kirsten’s Viewer

Thirdly, Kirsten’s Viewer includes a custom Features tab (called S23 Features in the current release, although this will doubtless increment to match future versions). This is again camera / visuals related, and includes the option for running the viewer in analgyph mode can be found.  This includes sliders for adjusting the analgyph 3D view to account for eye separation and focal distance.

The Features tab in Kirsten’s Viewer is where you can find the analgyph options, for those with analgyph glasses

Should you have analgyph 3D glasses and use the option, the following points should be noted:

  • Activating it will disable the viewer’s Advance Lighting Model (ALM) shaders – so shadows, ambient occlusion and depth of field will all be disabled.
  • Toggling analgyph mode off will not automatically re-enabled ALM, you must do this yourself from the Graphics→Advanced Settings floater.
  • If you log-out with the analgyph option enabled, it will be disabled automatically on logging back in, but again, ALM + options will remain disabled until turned back on.
  • If you use a 3D mouse such as SpaceNavigator, you may find activating the analgyph capability will severely alter default 3D mouse movement. As the overall defaults for the SpaceNavigator (Move & View→Other Devices) were not altered and given I don’t actually have analgyph glasses to make it worthwhile, I confess I did not fiddle with settings to see if the issue could be corrected.

It may seem odd in “bringing back” a viewer after so long, but there are reasons for it, again as KirstenLee notes:

Its a matter of public record as to how development ended, a perfect storm of circumstances made continued work on it impossible. But as with all things time is a great healer. Besides after nearly 16 years of SL I find myself enjoying my in world life. And have the luxury of  a good work balance and a happy and healthy home. So while the sun shines make hay 🙂

For my part, and while I’ve not not driven the S23 release hard or far, I can only say its good to see Kirsten’s Viewer back on the active list once more. While it was never my main viewer, it was a go-to viewer for me for photography. And while it may only be subjective, it does seems to add more depth to EEP skies than I’ve noted with the official EEP viewer – the stars seem to “twinkle” more noticeably.

It’s always tempting to offer a list of what a viewer “could” or “should” have, particularly if coming from something like Firestorm – but the point of TPVs are that they are not meant to all provide the same things. With its emphasis on visuals, performance and stability, Kirsten’s Viewer addresses a specific set of goals and as such, has – and likely will have – only the tools it needs to achieve that, my own earlier comment on the client-side AO above notwithstanding.  As such, I’m looking forward to seeing the viewer’s progress, and reporting on it.

Related Links

What dreams may come: Kirstenlee further updates S19

kirstensKirstenlee Cinquetti has issued a further update to the S19 version of Kirsten’s Viewer – version S19 1.19.4 (407). Released on Thursday May 16th, 2013, the update primarily fixes a nasty cache crash when user settings and local cache are manually deleted.

There have been a lot of questions as to why the S19 (v1-style) viewer from Kirsten’s stable is being updates rather than the S22/S23 viewers. In a blog post accompanying the release, Kirsten/Lee gives an answer:

So I guess the most pertinent question is why? It is probably the most pointless one to answer also.

But lets just take a wild stab at it!

I need to be in SL occasionally so I need a viewer (Duh), V2 is dead sorry S22 it was fun, V3 is well lets just say it’s not my cup of tea. I could just download someone else’s viewer but thats not what I want.

I LIKE S19 it was and still is quick, its code in comparison to newer clients is simpler it has much more modest hardware demands I can merge from many sources more rapidly etc, etc, etc..
It ticks all my boxes, on a more personal note it’s NOT limited to Second Life.

That is important to me, so it may have bugs, it may not compile on macs very well… sorry.

But if I wish to drift around SL or jump into Opensim I can.. anyway hope that kinda answers some of my motivations, and why I share the corresponding installer.

As mentioned in my last piece marking the “return” of the S19 viewer, and people shouldn’t anticipate routine updates and improvements; as Lee indicates in his bog post, this viewer has been updated and is being tweaked purely to suit his needs – and rightly so.

A couple of notable changes have been made since version S19.1.19.4.(404), the last version I used. Preferences have been moved from their “traditional” location in the File menu to appear under the S19 menu, and Depth of Field (DoF) has been added to the Graphics tab, in a dedicated sub-tab.

DoF is back!
DoF is back!

Sadly for me, I’m unable to test DoF, as deferred will not run on my hardware set-up, no matter how I fiddle with AA (which was Lee’s suggestion to me after I’d encountered problems with the 404 build). But then, as I noted last time, while I’ve always like Kirsten’s Viewer, my hardware has tended to sulk badly when using it.

However, for those of you missing Kirsten’s Viewer, here’s yet another update for you! Going on feedback following my original piece on S19’s return (in comments, IMs and DMs), it’s good to know the viewer still has loyal fans!

Related Links

You can’t keep a good viewer down – Kirsten’s S19

kirstensThe blog post says it all – “old school” – a simple message with a lot of meaning. Kirstenlee Cinquetti has been twiddling under the hood with the S19 (v1-style) version of Kirsten’s Viewer with the result that an updated version – code-named “Blackbird” (version S19.404 at the time of writing) was released via Google Code on Wednesday 24th April.

This is the second time there has been a surprise update to one of Kirstenlee’s viewers – in September 2012 a couple of updates were made to the v2-style S22 viewer. As with those updates, the new release of S19 does not mean that Kirstenlee is returning to the field of viewer development per se. Nor is this a complete update – although it does incorporate a lot of v3 code and is Server-side Baking ready.  As it stands, the release – as with the S22 releases in September 2012 – is offered “as is” and without support – and there is no time scale or firm commitment where further updates are concerned.

As readers, know, I’m not a fan of the v1-style interface, but I admit there is something pleasing about loading and running this release – quiet possibly because it is one of Kirstenlee’s builds, which, despite the odd hiccup between the viewer and my hardware, I’ve always felt pretty much at home with. Perhaps it’s the green :).

Some of the New Bits

I’m not proposing an in-depth review, but here are some of the main features in the update.

Server-side Baking / Appearance: as mentioned above, this update is “server-side baking / appearance ready – it will render avatars correctly on SSB/A-enabled regions and avatars using the viewer will render correctly to others. However, the new “hover” mode partial z-offset “fix” is not included in the Edit Appearance floater.

SSB/A-OK: O the left - S19 Blackbird rendering my Alt (on the SL SSB/A beta viewer) and I correctly on an SSB/A-enabled region; on the right - I render correctly in my Alt's view
SSB/A-OK: O the left – S19 Blackbird rendering my Alt (on the SL SSB/A beta viewer) and I correctly on an SSB/A-enabled region; on the right – I render correctly in my Alt’s view

Mesh Uploads: Nicky Dasmijn’s mesh uploader is included in this release of S19, again bringing it into line with other viewers and the age of mesh.

Anaglyph [3D] rendering: Kirsten’s first introduced 3D rendering in the S22 viewer. While still very experimental, with all the interest in Oculus Rift, its inclusion in S19 with this release is perhaps a little pertinent and timely as a means of generating a 3D view in a viewer.

If you have 3D glasses, Kirsten's latest S19 (404+) gives you a 3D world
If you have 3D glasses, Kirsten’s latest S19 (404+) gives you a 3D world

Restrained Love: RLV comes to Kirsten’s viewer with a dedicated preferences panel which includes the ability to set a “profile” against your RLV use – one of “BDSM Persona-Player”, “BDSM Role-player” and “Non-BDSM”. These define how many (and which) RLV controls can be blacklisted (i.e. prevented from operating), so that, for an example, someone using the “Non-BDSM” option can make use of options such as automatic chat redirection, shared folders for changing outfits and “forced” teleports which necessarily having to also have the more restrictive RLV options active.

RLV comes to Kirsten's Viewer - complete with a set of "profiles"
RLV comes to Kirsten’s Viewer – complete with a set of “profiles”

Pathfinding: Kirsten’s Viewer S19 also gains options to display pathfinding information on linksets and characters. These options are on the Tools menu. As S19 supports OpenSim, there is no navmesh visualisation as there is no Havok sub-licence agreement.


Overall, this is a sudden and interesting update to Kirsten’s original v1-style viewer, incorporating a lot of v3 code which more than makes it capable of running on today’s grid. On the whole I found it to be stable, and with performance levels I’ve tended to get from Klee’s builds (somewhat lower than with other builds for reasons I’ve never fully fathomed). I did encounter an odd issue – while I could run the viewer in deferred mode, when I enabled shadows, my in-world view turned black, and refused to come out of its sulk until I disabled shadows once more. Whether this was due to a problem with the viewer, or simply another of the hiccups which seem to occur between my hardware an Klee’s viewer builds at times, I couldn’t say.

There are a few bits missing from the update as well – no Depth of Field for photographers, for example, (although Dawny Daviau, Kirstenlee’s partner, tells me this might be coming). So don’t expect it to be fully up to S22 / v3 standards in terms of options, etc.

Again, this release is not a return of Kirsten’s viewer per se, although there is an open invitation for those who like the viewer or the v1-approach to give it a go. Just remember, support isn’t given – and it may be a while before a further update arrives.

In the meantime, some more 3D, this time courtesy of a video demonstration from Chantal Harvey, filmed back when the capability first appeared in Kirsten’s Viewer.

Related Links

With thanks to Dawny Daviau.

Kirsten’s Viewer: a trip down memory lane

On Sunday 23rd September, Kirstenlee Cinquetti made a surprise update to Kirsten’s Viewer. It was accompanied by a short blog post:

I cannot help but find myself drawn in once more, you would think after nearly ten years of what sometimes seems like punishment you would throw in the towel.

But like I have stated in the past you catch a spark of what could be.. and once more you re-discover.

The shape or form of your time devoted to this most unusual habit is not yet set in stone, but you know you quite fancy the journey once again.

Version S22(1a) was not a major update to the viewer, and wasn’t intended to be, although it has been followed by a second release on the 26th, version S22 2.8.2 (11). Both are still very much Viewer 2 in terms of UI, and are more “tidy-ups” rather than any resumption of development.

Seeing the old V2-style UI actually brought a smile to my face. Well, not so much a smile as a big, sloppy grin. Even though I’ve never been a fan of the tabs on the right side of the screen, I’ve still missed the Sidebar in so many ways. It is ironic that by the time LL decided to remove it altogether, several TPVs had re-worked it into something that was both reasonably functional and no longer a blight on people’s use of SL – with Kirsten’s Viewer being at the forefront of many of the early improvements and Sidebar innovations.

Kisten’s Viewer: a trip down memory lane

That this isn’t a return of Kirsten’s viewer – and shouldn’t be taken as such – was made clear by Kirsten’s partner, Dawny Daviau, who chatted with me earlier this evening about the updates. “He grabbed the latest Kirstens viewer and just played a bit with it and compiled it again with just here and there an adjustment,” she explained. “There wont be any serious work anymore done as he still works and doesn’t have the time for that. It’s just refreshed, and wont get the new things LL offers now like pathfinding etc. See it as recreational work on the viewer but because we had so many requests for the viewer we put it up for the fans.”

One of the last releases on Kirsten’s Viewer included a (still unique) 3D view of the world. That’s still present in the updates – you can find the option under Preferences->Graphics->Advanced-> Misc->Toggle Anaglyph Render. You may also need to disable deferred rendering (lighting and shadows) – but if you’re able to view 3D rendering on your computer, it brings a whole new depth to Second Life.

Being based on V2, performance isn’t perhaps as good as the latest generation of V3.x viewers. On my system, it ran at around 23 fps at ground level with deferred off and Draw set to 128m. Pushing Draw up to my usual test range of 360m reduce the frame rate to around 18 fps. However, I do have an older GPU, and it did always tend to struggle with Kirsten’s, sadly. This is reflected by the fact that with deferred active, I was reduced to single digit frame rates – just 7 fps at 128m, and 4 at 360m.

There is far too much in V3.x I’ve become used to  – and dependent upon, in some respects –  to make a return to using Kirsten’s viewer full-time, but seeing these two releases was a welcome trip down memory lane, tinged with no small measure of regret at what might have been, had the Crowdfunder funding raised enough for work on the viewer to continue.

Related Links

With thanks to Nalates Urriah.