Genesis: birth of a new v1.x styled viewer for Second Life

Genesis is the name for a new v1.x UI styled viewer, officially released on November 5th, 2022 (although nightly builds have been available for some time via the Genesis website). It is primarily by MelanieCosti and Torric Rodas, supported by a group of QA and nightly build testers.

At the time of writing, the release version is 1.1.522, and accompanying the release is a set of video resources available via the Genesis Viewer You Tube Channel (see below) to help people gain some insight into the viewer and also to learn how to use some of the features incorporated into it – notably those obtained using code provided by other TPVs.

The following is not intended to to be a full review of the Genesis viewer 1.1.522 release, but rather to provide a general overview of the viewer (particularly from the perspective of those more familiar with the v6.x UI style of viewers, which include the likes of the official viewer, firestorm, Kokua, etc.) and the supporting material; although some important exclusions from the current release are also noted.

Genesis Viewer splash screen

What is the Genesis Viewer?

The Genesis viewer is:

  • Based on a fork of the Singularity viewer, with a lot of under-the-hood reworking, together with a host of capabilities adopted from other TPVs as well. To quote from the Genesis website, it is:
A fast, responsive, low memory footprint viewer designed with laptop users in mind.
We inherited some very old code and settings, better suited to computers over a decade ago and have brought the code and settings up to date. A low-spec computer manufactured in the past ten years, should be able to run Genesis and enjoy improved performance.
  • Officially available for Windows only.
    • However, it should run on Linux Ubuntu/Mint, and a video guide is available for those wishing to try – see below for more.
  • Supported by a combination of release notes and change log notes on the Genesis website (click the tabs at the top of the page to switch between the two).
  • Self-certified for listing on the Third-Party Viewer directory and in accordance with the Third Party Viewer Policy.
  • Utilises the “v1.x UI style”.

What is the “v1.x UI Style”?

For those unfamiliar with it, the “1.x UI style” is a reference to Genesis being among a small group of viewer that utilise a general UI layout that reflects the original official viewer for Second Life, generally referred to as the 1.x (or sometimes the 1.2x) viewer.

The reason for this is that when first released, what is now the “v6.x” UI (and which started life as “Viewer 2.0”) had some significant design flaws that made it less-than-popular during the early days of its use (circa 2010-11). While these issues were largely addressed over time, there was also a certain amount of subjective resistance to change among some users that was sufficient to warrant some TPV developers to produce viewers  which largely retained the front-end look and feel of the old “viewer 1” those users preferred.

The most notable differences when comparing the v1.x UI style found within Cool VL Viewer and Genesis (as the two currently-maintained v1.x UI style viewers with a release cycle) can be found within the menus (titles and options) and the toolbar and its button / options.

As the menu systems found on v6.x UI style viewers also tend to vary in naming and options from one viewer to the next, and the use of the toolbar buttons is perhaps the most visual difference in UI presentation between the two flavours of viewer, I will only expend time on the latter.

Genesis Viewer showing the default set of toolbar options and the expanded Settings (aka “quick preferences” in other viewers) panel, accessed via the ∧ at the extreme right of upper row of toolbar options. Note hat local chat can be displayed on this upper row as well by clicking on the chat balloon button at the far left end of the toolbar (local chat is also displayed within the Communicate floater as per v6.x style UI viewers

In short, the V1.x UI toolbar:

  • Is fixed at the bottom of the viewer window – there is no support for placing buttons to the sides or top of the window, according to personal preference.
  • Comprises two rows:
    • An upper row used to display the local chat bar (also displayed in the Communicate floater), and media playback options, Voice chat options, and the Settings (aka “quick preferences” in other viewers) panel.
    • A lower row of fixed buttons.
  • This lower row of buttons can be customised to a degree using either clicking Change Buttons (displayed by default at the right-hand end of the button row) or via View → Change Toolbar Buttons in the menu.
    • Both of the above will display a list of available toolbar buttons. Toggle the check marks to the left of each to add / remove the associated button to / from the toolbar.
    • Note that:
      • Buttons will be automatically resized to fit the available space (fewer buttons = larger button sizes and vice-versa).
      • There is no ability to change the order of the buttons by dragging them left or right, as with v6.x UI style buttons.
      • There is no ability to switch the button displays between text or text / icon or icon only, again as per v6.x UI style toolbar buttons.
Genesis toolbar options – check those to be displayed in the toolbar button area at the foot of the viewer window, uncheck those you do not wish to see displayed

The Change Buttons floater does include a lot of options – far more than is the case with most other viewers, and it would appear a number have been included for those who are particularly keen on viewer performance – useful if you are running on older hardware / a poorer connection and find you need to tweak things. It  would perhaps be nice to see the button options ordered alphabetically for easier scanning of the floater, but that’s a personal observation.

Functionality

There can be a mistaken view that “v1.x UI” means “outdated”. However, this is not accurate. Yes, by comparison to the v6.x UI, viewers using the older style UI can appear to be harkening back to a bygone era of UI design (which is not to  say the v6 UI is anything close to leading edge!), but it is what is under the hood that is  important in terms of overall functionality – and as the Cool VL viewer has shown, there is  absolutely no reason why viewers presenting the “older” style of UI cannot maintain parity with the underpinning viewer code base.

Given this, the Genesis viewer is building towards supporting all of the capabilities offered directly by Linden Lab as the “core” viewer  code base, and also folds into to the more popular options offered by TPVs (some of which came by way of Singularity, which had also incorporated them). Thus, Genesis includes popular feature to be found in other TPVs such as (but not limited to):

  • “Legacy” style search
  • Area Search.
  • Client-side AO.
  • Contact sets (via the Communicate floater).
  • Right-click an inventory folder and select Open in New Window to open it in a separate Inventory floater.
  • Radar.
  • RLV/RLVa support.
  • Support for both the Pie Menu and right-click context menus.

The Genesis viewer also includes some nice touches of its own, including (but again not limited to):

  • Automatic complexity display: hover the mouse  over an avatar and their complexity will be displayed under their name and Group tag.
  • Communications – Genesis Group button: need help with Genesis? Click the button top right of the Local Chat tab labelled Genesis Group to ask for assistance.
  • Teleport improvements: work has been put into addressing teleport issues, including About Land not updating and physical region crossings which leave the avatar walking without control until the viewer disconnects.

A lot of effort has apparently gone into general code clean-up and refactoring in order to provide a more responsive viewer. While I have not had the time or the means to objectively test this, in the time I subjectively tested and used the viewer of the weekend, I will say that I found Genesis to be at least as performant as any v6/x viewer I routinely use.

Exclusions with Version 1.1.522

That said, there are some important exclusions with this initial release. These will be dealt with in future Genesis releases (the decision having been one of ship with what is currently implemented, they build from there, rather than constantly playing a game of catch-up with more recent LL releases). For now the more notable exclusions comprise:

  • No support for:
    • Multi-Factor Authentication.
    • 360-degree snapshots
  • Limited EEP functionality:
    • No ability to run EEP day/night cycles.
    • No ability to create new EEP environments.
  • No ability to:
    • Open profile floater from mute list.
    • Sort log-in names on log-in page.
    • Make favourite bar movable.
    • Pop-Outa person’s Profile from search.
    • Set transaction thresholds.

Genesis on You Tube

For those wishing to try Genesis – either a new-to-SL-users or those wishing to swap away from the v6.x style of viewer, the Genesis You Tube channel provides a range of tutorial and overview videos, including (but not limited to):

– Network Bandwidth is set to Adaptive by default.  This makes your connection to SL the best it can be.  It checks for packet loss and ratchets down during times of trouble then upward again.  You can override this setting should you wish:  Prefs > Network and set your own limits.  You should, from time to time check for “packet loss” as the viewer will relinquish monitoring, when adaptive was disabled. (Stats:  Ctrl+Shift+1).

Feedback

Which style of viewer UI a person prefers tends to be something of a “Marmite choice”, one version is either loved or hated; I admit I much prefer the v6.x UI style, and so Genesis is unlikely to sit on my “preferred” list of viewers. Which is not to say I dislike it or have any issues with it in terms of functionality. Variety, as they say, is the spice of life, and it’s good to see another maintained viewer utilising the V1.x style UI become available for those who do prefer that UI styling, and it’ll be good to see the various holes in the current functionality for Genesis viewer get plugged in upcoming releases and seeing it continue forward.

Given my personal preferences in viewer use, I cannot promise to offer reviews of every Genesis release, but I will obviously track them via my Current Viewer Releases page and weekly Viewer Release Summaries.

Related Links