The Zen of Second Life

Update January 27th, 2013: The Zen viewer has been discontinued by its creator.

Note: January 17th, 2012: I’ve received a number of complaints from the Firestorm team relating to elements included in the Zen Viewer. One in particular relates to the client-side AO, which in its current form I’d previously been given to understand had its roots in another Viewer & enhanced in Firestorm. However, I’m more than happy to correct this and give due credit to the Firestorm team.

No, I’m not going all metaphysical on you. Yet.

Zen is the name of the latest Second Life Viewer to cross my path, coming to me by way of a Twitter-poke from Cinder Roxley. Being developed by Zena Juran, this is a rather nice take on the LL Viewer, not altering too much, while adding some very nice touches.

Core Data

Currently available for the Windows platform, Zen is based on the latest 3.2.7 code from Linden Lab. This means it has the very latest in the Shining fixes, mesh upload, the  updated snapshot floater, etc. In addition, it also includes:

  • The alpha parametric deformer
  • Client-side AO and particle editor
  • Temporary texture & sculpt uploads and local sculpt and texture browsing
  • Area search
  • Pie menus
  • Toggle notifications between top / bottom right of the screen
  • LSL pre-processor and save / load scripts locally
  • Copy/Paste Object/Texture Parameters
  • Qarl’s prim alignment tool
  • Texture Refresh
  • Derendering option
  • Fetch inventory at log-in
  • Move orphaned system folders for deletion
  • Copy UUID on right-click
  • Resized View/Camera floater
  • Adjustable region restart timer.

In addition, the Viewer also has some useful defaults pre-set from the get-go which are liable to save most people using it time in getting things initially set-up.

The version I review here is version 3.2.7 (1), released 15th January, 2012, although version 3.2.7 (2) is available as of the 16th January, incorporating various tweaks and fixes.

Installation and First Looks

The installation EXE is 26.9Mb in size, pretty much par for the course nowadays, and installs Zen directly into its own directory without any hitch. On starting-up, Zen reveals the familiar 3.2 UI with a couple of interesting alterations from the norm: the Destination Guide doesn’t open by default, and the Mini-location Bar is displayed in preference to the Navigation/Favourites bars.

Zen default UI presentation

Transparent Buttons

Another, perhaps more obvious difference, is that the buttons – all positioned along the bottom of the window – are semi-transparent. Some may find them harder to see as a result, but I have to say I quite like it, although an option to adjust the level of transparency (if possible) would be welcome.

The buttons that are active by default are, it’s probably fair to say, the ones most people will prefer to see active from the get-go: Chat, People, Snapshot, Profile, MiniMap, View, World Map, Search, Build, Inventory and the AO buttons (on/off & settings). Other than the AO buttons, there are currently no additional buttons included in Zen’s Button Toolbar.


Menu-wise, Zen offers something of an eclectic mix, with a couple of the menus somewhat altered from the V3.2 offerings, others largely unchanged. Of particular note in a couple of the menus is the absence of many of the options that have corresponding buttons; there are no menu options for Choose an Avatar, Picks, Places and Camera Controls in the ME menu, for example, and World lacks a Destinations option.

Button access only: the ME menu from Zen (l) and from V 3.2.7 (r)

On the one hand, this appears to make sense – if the functions have buttons, why have duplicate menu option to access them?  Where a function is in frequent use, then it is likely it will be accessed through the button far more than through the menus. There is also the argument that experienced users (and Zen is aimed at those more familiar with SL, as are most TPVs) are unlikely to require access to some options (such as Choose an Avatar) while others will be more routinely accessed via Search (such as Destinations).

However, in some cases the menu options do offer a convenient means of accessing options that may not otherwise be used frequently enough to warrant having the button active at all times. As such, I’m not totally convinced removing some of the menu options (such as Picks and Places) is perhaps the right way to go.

Also missing from the ME menu, given it is built from the official 3.2.7 code, is the Merchant Outbox. However, this actually makes sense, as Direct Delivery isn’t yet available on the Main grid, so it’s hardly something people are going to miss at this point in time.

Zen menu options

Like many TPVs, Zen has its own dedicated menu called, appropriately, ZEN. This provides quick access to a number of  functions not found in the official Viewer: the ability to turn off / on Pie menus, disable / enable the mesh parametric deformer alpha, etc.

There may not be a lot of options here – but that’s intentional; Zen isn’t meant to be a feature-heavy Viewer, and to compare it with those that are would be a mistake. Zen is aimed at a very specific niche: building, as Zena explained to me, “I prefer to use  the official Linden Lab Viewer It has the best performance, but it does lack features found in other TPVs that I find very useful for content creation on the grid”. Full marks to her for defining the goal of the Viewer so clearly.


This approach is also reflected in PREFERENCES, which currently sees little deviation from the official Viewer in terms of tabs and options. The only easily spotted differences are the inclusion of a LSL Pre-processor tab for scripters and a UI tab for skinning the Viewer.

LSL pre-processing options

The skin options are currently limited – you essentially get a choice of a blue highlighting for things like menu selections, etc., or the more traditional LL teal effect (complete with options to change other aspects of the UI). However, this is something Zena is again working on, so more options are liable to be available with future releases.

UI Skinning


However, just because there aren’t a lot of extra menus options and Preferences, doesn’t mean there aren’t a lot of “under the hood” tweaks to the Viewer that may not at first be obvious. Zen actually differs itself from the herd in that several common defaults are pre-set to how many experienced users prefer them. For example:

  • Limit select distance is OFF
  • Camera constraints are DISABLED
  • Inventory is pre-set to SORT BY NAME and SYSTEM FOLDERS TO TOP is OFF
  • Inventory hover tips are disabled by default
  • Default cache size set to 1Gb rather than 512Mb
  • Network bandwidth is set to 1500Kbps (see this article on bandwidth settings) rather than the usual 500Kbps.

All of these tend to make getting started on Zen a lot less fussy, although it might be fair to say that many users would also like to see Chat and IM pre-set to use the “old style” non-header layout as well – Zen currently uses the LL default with headers active.

Camera Floater

The Camera floater in Zen has been nicely resized, and includes an option to quickly reset Draw Distance. The resizing is welcome – the camera floater on the official Viewer is somewhat supersized. However, in achieving the resizing, the more familiar zoom slider and viewing angle buttons have been removed. Again, I have very mixed feelings towards this approach.

Take the Mouselook button for example. While it is true that press the M key will drop you into Mouselook – it is equally true that this only works if you have your WASD keys set to move your avatar. For those that don’t, and who prefer to have WASD set to starting local chat (rather than having to tap ENTER first), the lack of a Mouselook button on the camera floater might cause a frown or two.

Animation Overrider

This is the “standard” client-side AO first seen in Firestorm and now found in most recent TPVs, which includes the ability to run multiple AO configurations, “build” AO sets “on the fly”, etc. In keeping with Dolphin, Zen currently uses the two-button configuration as mentioned above (one for accessing the AO floater, the other for turning the selected AO on / off), rather than the single-button approach used within Exodus.

Build Options

Zen offers all of the most frequently used build options found in the TPV “market” today. The build menu accepts four digits after the decimal point, there is Qarl’s alignment tool, the ability to copy / paste parameters, temporary uploads, sculpt and texture browsing, additional scripting tools, and for those working with mesh clothing, the parametric deformer alpha. Add to this the choice of using either the context menu or the Pie menu, and creators are supplied with a good range of options.

For me, there is only one item I’d like to see added, which is currently in Exodus, and that’s the ability to save / load position and rotation information of an object into /from it’s description field; when working on a number of builds and having limited space on my build platform, I find this a real boon for my work over copying / pasting co-ords manually.

What’s Not There

Again, it’s important to remember that this is focused Viewer aimed at delivering an improved building experience based more closely on the “vanilla” official Viewer when compared to other TPVs and that Zen is also something of a new development. As such,  the Viewer doesn’t currently include options such as radar or things like RLV and the media filters. This doesn’t mean these options won’t appear in time, but it would be unfair for people to dismiss the Viewer on the basis of their absence.

Viewer Status

Zen is TPV Policy compliant, and Zena informs me that, “I have an application submitted to be listed on the TPV directory and have been in contact with Oz Linden. As soon as Oz reviews the Zen Viewer it should (hopefully) be listed on the TPV directory.” The source code is available on Bitbucket, as is a fledgling wiki for documenting the Viewer and an issue tracker, which Zena requests is used for support issues / requests, rather than contacting her in-world.

Performance and Opinion

As Zen is based on the official 3.2.7 release I was expecting it to perform well on my usual system given my recent experiences with 3.2.5 and 3.2.6. So far, I’ve not been disappointed. Performance has largely matched my experiences with 3.2.5 (different environmental variables accepted, and remembering this is not intended as precise benchmark test), and frequently improved upon them (having shadows enabled at altitude, for example had the viewer running at around 15-16fps, slightly faster than 3.2.5, while on the ground, the rates were around those of 3.2.5 (about 11-12fps).

Overall, and in running Zen for a couple of days, I’ve found it to be a pleasant, crash-free experience (other than one issue which Zena fixed in the 3.2.7 (2) release). When building, the Viewer is easily as capable as my “default” Viewer choices (and I’ve given it a good run in this respect, given I’m (again) rebuilding my house…). Certainly, the additional build options made getting the work done a breeze, and it was nice to have a Viewer in which I can both build and have shadows running without suffering refresh stutter every time someone enters or leaves the sim.

Overall, the Viewer offers some nice build enhancements over the official Viewer, and those who prefer to use the LL-supplied Viewer, but would like to have some of the additional build options at their disposal without necessarily swapping to a TPV for general use should find Zen offers a very solid alternative.