Firestorm 6.6.8: Profiles, Local Mesh and more

On Monday January 16th, 2023 (PDT), the Firestorm team released version 6.6.8 of their viewer.

This is another release which might be described as more a maintenance update, intended to keep Firestorm in step with the current official viewer code base, together with  focus on bug fixes more than new features.

However, that said, there are some significant updates to be found in this release, both from Linden Lab (as with the incorporation of Legacy Profiles) and also from the Firestorm Team (notably the Mesh Preview Upload by Beq  Janus).

So, without further ado, lets get into things and see what’s what. And please note that as per all my articles on viewer updates and releases, this is not a full blow-by-blow breakdown of absolutely everything in the release; rather, it is intended to highlight the more significant updates and fixes people are liable to find useful, and offer some general notes .

Table of Contents

 

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

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.8.

Linden Lab Updates

Firestorm 6.6.8.68380 is fully merged up to the  Linden 6.6.7 code-base, plus some cherry-picked items from upstream, per the notes below.

Hotfix Releases

  • MFA / ToS Hotfix, viewer version 6.6.7.576223, November 2022 – ensures the viewer correctly required a double-entry of MFA tokens on launching the viewer and on accepting a Terms of Service update.
  • Modal Hot Fix, viewer version 6.6.4.575022, September 2022 – correcting a crasher within the viewer code.

Maintenance Nomayo Viewer Updates

Viewer version 6.6.5.575749, October 2022.

  • New Mini-Map options: Right click Mini-Map → North at top, Camera at top.
  • Hovering over the Mini Map now shows ownership information for the given parcel.
  • Fixed the right click freeze – BUG-232466FIRE-31927.
  • Fixed Texture position changes while using a HUD only updates after zooming out, BUG-232364.
  • Landmarks should now work more like other assets for cut/copy actions.
  • Animation uploads have joint name fixes.
  • Improved media playback responsiveness.
  • Crash fixes.

Nomayo Hotfix

Viewer version 6.6.6.575990, October 2022.

  • Fix for a transparency “alpha” blending issues in the above viewer release. In cases of many layers of textures that included transparencies, this would cause some of the lower layers to not render at all.

Maintenance Izzara Viewer Updates

Viewer version 6.6.4.574885, September 2022.

  • Improved reporting of spam and phishing attempts from the Group Chat and IM window with the addition of Report Abuse right-click option
  • Improved land sale option: when selling land, Sell land to “specific person” will show your own name in the “Near Me” list in the people picker – BUG-231954.
  • Ability to restrict media on a prim to this parcel via World → Parcel Details → Sound → Obscure MOAP – BUG-10416.
  • Media on a Prim fixes: media will no longer loop when it should not; audio for media no longer plays when the object is edited.
  • Fixed the Search floater opening without appropriate search results after performing a search from the NavBar
  • Fixed the “360 snapshot” floater not being refreshed after second clicking on the “World” → “360 snapshot” menu item.

Legacy Profiles

In 2022, Linden Lab made the formal transition back to present avatar profiles through an integrated floater within the viewer with the promotion of viewer version 6.6.3.574158 was promoted to de facto release status in August of that year (although the web-based version of profiles can still be accessed – with reduced functionality – via my.secondlife.com).

With Firestorm 6.6.8, Firestorm incorporates the Lab’s Legacy Profiles code into their existing Profiles floater, with some changes to the latter as noted below.

Firestorm Profiles floater: as it was (l) and as it is with Firestorm 6.6.8 (onwards) (r)
  1. These tabs / options / buttons have been renamed, but the functions remain the same, unless noted below. Note that Interests has been removed.
  2. The Web tab is renamed Feed and displays the user’s Second Life Feed (under my.secondlife.com).
  3. 2nd Life and 1st Life tab images:
    • The 2nd Life Profile picture has a revised aspect ratio.
    • Within your own profile: clicking the image swatch in either will open a texture picker, allowing you to select an image for either.
    • Within your own 1st Life tab are three buttons:
      • Upload Photo – allows you to upload an image from your computer to the 1st Life Tab to preview it (image must still be uploaded to inventory and applied, if it is to be saved & used).
      • Change Photo – opens a texture picker, allowing you to select an image from inventory to add to your 1st Life tab.
      • Remove Photo – removes any displayed image from the swatch.
  4. Display Name / Multi-option button:
    • When viewing your own Profile, the tool button to open the Display Name edit fields is opened.
    • When viewing the Profile of a Friend, displays a pop-up with the following check-box options:
      • See when I’m online.
      • Find me on the world map.
      • Edit, delete or take my objects.
      • Note that active options will appear in white on the displayed profile, and inactive will appear greyed out, for eas of reference.
    • When viewing the Profile on a non-Friend, this area is blank.
  5. Unknown: a new status option (alongside Online and Offline), displayed when the person concerned is not someone you have friended, and who has their viewer set to only show their on-line status to friends.
    • In addition, and to reduce drama, if a Friend is hiding their status, they will show as Offline, rather than the status in their Profile being blank.

Firestorm Updates and Improvements

Github Actions

Firestorm 6.6.8 is the first set of releases built through the GitHub Actions infrastructure rather than depending on individual developers. This is a significant shift in emphasis for viewer development – and one mirroring moves being made in the same direction by Linden Lab. Benefits include removal of single-person for feature development and providing a more reliable, repeatable build mechanism.

Building and Scripting – Local Mesh (Beta)

Firestorm 6.6.8 introduces Local Mesh as a beta implementation. Developed by Beq Janus, Local Mesh is intended to allow users able to upload mesh to preview their objects in-world (using a “surrogate” object, which can be as simple as a cube prim), and also see edits made to the .DAE file in real time.

  • The primary aim of this capability is to allow creators check their creations without having to go through the unpredictability of access to Aditi (the Beta grid) for such checks / tests, as well as presenting that real-time viewing of edits to the .DAE file.
  • The capability works for unrigged mesh, worn rigged mesh and Animesh, and once rendered, the object can have textures and materials applied for testing, as required.

Local Mesh follows the same basic principles as Local Textures, notably:

  • Meshes are only visible to you through the viewer instance used to apply them.
  • Meshes only remain visible to you during the current log-in session. A relog will both clear the list of Local Mesh Assets and reduce the “surrogate” object for any local mesh you have “rezzed” in-world to a basic shape.

Local Mesh is accessed via the Build menu: Build → Local Mesh, which in turn opens a new floater, comprising 3 tabs.

The Local Mesh floater. Credit: Beq Janus
Local Mesh Assets Tab

Displays the current list of .DAE files obtained from your computer which are available for potential rendering in-world to view. Objects are listed in the middle section of the tab, together with their assigned LODs. When more that one file is listed, the highlighted file name is the one that will be acted upon.

This tab includes the following buttons:

  • Add: opens a file picker and allows you to navigate to and select a .DAE file from your computer. When the file is selected and Open in the picker is clicked, the file is added to the list of available .DAE files.
  • Remove: will remove the highlighted .DAE file from the Local Mesh Assets list and should clears any corresponding in-world object.
  • Reload: Re-loads the selected file in the Local Mesh list and reapplies it to the Mesh object inworld so use this to applies the most recent edits to your .DAE file to your in-world object.
  • Clear: Reverts a selected Local Mesh object inworld to it’s normal state (so, if a cube prim was used, the object will revert to a cube).
  •  Apply: if you have a suitable mesh in-world yo can select it and click this button to apply the properties of the file highlighted in Local Mesh Assets to it.
  • Rez Selected: will prompt you to rez a primitive in-world (via the Build floater, and then applies the properties of the file highlighted in Local Mesh Assets to the rezzed prim.
The Local Mesh workflow
Log Tab
  • Logging for Local Mesh
  • If the status of your Local Mesh file in the Local Mesh Assets list shows “Error” instead of “Active”, check the log for the cause of the error.
Settings Tab
  • Assume scale is in metres:- Ignore the cm scale units used by tools such as Maya,
  • LOD Suffixes: Choose a standard or manually edit
    • SL Standard – Lowest is LOD0, High has no suffix
    • Game Engine Standard – Unity.UES etc, Lowest is LOD3, High is LOD0
    • LOD names – English LOD names, Lowest is LOWEST, High is HIGH
Converting a Local Mesh to a Local Animesh
  • Right-click → Edit the required local mesh (in-world or worn).
  • Add your animations and control scripts to the object.
  • Select the Features tab in the Build floater and check the Animated Mesh option.
Additional Information

For a complete overview of Local Mesh functionality, please refer to Announcing Local Mesh, by Beq Janus, principal developer of the capability, and which can be found on her blog – which is a must-read for anyone interested in content creation and the technicalities of Second Life. In addition, the ? button of the Local Mesh floater will display web-based Help pages based on the floater tab in which the ? button is clicked.

Building and Scripting – General Updates

  • Build Floater: 
    • Face selection cycle now starts at face 1 instead of face 0 – FIRE-32282.
    • Shift+clicking the link/faces button now includes the next face/link into the selection (Build → Select Elements → “Include next part or face” / “Include previous part or face”) – BUG-232757.
  • Physics updates:
    • Mesh physics options in mesh upload preview floater
    • The bounding box now sets a physics cube around the entire mesh even if it is multi part in the mesh uplaoder.
    • eshes with a hull based (non triangle) user physics will not be convexified when scaled to below 0.5m – BUG-232869 and FIRE-32359.
  • Animation upload preview on own avatar should no longer fail when the Firestorm AO is enabled – FIRE-32315.

Continue reading “Firestorm 6.6.8: Profiles, Local Mesh and more”

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.