Kirsten’s Viewer 1725: delving into the Arcane

Thursday, September 28th, 2022 saw the release of Kirsten’s Viewer S23 Build 1725 (what a pity build 1701 was a preview – it would have been Enterprise-ing to have a full release like this with all that is packed into it, go out with that ionic number! 😀 ).

While there was an earlier preview release, Build 1725 (initially 1705) – code-named Arcane – marks the first full release of Kirsten’s viewer in over a year – and brings to culmination a lot of hard work on Kirsten’s part in completely overhauling the viewer from stem-to-stern as well as incorporating the latest updates from Linden Lab.

Linden Lab Updates

Given the span of times between this release and the last, there have been numerous de facto viewer releases from the Lab such that listing them all here would simply read as a telephone directory of viewer version numbers and names. However, among that list there are some significant releases worth referencing as now being reflected in Kirsten’s Build 1725:

  • LLModalDialog() crash hotfix viewer, version 6.6.4.575022, September 2022
  • Profiles Viewer, version 6.6.3.574158, August 2022.
  • Performance Improvement viewer, version 6.6.0.571939, May 2022.
  • Multi-Factor Authentication (MFA) viewer, version 6.5.5.571282, May 2022.
  • Cache+ 360 Capture viewer, version 6.5.1.566335, December 2021.
  • Viewer UI updates, version 6.4.20.560520, June 2020.

All of which means that Kirsten’s viewer is bang-slap up-to-date with the Lab’s official release viewer code-base at the time of writing this overview.

For many, the chief updates in the above list will be the Performance Improvements, which (as with other viewers incorporating the Lab’s improvements) bring a significant FPS boost to most systems – notably with ALM enabled, but frequently with ALM+Shadows enabled); together with the 360-degree snapshot capability.

Performance Improvements / Changes

The Performance improvements contained within Kirsten’s 1725 actually break down into two categories:

  • The primarily under-the-hood improvements from Linden Lab which come via the Performance Improvements viewer as defined above,
  • The Graphics Improvements developed by Beq Janus and first released in Firestorm 6.5.3 in March 2022. These were submitted to Linden Lab and have been incorporated into the Performance Floater / Auto FPS t viewer, which at the time of writing this article was at project viewer status, and from which they have been pulled into Kirsten’s S23 1725.

Those wishing to take a deeper look at the Graphics Improvements floater and its options can do so via my Firestorm 6.5.3 review – but please note that while the functionality present within Firestorm is largely the same as for the official viewer /Kirsten’s viewer, the layout of the floater is slightly different. For completeness, the following is just a brief outline of the floater and its panels as found within the official viewer / Kirstens viewer:

The Firestorm-developed Graphics Improvements floater, as found with Kirsten’s Viewer (and the Lab’s Performance Floater / Auto FPS viewer)
  1. Your current frame rate, which can be adjusted through changes in the Graphics Settings panel. Note that my FPS is shown as running at a maximum of 60 FPS as I have Vsync enabled, which limits frame rates to the screen refresh rate (60 Hz).
  2. Displays the most commonly-used graphics settings (but not all – the Vsync option, for example, is absent and must be accessed via Preferences→Graphics) which can impact frame rates.
  3. Lists all the avatars your viewer is currently rendering, and presents the time is takes to render them in microseconds (µs – a millionth of a second).You can use this panel to select individual avatars and select whether or not they are always fully rendered or never fully rendered.
  4. Provides a breakdown of your avatar’s attachments and their render time / cost, and allows you to remove “laggy” items.
  5. Provides a breakdown of your avatar’s HUD attachments and their render time / cost, and allows you to remove “laggy” items.
  6. Presents the “Auto FPS” capability (several of the options found in the top bar of the Firestorm version of the floater as described in my review above) together with distance settings for rendering avatars in full detail and between which the auto-FPS will attempt to function.

Kirsten’s Viewer Updates

Build 1725 also includes a lot of changes from Kirsten as well. This can be split between the “visible” and the the under-the-hood, which together add up to a lot of work on Lee’s part to completely overhaul the viewer’s code and add multiple subtle but worthwhile changes.

The visible updates include:

  • Use use of gradients in floaters an panels to add a “softness” to them which helps them feel more a part of the viewer and the rendered scene behind, rather than sitting like a floating rectangle completely obscuring the view beyond.
  • Subtle, but appreciable updates to some – but not all – of the toolbar button icons.
Kirsten’s Viewer toolbar buttons showing the updated icons used with some
  • A refactoring of the AO floater to clean-up issues of buttons overlaying text within the panel.
  • 1725 offers three new viewer skinning options:
    • Linden – speaks for itself, for those who prefer the look of the official viewers.
    •  Pewter – the default, and a really nice take on the colour of the odd 1.23.x viewer series offering a soft pewter blue which is easy on the eye.
    • Jinx – a more lavender / purple finish semi-mindful of Kokua without replicating it.

Film Menu

Kirsten’s Viewer film menu
The Film Menu is a new menu option to Kirsten’s Viewer which is likely to be useful to photographers and machinima makers – and possibly to those who have the Space Navigator (SpaceNav) 3D mouse available for use with SL.

In short, this brings together options from other menus and Preferences, as will as supplying some custom options, designed to make recording machinima / taking photos easier. These range from the basic hide / show UI elements / HUDs through to adjusting shaders and those nifty options for adjusting how your SpaceNav mouse responds / influences avatar behaviour.

This menu may not be as comprehensive as the likes of similar options from in Black Dragon or the PhotoTools UI option within Firestorm, but it is still a good selection of functions and toggles that can be easily called up when filming / photographing a scene  – although as a photographer myself, I’d perhaps like to see a few additions to make the menu a little more usable to those of us (the majority?) who prefer to take stills shots (e.g. the ability to de-render all avatars from a landscape shot, for example). But this is a minor point.

Under-the-Hood

The core amount of work carried out in this build has been the merging with the latest LL code-base, and a major overhaul of the code by Kirsten, as noted in the release description:

Anaglyph Render refactored … System detection totally rewritten to interrogate kernel (not registry or using manifests). Days and Days removing old code and going line by line improving performance. And I seriously mean that analysing each if/else statement and function for even the most minute tweak.
Finally, this is built with full optimisation and link time code generation.

Feedback

Kirstens Viewer has always offered good performance and crisp rendering, and the incorporation of the Lab’s updates (and those modified from Firestorm), together with the work put in by Kirsten in refactoring the code means that S23 1725 is one of the slickest performing viewers  I’ve used – although I have little doubt it would not find favour among some SL users due to the lack of RLV or RLVa support, which is a shame.

On a personal note, I do like the new skinning options that come with 1725 – the “old” green default was to me a little too vibrant, whereas the Pewter is a lot easier on the eyes. However, I have been conflicted over the use of gradients on the drop-down menus. As  noted above, the use of gradients on floaters and their panels works well,  but their use in the menus might make menu options harder to see for those with vision impairments.

But, that said, there is no doubt that 1725 is an excellent update to Kirsten’s Viewer, and one that will hopefully put the viewer in a position where it an more readily keep pace with updates from Linden Lab & adopt new features (and those deemed suitable coming out of other TPVs) going forward.

Related Links

Firestorm 6.6.3: performance improvements

On Friday, September 9th, 2022 (PDT), the Firestorm team released version 6.6.3 of their viewer – the first such release since indicating they would be stepping up the cadence of releases with more in the way of “maintenance” cycles in order to better keep place with updates and improvements coming out of Linden Lab with the core viewer code.

Whilst technically a maintenance release, version 6.6.3 is significant for Firestorm users as it includes the Lab’s Performance Improvements code, which for this user yielded noticeable performance improvements in terms of general FPS. In addition, there are a number of additional updates from both the Lab and the Firestorm team.

Table of Contents

As per usual, this article is a not a full blow-by-blow breakdown of absolutely everything in this release, but it does include notes on some of the more significant updates and fixes people are liable to find useful, and some general notes.

For a complete breakdown of changes, please see the official release notes for Firestorm 6.6.3.

Sidebar: some may have received a premature notification of this article, together with an invalid URL. My apologies for any confusion: I boobed – sorry!

Installation

  • There is no need to perform a clean install with this release if you do not wish to.
  • Do, however, make sure you back-up all your settings safely so you can restore them after installing 6.6.3.

Linden Lab Updates

Firestorm 6.6.3.67470 is fully merged up to the 6.6.2 Linden code-base, plus some cherry-picked fixes from upstream, per the notes below.

Maintenance2 Viewer Updates

Viewer version 6.6.2.573358, August 2022

  • Copy and Paste capabilities in the build tools.
  • World  Map Legend: can now be hidden / revealed by clicking on the arrows on  the right side Map border.
The World Map Legend can now be hidden / revealed by clicking on the arrows on the right-side border of the World Map
  • Create and ungroup folders:
    • Create:
      1. Select multiple items within an inventory folder using SHIFT and or CTRL-left click.
      2. Right click on any part of the selection and select Create Folder From Selected the menu.
      3. A pop-up is displayed, prompting you for a folder name. Enter a suitable name and click OK.
      4. The folder is created and the selected items moved into it.
    •  Ungroup:
      1. Right click an inventory sub-folder.
      2. Select → Ungroup folder items.
      3. The items in the selected sub-folder are moved to its parent folder, and the subfolder is deleted.
  • Show avatar attachment in Inventory: right-click a worn attachment or HUD and select on of the following:
    • Context menu: Show In Inventory
    • Pie menu: More → Show In Inventory.

Maintenance (M)akgeolli Viewer Updates

Viewer version 6.6.1.572458, June 2022.

  • Edit Shape menu previously included every attachment, slowing down preview thumbnails significantly. With this update, only rigged attachments are displayed, in addition to prior avatar preview thumbnails .
  • Assorted fixes and UI tweaks.
  • Improved mouse responsiveness in situations where previously it would over-react to inputs.

Performance Improvements

Viewer version 6.6.0.571939, May 2022.

  • This update should see reduced image decoding time, decreased frame stalls and decreased initial font rendering time, and the viewer should feel generally more responsive.
  • These changes include updates to Vsync (vertical synchronisation):
    • Vsync can now be toggled on / off via Preferences → Graphics → Hardware Settings.
    • When enabled, Vsync will synchronise (/cap) frame rates to your monitor screen refresh rate (e.g. if you have a 60 Hz screen, FPS will be capped at 60 fps) and should deliver smoother game-play.
  • The Performance Improvements viewer also includes the MeshOptimizer Project .
    • By default, this replaces obsolete GLOD’s mesh simplification in the mesh uploader with the newer and more powerful MeshOptimizer package to provide better level of detail (LOD) modelling during the upload process.
    • Note that as an option, Firestorm also retains the GLOD capability – see below for more.

Tracy integration Viewer Updates

Viewer version 6.4.23.563771, November 2021.

  • This update adds the Tracy Profiler to the viewer to help developers interested in or working on performance improvements. For developers/self-compilers:
    • Running autobuild configured with –tracy will enable the telemetry.
    • At any time while running the telemetry recording can be disabled/minimised by deactivating it using the Developer menu entry profiling/telemetry → Profiling .
  • It contains no other user-visible changes.

Firestorm Updates and Improvements

UI Updates and Improvements

Notecards – Font Style, Size and Colour

Firestorm 6.6.3 brings the following capabilities to Notecards:

  • Set the font style and size:
    • Style: one of San Serif, Monospace, Scripting or Cascadia Code.
    • Size: one of Monospace, Scripting, Cascadia Code, Small, Medium or Large.
    • These can be set via Preferences → User Interface → Font → Notecard Editor Font drop-downs.
The new Notecard font options in Firestorm’s Preferences
  • Set the colour of: a notecard background, text, cursor and highlighted text.
    • Set via Preferences → Colors → Miscellaneous → Notecard Colors .

Note: these setting will only apply to notecards you view in Firestorm. Other users will see the notecards you send in whatever font / colours (if the latter can be set should the FS code be adopted by other TPVs) set within their viewer.

Other UI Updates
  • Inventory:
    • It is now possible to open Inventory folders in their own floaters. Right click an inventory folder → Show in new window.
    • The selection count is  now given when deleting multiple items from inventory (FIRE-31816).
With Firestorm 6.6.3 you can open an inventory folder in its own floater
  • The Create Landmark floater (menu bar → World → Landmark this Place) will now open centred on the viewer window by default.
  • 360-degree snapshot floater should now open at last-used quality setting  in a session.
  • Region Details → Region should now:
    • Show the correct length of the region name text (no truncations).
    • Report the correct grid position for the region.

Avatar and Appearance

  • Avatar:
    • The avatar should now turn the full 180-degrees when editing appearance (FIRE-31959 / BUG-232502).
    • All mesh bodies/objects should now show in the shape editor previews (FIRE-31966 / BUG-232503).
    • Animesh attachments should no longer show in shape editor previews.
  • Appearance:
    • Attempted fix for mesh attachments sometimes vanishing after teleports which should either fix / reduce the number of cases where this may occur (FIRE-31906).
    • Update to the warning given when attaching rigged meshes to HUD.
      • The new message reads: “An attachment named ”[NAME]“ contains rigged mesh but is attached to the HUD point ”[HUD POINT]“,/a>
      • Attaching rigged meshes to HUD was never supposed to be supported, per BUG-232489.
      • Also see: FIRE-31955.

Building and Scripting Updates

GLOD Option In Mesh Uploader

As noted above, Linden Lab introduced Mesh Optimizer as a new way to generate improved level of detail (LOD) models for mesh uploads. However, this can lead to higher upload costs and can cause issues in maintaining UV layout. To help prevent issues Firestorm 6.6.3 retains GLOD alongside of Mesh Optimizer.

To this end the Firestorm mesh uploader presents the following options when specifying a model’s LOD:

  • Load from file: Manually upload .DAE files for models at any level of detail. This enables you to control how your model looks at each level of detail, preserving key visual features that the automated algorithms may otherwise distort. If the viewer could “auto-detect” lower LOD models when it first loaded the model, these will be shown in the corresponding LOD “slots” here.
  • Generate Auto: Generate a new model at the currently previewed level of detail based on the model you uploaded. This method currently defaults to using the sloppy method and tries to set a target number of triangles based upon the high LOD. This is the method applied when first selecting your model if no auto-detected LODs are found.
  • Generate Precise: Uses the newer method (Mesh Optimizer) to construct a LOD model. This is more accurate than the “sloppy” method but will result in a more detailed model. Target triangle settings and thresholds are very loosely adhered to.
  • Generate Sloppy: Uses the newer method (Mesh Optimizer) to construct a LOD model. The “sloppiness” relates to the accuracy of the result compared with the original. Target triangle settings and thresholds are very loosely adhered to .
  • Generate Reliable: Uses the older method (GLOD) to construct a LOD model. This method is what we have been used to in the past; it gives reliable results based upon the target settings.

For more information, please refer to: Mesh Upload – Level of Detail.

Other Building / Scripting Related Updates
  • The “remaining capacity” LI count has been returned to the Edit / Build floater.
  • Flip texture scale buttons should no longer “magically jump” when switching texture modes.
  • The animation preview window should now have a link to the correct wiki page (FIRE-31836).
  • Full bright rigged meshes should now correctly display as full bright.
  • Full bright transparent objects should no longer render as solid when using highlight transparent – CTRL-ALT-T (FIRE-31986).
  • 100% transparent objects on HUDs should now show when highlighting transparent – CTRL-ALT-T (FIRE-31917).
  • The Firestorm Bridge can now display object rez time with the Script info in extended info mode (enabled via Preferences → Firestorm → Build 2 → Enable extended script info details).

Other Updates of Note + Key Fixes

Third-Party Library + RLV Updates

  • FMOD Studio updated to version to 2.02.07.
  • Updated Collada with a C++17 compatible version.
  • Firestorm 6.6.3 is running Restrained Love API RLV v3.4.3 / RLVa v2.4.2.67470, and includes a fix for focus going unexpectedly to menu bar after calling llMapDestination with “@showworldmap=n” (FIRE-31920).

Linux Updates

  • 3p Library Updates:
    • Boost updated to boost-1.72-linux64-222121224.
    • Collada updated to colladadom-2.3.222130404-linux64-222130404.
    • Curl updated to curl-7.81.0.222121724-linux64-222121724.
    • Libxml updated to libxml2-2.9.4.222130358-linux64-222130358.
    • Meshoptimizer updated to meshoptimizer-0.16.222121104-linux64-222121104.
    • Minizip updated to minizip_ng-3.0.2.222121607-linux64-222121607.
  • New Simple DirectMedia Layer-2 (SDL2) support for Linux to future-proof Firestorm, providing better low-level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. See the SDL2 Documentation.
  • The Linux viewer now uses xdg-open ahead of x-www-browser, as requested in FIRE-31929.

OpenSim Updates

There are no OpenSim updates with Firestorm 6.6.3.

Key Fixes

  • FIRE-31852 – Modified hotkey gestures should no longer play from any window.
  • FIRE-31823 / FIRE-31648 – torn-off menus should now correctly update enabled/visible state
  • FIRE-31882, FIRE-31896 / BUG-232463 – The main menu bar should no longer become the focus when minimising docked floater or after changing graphics preset
  • FIRE-31913 – CTRL+Tab should now correctly switch to the active floater.
  • Crash fixes:
    • FIRE-31818 – Firestorm should not longer crash when inspecting a Linden tree.
    • FIRE-31942 – Firestorm should no longer crash when taking a 360 snapshot when “Improve graphics speed” is enabled – note that this may mean that slower machines timeout during a 360 snapshot, so a new debug setting FSUseCoRoFor360Capture – Use co-routine to extract 360 photos – has been added. By default, this is set to False to prevent crashing. Setting it to True may result in crashes.
    • FIRE-31473 – “Internal Error”/“Uncaught Exception”.
  • Again, please refer to the 6.6.3 release notes for the full list of fixes with this release.

Feedback

As noted towards the top of this article, Firestorm 6.6.3 is the first release of the viewer since the Firestorm team moved towards a faster release cadence, allowing the viewer to pretty much reached parity with the official viewer, which should ease matters of parity going forward, assuming a 6-8 week release cadence can be maintained – and hopefully, it will be.

Probably the most significant inclusion in this release is that of the Lab’s updated viewer code and thread handling, intended to improve general performance. As I noted at the time this code reached release status in the official viewer, this code gave me an average boost of around 20 fps compared to a version without the improvements; in comparing Firestorm 6.5.6 and 6.6.3, I noted a similar fps boost. This is also the first viewer I’ve ready played around with the updated Vsync functionality, and have found that it does offer a far smoother experience for me when flycamming.

Elsewise, I’ve not had a a lot of time to test this release, but have found it to be stable during my personal use, so those updating may want to keep an eye on the Firestorm in-world support groups and the Jira for info on any possible issues.

Related Links

Firestorm 6.5.6: maintenance refresh!

 

On Monday, July 25th, 2022, the Firestorm team released version 6.5.6 of their viewer.

This is very much a maintenance update for Firestorm rather than a major release; the focus is very much on bug fixes rather than new features.

That said, it does bring Firestorm closer to the official release viewer, incorporating as t does the April and May official viewer releases code – so with this release, Firestorm embraces multi-factor authentication.

Table of Contents

As per usual, this article is a not a full blow-by-blow breakdown of absolutely everything in this release, but it does include notes on some of the more significant updates and fixes people are liable to find useful, and some general notes.

For a complete breakdown of changes, please see the official release notes for Firestorm 6.5.6.

Installation

  • There is no need to perform a clean install with this release if you do not wish to.
  • Do, however, make sure you back-up all your settings safely so you can restore them after installing 6.5.6.

Linden Lab Updates

This release brings Firestorm up to parity with the following Linden Lab viewer releases:

  • Lao-Lao Maintenance Release viewer (version 6.5.4.570575, dated April 18th, 2022) containing numerous bug fixes).
    • One notable fix in this viewer is for photographers, correcting as  it does – BUG-231868 “[MAINT J+K] 360 Snapshot tool fails to save file to computer (Mac and Windows)”
  • The MFA Release viewer (version 6.5.5.571282, dated May 4th), which rolled multi-factor authentication to the viewer – see below for more.

In addition, Firestorm 6.5.6 includes support for the release of Premium Plus (increased Group allowance, etc).

Multi-Factor Authentication

Firestorm 6.5.6 incorporates Linden Lab’s viewer-side Multi-Factor Authentication (MFA) code. This provides additional security to your Second Life account both through the web (e.g. trying to view your billing info or transaction history, trying to cash out (“process credit”) money out of your account, trying to change the e-mail address associated with your account, etc.), and in accessing your account using the viewer. It is entirely optional, and you do not need to use it if you don’t want to – although usage is recommended.

You can find out more on MFA in general by following the links below:

Inclusion of MFA in a viewer means that anyone who has opted to use MFA

  • Will, the first time they use Firestorm 6.5.6, have to use their preferred authentication method (e.g. Google Authenticator) to generate a new token (6-digit code) and enter it into the viewer when prompted (after entering their user name and password).
The MFA prompt for a token, which will be seen in Firestorm 6.5.6 (and other viewers supporting the Lab’s MFA code) once every 30 days.
    • Note that some authenticators generate their token as 2 groups of 3 digits (e.g. XXX  YYY). Where this is the case, you can enter the code with or without the space.
  • This token will remain valid for 30 days, as noted above, so you do not have to provide a token every time you log-in to the viewer.
    • However, after 30 days, the prompt will once again be displayed at log-in, and a new token code will have to be generated in the chosen authentication method, and entered into the viewer in response to the prompt.

If you have not opted to use MFA, or if you later opt to disable MFA on your account, you will not be prompted to provide any authentication code.

Firestorm Updates and Improvements

Phototools

The Shared Environment button on Phototools works with Firestorm 6.5.6

A minor, but nevertheless issue with Phototools since the introduction of the Environmental Enhancement Project (EEP) capabilities into Firestorm has been the fact that the Shared Environment button (Phototools → Env) has never been properly hooked-up to the EEP controls.

It’s a niggle I pointed to at the time that Firestorm released with EEP incorporated but – and shame on me for not doing so – I never got around to raising a bug report on it.

Fortunately, Spartaco Zemenis did Jira it (see FIRE-31688), with the result that the button has now been properly hooked-in to EEP and clicking it (as with clicking the X button alongside of Personal Lighting) will now revert your viewer’s environment settings to those set for the region / parcel you are current in.

And the difference between the two? X will perform a transition between whatever your current environment settings are and those used within the region / parcel; the Shared Environment button will simple switch the viewer to using the local environment settings without any transition effects.

Skin Updates

  • The Legacy Skin has been removed as a result of being unmaintained for so long.
  • The Starlight and Starlight CUI have been updated, and now includes a fix for FIRE-30839 “Camera window not fully opaque at 1.00 and doesn’t have StarLight & Silver Blue support”.

Other Updates and Fixes

Updates

  • The “Avatars Nearby” list in the performance floater now respects display name/username choice (set via Preferences → General).
  • New physics warning to the mesh uploader when model dimensions are too thin. Mesh-based physics reverts to convex hull when any single dimension goes below 0.5m, so new warning added should this occur:
    • One or more dimensions is less than 0.5m, only hull-based (analysed) physics shapes will work correctly.
  • Debug Setting update: BrowserWebSecurityDisabled – disables web security features in the built-in Web browser.
  • Firestorm Bridge now uses HTTPS by default.
  • BUG-231970 “LOD generation does not trigger a refresh” (also fixed in the lab’s Performance Improvement viewer).
  • FIRE-31074 “Double Click Teleport Stuck On, And Ignoring Modifiers”.
  • FIRE-31552 “Glowing, 100% transparent prims no longer glow”.
  • FIRE-31687 “Overlapped windows when you create a pick on the Places floater”.
  • FIRE-31689 “Wrong folder is shown when creating a LM”.
  • FIRE-31322 “[Linux] Growl notifications do not show in Gnome 41 or Gnome 42 (Desktop Environment)”.
  • FIRE-31758 “RLVa: Area Search shows nametags when restrictions in place”.
  • FIRE-21700 “Full bright not adhering when gamma changed”.
  • FIRE-31719 “Store camera view fails in Flycam mode”.
  • FIRE-31406 “FS 6.5.3.65541 Guidebook pane while loading clips content too much”.
  • FIRE-31472 “When using the Improve Graphic Performance floater some aspects will not work when Framerate Limiter is active”.
  • Nearby blocked avatars should no longer cause the viewer to randomly hang.
  • Adds a warning toast as a reminder when there is a scripted followcam active that might stop a camera reset when trying to use SHIFT+ESC to reset camera view.

Crash Fixes

  • FIRE-31474 “Importing linkset crashes while uploading textures” .
  • FIRE-31653 “Pressing CTRL + F with “banned” list open in any group profile crashes the viewer to desktop”.
  • FIRE-31482 “Crashing To Desktop While Using [Legacy events] Search”.
  • FIRE-31718 “Preprocessor crashes viewer on recursive #include”.

Third-Party Library Updates

  • FMOD Studio updated to 2.02.06 (Windows, Linux, Mac).
  • KDU: updated to v8.2 for Linux.
  • Glib for Linux updated to  2.56.0.220911433-linux64_bionic-220911433.

OpenSim Updates

  • Fixed: FIRE-31567 “[OpenSim] Wrong delayed rebakes on all teleports/login”.
  • Fixed: FIRE-31581 “[OPENSIM] TP between grids on different voice services causes infinite loop”
  • Inventory handling improvements, including:
    • Fix for FIRE-31634 “[Opensim] Inventory doesn’t load on some grids”.
    • Fix for FIRE-31674 “[OpenSim] Inventory validation warning for Suitcase folder”.
    • Allow inventory validation to work in OpenSim with old and grandfathered inventories, without being fatal.
    • Better inventory validation reporting.
    • Make the inventory reporting more user friendly.
    • Make the options for fixing clearer.
    • Make the nagging notification optional.
    • Make sure the correct UUID is used for the inventory library in OpenSim
  • Fixed:  FIRE-31628 “[Opensim] Collisions sounds cannot be disabled”.
  • OpenSim vari-regions:
    • Try to defend against grid owners who insist on misconfiguring to have more the one neighbour per region edge.
    • Fixed Firestorm crash due to abuse of vari-regions.
  • Added Grid Status support for OpenSim “GridStatus” and “GridStatusRSS”  – Top menu bar → Help → Check Grid Status.
  • Reverted some of the changes made to prevent calling card duplication, as the method has changed and the viewer is now responsible for creating calling cards after friendship has formed.

Future Releases

In the past, the Firestorm team has tried to maintain a two-month QA cycle: starting a month after a release, QA on the nest would start with beta testing. This would be followed in the 6th week of the beta cycle by the issuing of a “Release Candidate” for additional testing the the Firestorm Preview Group. Due to the numbers involved in the Preview Group, issues would be found very late in the QA cycle, leading to delays in the release being made.

To try to prevent this in the future, Firestorm is moving to a process of pre-release building being issued to the Preview Group on a weekly basis, monitored by the QA team, working with the Preview Group users in determining what is a bug that should be reported vs what may be an artefact of something unrelated, like a user setting, that can be corrected without the need for exhaustive bug reporting and testing. This will hopefully result in a more frequent release process.

Related Links

Profiles Viewer reaches RC Status in Second Life

via Linden Lab

In June 2019, Linden Lab released the Legacy Profiles Project viewer, the first step in moving user Profiles back into a viewer floater that does not utilise the web-based profiles that have been in place for the last decade(ish) – see SL Legacy Profiles project viewer.

At the time, it was hoped that the project to move profiles back “into” the official viewer would be relatively easy. However, three years have passed, and it is only now that the work has moved forward.

There are multiple reasons for this being the case: pressure of work elsewhere, the need for back-end updates that were interrupted by the migration to AWS, and so on. So, there was probably an enormous sense of relief at the lab when, on July 21st, 2022, the Profiles Release Candidate (RC) Viewer could finally be issued for users to take a look at ahead of it moving forward to de facto release status.

As with in-viewer profile floaters, this one presents a panel with a series of tabs:

  • Bio – for the user’s / avatar’s biography.
  • Feed – providing a view of the user’s web-based Profile Feed.
  • Picks: the familiar selection of 10 favourite places / other information the user wants to display in their profile.
  • Classifieds: for any classified ads the user has created.
  • Real Life: a further tab the profile owner can use to provide any additional information they wish (it actually does not have to be “real life” related, which is why I whish the Lab would follow the lead of others and call this “Additional Info”, or something, and let users decide how they want to use it.
  • My Notes: a section in which notes can be written about a profile and which can only be seen by the person writing the notes.
The new official viewer Profile panel. On the left: as seen b the account holder, with an editable description field. On the right: as seen by other users. Note the two Action drop-down menus as well. Click for full size, if required

Of these tabs, it is very likely that Bio is going to be the most jarring to anyone familiar with viewer-based legacy profiles, as it presents a very different layout compared to other profile floaters – and also includes some useful extras.

The basic info on the profile owner – picture, partner status and age are rather untidily squished into the top left corner of the tab. This is to allow more room for users to write something about themselves / their avatars. While this is welcome – the “traditional” legacy profile always seemed a tad limiting for expression. However, depending on whether or not this layout is adopted verbatim aby TPVs, I do have a small niggle.

People tend to spend considerable effort in getting their bio info laid out in their Profile, and such is the nature of this floater, such work tends to be lost. For example, in Firestorm, Cool VL, etc., my own bio is relatively centred within the provided window – but here, as shown in the image above right, it appears oddly ranged to the left.

This may sound like nit-picking, but it could actually carry some weight: people put great store by what they see in a profile almost as much as in what they read, and what may come over as a slapdash, hard-to read layout on account of different floater window sizes (again, assuming TPV don’t simply integrate this profile floater design into their offerings, rather than continue with their own) might lead to unfair judgements.

On the positive side, this tab includes up to three handy drop-downs:

  • Show / Hide: (visible to the profile owner only) – sets whether or not the profile is listed in Search, and is tidier than the old check-box.
  • Actions: a context-sensitive menu available to both the profile owner and those viewing a profile, with the menu options (shown left and right in the image above) dependent on who is viewing the viewing the menu.
  • Tools drop-down (person viewing a profile only): provides access to “action” options the person viewing the profile may wish to take in reference to the owner of the profile, as shown below:
The additional options available from a user’s profile for those viewing it

The remainder of the tabs in the floater are really straightforward and require no real expansion here. As per current legacy profiles, when editing your own, editable fields are show in white for text entry.

What one thinks of the overall layout / appearance is subjective; outside of my little niggle on how information is displayed between different styles of profile floater (again, assuming some TPVs keep to the more “traditional” profile floater design rather than adopting this layout), I’ve no issue with this approach. And like I noted above, the additional drop-down options presented through it are handy to have.

Related Links

Looking at the SL Performance Improvements Viewer

via Linden Lab

The Performance Improvements Viewer has been the default release viewer from the Lab for the last couple of weeks, and the code is starting to find its way to TPVs. This is a viewer specifically designed by LL to provide a smoother user experience in terms of things like rezzing / rendering times, better FPS.

The viewer represents a lot of work on the part of the Graphics team to improve data handling (including moving various data elements between threads, removing low update processes to their own threads rather than having them stall the main rendering threads, etc., all of which is intended to make the viewer feed more responsive as you move / teleport around SL.

As such, I decided to try a series of basic comparative tests between the Performance Improvements viewer, a version of the official viewer without the code updates and Firestorm (as my TPV of choice at the moment), just to gain a rough indication of how the changes made to the viewer perform. These tests comprised:

  1. Logging-in to my Home location with empty caches, recording the time from clicking the log-in button through to everything loading in my field of view.
  2. Logging-in to my Home location with it locally cached on my hard drive.
  3. Completing a walk around my Home location, recording FPS at the same 9 locations, three times each with Shadows OFF and Shadows ON, and taking an average of all the FPS times recorded.
  4. Teleporting to a busy region (15+ avatars) that is not pre-cached locally (but should be cached at my nearest CDN node(s), given it is a place I visit daily).
  5. Re-teleporting to the same location, now locally cached.
  6. Completing the same walk around the selected location, recording FPS at the same 5 locations, three times each with Shadows OFF and Shadows ON, and taking an average of all the FPS times recorded.

The table below summarises my findings:

Firestorm SL Viewer – No Improvements Code SL Performance Improvements Viewer
Home log-in uncached 42.06 sec 27.94 sec 24.00 sec
Home log-in cached 22.34 sec 21.98 sec 20.00 sec
Home walk – no shadows 25.5 FPS 34.5 FPS 53.57 FPS
Home walk – shadows 17.4 FPS 21.4 FPS 42.8 FPS
Uncached location TP 55:41 sec 49.37 sec 44.27 sec
Cached location TP 46:61 sec 35.03 sec 17.57 sec
TP location – no shadows 28.9 FPS 29.25 FPS 45.54 FPS
TP location – shadows 13.5 FPS 22.8 FPS 38.8 FPS

Obviously, there is always going to be a lot of subjectivity in such tests like these, which are dependent upon factors such as the specs of the system running the viewer(s), what else is running at the same time, Internet connectivity with the SL services and to the nearest CDN node, etc. However, in carrying out the comparisons above, I attempted to achieve something of a common basis by:

  • Using the same settings across the three viewers (e.g. camera and graphics pre-sets; the same RenderVolumeLOD factor; the same attached EEP settings for a consistent environment; the same complexity setting & max no. of non-imposters, etc.) – with the acknowledged caveat that the Performance Improvements viewer would automatically default to Shadows ON for me, based on my system’s capabilities, so needed some adjustment during some tests.
  • Ensuring all tests were carried out back-to-back to minimise extensive changes due to avatars of different complexity coming  / going / moving around.
  • Closing all other apps I had been running on my PC to maximise the available resources available to all of the tests.

In addition, and for completeness (and as requested by Lance in the comments) – here are my system specifications – which are also available in the link on the right column of this blog.

But even while subjective, I think the results tend to speak for themselves, and there is no denying the qualitative frame speed increase with the Performance Improvements viewer, particularly with shadows enabled.

How quickly these updates are adopted by TPVs is down to their release schedules; but for the official viewer, this marks the first major release of updates intended to improve performance that is currently in flight, with the Performance Improvements Floater viewer (which includes the Lab’s take on auto-FPS function functionality similar to that found in Firestorm) currently at product viewer status.

The Performance Improvements viewer can be downloaded via the Viewer Download page, and the release notes are here.

Catznip R13 maintenance 1 release overview

In keeping with the statements made on the release of Catznip R13 (which is overviewed here), the Catznip team released a Maintenance update to the viewer on Sunday, May 8th, 2022, which is available for Windows (32-bit and 64-bit) and Mac OSX ((10.11 or later).

As work is progressing well on the next full release (R14), this maintenance update – called simply Catznip R13.1 – is not packed with news features and options, but does, in keeping with its function as a Maintenance release, offer some nice additions, some fixes, and one or two new items.

As always, full details of the changes and updates in this Catznip release are available through the official release notes; what follows is a general summary of the more interesting updates.

Linden Lab Derived Updates – MFA

Catznip R13.1 incorporates Linden Lab’s viewer-side Multi-Factor Authentication (MFA) code, which recently reached the Lab’s official release viewer (see: Lab extends MFA to the official viewer for Second Life).

MFA provides additional security to your Second Life account. It is entirely optional – you do not need to use it if you don’t want to – but it currently provides additional account security when trying to access particularly sensitive information about your Second Life account (e.g. trying to view your billing info or transaction history, trying to cash out (“process credit”) money out of your account, trying to change the e-mail address associated with your account, etc.).

You can find out more on MFA in general by following the links below:

Inclusion of MFA in a viewer means that:

  • Anyone who has opted to use MFA will, every 30 days, will be required to provide an MFA token in addition to their user name and password when logging-in to SL via any viewer / client supporting MFA.
  • Anyone who has not opted to use MFA, or decides to disable it after initially opting-in, will not see any change to how they log-in to SL via a viewer /client.

For those who have enabled MFA on their account:

  • The first time you use Catznip R13.1 you will have to use your preferred authentication method to generate a new token (6-digit code) and enter it into the viewer when prompted (after entering your user name and password).
The MFA prompt for a token, which will be seen in Catznip R13.1 (and other viewer supporting the Lab’s MFA code) once every 30 days.
  •  Some authenticators generate their token as 2 groups of 3 digits (e.g. XXX  YYY). Where this is the case, you can enter the code with or without the space.
  • Note that the token will remain valid for 30 days, as noted above, so you do not have to provide a token every time you log-in to the viewer.

Catznip Improvements

Group Activation and Accessing Notices

Catznip’s new Group Activation button displayed in profiles of Groups you have joined

This release of Catznip offers two new options for activating a Group tag, and a new option for viewing group notices:

  • You can activate the tag for any Group of which you are a member directly from the Group’s Profile floater, by clicking the Activate button.
  • You can also active the Group’s tag (again, you must already be a member) but right-clicking on the Group’s SLurl when displayed in local chat and selecting Activate from the drop-down menu.
  • You can also use this latter method (right-click on the Group SLurl in chat) to select the Show Group Notices option from the drop-down and view notices.

Teleport History Pruning

Regions come and go in Second Life, and if you spend a fair amount of time hopping around the grid visiting places, it is possible to end up with the Teleport History panel that is full of landmarks that are no longer valid (e.g. because the shop has moved, or the region has changed owners / user, or has gone away completely, etc.). You may also want to ease searching for LMs in history by pruning out those “one off visits” you’ve made.

Deleting LMs from your Teleport History tab in Places

Catznip R13.1 now makes this possible:

  • Open you Teleport History (Me → Places → Teleport History).
  • Either:
    • Right click on the landmark in the history list.
    • Select Delete from the drop down menu.
  • Or:
    • Left-click on the landmark in the history list.
    • Click the dustbin at the bottom of the of the floater.

Conversations Navigation

Catznip R13.1 adds an additional set of keyboard shortcuts to assist in navigating between tags within the Conversations floater:

Action Horizontal Chat Tabs Vertical Chat Tabs
Page to the next tab ALT-Right Arrow ALT-Down Arrow
Page to the previous tab ALT-Left Arrow ALT-Up Arrow
Page to the next tab with unread messages ALT-SHIFT-Right Arrow ALT-SHIFT-Down Arrow
Page to the previous tab with unread messages ALT-SHIFT-Left Arrow ALT-SHIFT-Up Arrow

Mouselook Improvements

Catznip R13.1 adds the following three options to using Mouselook:

  • Allow script dialogues.
  • Do not immediately snap the mouse back to the centre of the screen after a (scripted touch) click.
  • Show the hand cursor while holding down the CTRL key in Mouselook to indicate touchable faces.

Feedback

A small but tidy group of updates well suited to a maintenance release and which ensures Catznip is MFA compliant (which will be required of all viewers / clients in the near future). I admit to particularly liking the Teleport History pruning capability; would that the other viewers I use adopt it – some of my history lists tend to get jammed full of LMs, and purging the lot from outside of the viewer just to start over has never really been ideal.

Again, for the complete list of updates and bug fixes, please refer to the Catznip R13.1 release notes.

Related Links