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.

360 Capture viewer now de facto SL release viewer

via Linden Lab

Note: for those wishing to know how to embed 360º snaps taken with this viewer / capability into WordPress posts and pages, please refer to Embedding Second Life 360 images directly into WordPress.

On Wednesday, December 15th, Linden Lab issued the Cache +360º viewer as the de facto official viewer release, marking the last viewer promotion for 2021.

As the second part of its name suggests, this viewer is designed to capture and produce 360º degree panoramic still images of the location / environment around your avatar / camera position (if freecamming) in a format that makes them suitable for viewing through platform supporting 360º panoramic images (including Flickr). It does this by simultaneously taking six images around the current camera position – one each at the four cardinal points, plus one directly overhead, and one directly looking down, all of which are then “stitched” into an equirectangular projection image.

The first iteration of 360º photo capability first appeared in the official viewer in October 2016, and came with a certain amount of complexity involved. Later iterations of the viewer improved on this, but the viewer continued to be hit by conflicts with the Interest List, and these and other issues forced work on the capability to be pushed into the background.

However, work resumed earlier this year, and as I reported at the time, an updated project viewer was issued in September 2021 (see Lab Issues Updated Projected 360 Capture Viewer). This release represents the latest iteration of that version whilst also being combined with the former Simplified Cache RC viewer, of which more below.

The 360º capture capability is utilised via a dedicated floater which can be accessed via the World menu and / or a dedicated toolbar button and / or a link in the original snapshot viewer and / or by pressing CTRL-ALT-SHIFT-S

Accessing the 360º snapshot floater (this can also be done via CTRL-ALT-SHIFT-S or by expanding the standard snapshot floater to show the full preview and clicking the Take 360º snapshot link in the lower right corner of the preview panel

Actually taking an image comprises a few simple steps:

  1. Position your camera.
  2. Select the image quality – for finished images you’ll need to set High or Maximum quality using the radio buttons.
  3. Click the Create 360º Image button to generate a preview in the floater’s preview panel.
  4. Click on the preview image and drag it around to ensure what you’re seeing is what you want / that things like textures have actually rendered correctly.
  5. Check the Hide All Avatars option, if required – this will cause the process to include all avatars present (it will not alter their in-world rendering).
  6. When you are satisfied with the preview, click Save As… to save it to your hard drive, renaming it if / as required.

Just remember that if you change the image quality, you must also click Create 360 button to update the preview AND image capture process to the new image quality, before click Save As… again.

Note that the required metadata to have image correctly show in Flickr and FB / Meta (and others) is included in the image – so if you save it to disk and upload it, it should render correctly, as per the image below).

An “unwrapped” Maximum quality 360º image captured using the Project 360 Capture viewer, showing the 6 captured images “stitched” together (click on this image to see it in 360º format in Flickr)
This viewer also included updated code for the viewer’s cache. This code is an update to the Simple Cache viewer originally issued in March 2021, but which to be rolled back after it was found to have a number of significant bugs, such as BUG-230337 “Simplified cache viewer is ignoring cache path” and BUG-230295 “Cannot upload images on the Simplified Cache Viewer”.

In particular the code replaces the VFS cache system used to save local copies of frequently used assets such as meshes, sounds and animations with a simplified cache, and should make loading / reuse of these assets smoother.

Given the level of interest that has been shown in the 360º Capture viewer, this code will hopefully find its way into TPVs in relatively short order, holiday period allowing. In the meantime, the official can be obtain through the official viewer download page.

Lab issues updated Project 360 Capture viewer

via Linden Lab

On Friday, September 3rd Linden Lab issued the latest update to the 360º Snapshot viewer – now called the Project 360 Capture viewer – with the release of version 6.4.23.563579. It represents the most significant update to this viewer we’ve seen, and it comes after a significant pause in its development.

As the name of the viewer suggests, it is designed to take 360º degree panoramic images of the environment around the camera. It does this by simultaneously taking six images around the current camera position – one each at the four cardinal points, plus one directly overhead, and one directly looking down. These are then “stitched” into an equirectangular projection image (e.g. one that can be projected as a sphere), which can then viewed through a suitable medium – such as Flickr (other mediums are available!).

An “unwrapped” Maximum quality 360º image captured using the Project 360 Capture viewer, showing the 6 captured images “stitched” together (click on this image to see it in 360º format in Flickr)

The first iteration of this viewer appeared almost five years ago, in October 2016, and came with a certain amount of complexity involved – including the need to install a local environment for previewing captured images. Later iterations of the viewer improved on this, but the viewer continued to be hit by conflicts with the Interest List.

In simple terms, the Interest List lightens the load – objects, textures and updates to active objects, etc., – the viewer has to process when rendering. It does this by ignoring things that are not in the camera’s direct field of view. This is why, for example, when you turn your camera away from the direction you are looking, it can take time for objects and their textures to render. However, for a 360º-degree image, everything needs to be properly rendered in the viewer – whether in the current field of view or not. Overcoming this problem has proven difficult – and it (admittedly with other factors also coming into play) caused work on the viewer to be halted for an extended period.

This version of the viewer overcomes most of these issues, and makes the creation of 360º snapshots straightforward through the use of a new 360 Snapshot floater that is independent of the “standard” snapshot floater, and the use of some additional back-end code to overcome the Interest List. This new floater can be accessed from within the Project 360 Capture viewer in one of four ways:

  • Via World 360 Snapshot.
  • By pressing CTRL-ALT-SHIFT-S.
  • By enabling the 360° snapshot toolbar button in one of the toolbar areas.
  • By expanding the standard snapshot floater to show the full preview and clicking the Take 360 Snapshot link in the lower right corner of the preview panel.
Accessing the 360 snapshot floater (this can also be done via CTRL-ALT-SHIFT-S or by expanding the standard snapshot floater to show the full preview and clicking the Take 360 snapshot link in the lower right corner of the preview panel

The floater itself comprises several elements:

  • The image Quality radio buttons and selection button (labelled Create 360 Image).
    • The quality buttons appear to utilise the viewer’s screen buffer to render the different image types, so Preview appears to use the 128 vertical buffer, while Medium and High use the 512 and 1024 buffers respectively, and Maximum the 2048 buffer (i.e. the full 4096×2048 resolution).
    • When you have selected your preferred quality, click the Create 360 button to generate a preview.
    • If you alter the image quality at any time, you’ll need to click on the Create 360 button again to update the preview / take a fresh image at the new image quality.
  • A checkbox to disable avatar rendering during the image capture process.
  • The preview panel. This will show a rotating image from the current camera position until refreshed, and this image can be manually rotated / panned up and down by clicking on it and dragging the mouse around.
  • The Save As… button that actually saves the image to your hard drive.

To take an image:

  1. Position your camera.
  2. Select the image quality – for finished images you’ll need to set High or Maximum quality using the radio buttons.
  3. Click the Create 360 Image button to generate a preview in the floater’s preview panel.
  4. Click on the preview image and drag it around to ensure what you’re seeing is what you want / that things like textures have actually rendered correctly.
  5. Check the Hide All Avatars option, if required – this will cause the process to include all avatars present (it will not alter their in-world rendering).
  6. When you are satisfied with the preview, click Save As… to save it to your hard drive, renaming it if / as required.

Remember, if you change the image quality, you must also click Create 360 button to update the preview AND image capture process to the new image quality, before click Save As… again.

Once captured – again as noted – images can be uploaded to a suitable display platform such as Flickr – the images contain the necessary metadata that should automatically trigger the 360-degree viewing process (just click on an image in flicker to manually pan around up / down).

An “unwrapped” Maximum quality 360º image captured using the Project 360 Capture viewer, showing the 6 captured images “stitched” together (click on this image to see it in 360º format in Flickr)

General Observations

  • An easy-to-use iteration of the 360º snapshot viewer that brings good quality and ease-of-use to the process.
  • The ability to avoid rendering avatars not only helps avoid issues of rendering / motion blurring when taking a 360º image, it enables the easy capture of landscape images. It also, obviously, allows for the capture of posed avatars if required.
  • There are still some issues in rendering out-of-view (relative to the visible field of view for the camera) items and textures at High and (particularly) Maximum quality images – note the blurring of the vessel name in the first 360 image above.
  • The lowest quality Preview option is simply too blurred to be of real value – perhaps using 256 rather than 128 might improve this (if only slightly)?

Viewer Links

Lab issues Performance Floater viewer for feedback

via Linden Lab

Among their stated goals, Linden Lab is working to improve the user experience with Second Life with a number of projects. One of these is in making the viewer UI and viewer controls more accessible, and as a part of this work, the Performance Floater viewer (version 6.4.23.562625 at the time of writing) was issued as a project viewer with the intention of gaining feedback from users on the changes / options it incorporates and how they are presented.

As the name implies, the Performance Viewer is focused on bringing together various options and controls than can help improve viewer performance, and presenting them through a single new floater called (in difference to the viewer’s name) the Improve Graphics Speed floater.

This new floater can be accessed in one of two ways: via World menu → Improve Graphics Speed or by enabling the Graphics Speed button within a toolbar area. It comprises four button options, together with the viewer’s current FPS provided in large, friendly numbers at the top of the floater.

The Performance / Graphics Speed floater and accessing it

The four buttons open dedicated panels within the floater, each focused on a specific group of settings:

  • Graphics Settings: pulling together the most commonly-used Graphics options from Preferences → Graphics and the Advanced Graphics Preferences floater:
    • Quality and Speed.
    • Draw Distance.
    • Toggles for enabling / Disabling atmospheric shaders and Advanced Lighting Model, together with a drop-down for setting Shadows.
    • A toggle for disabling / enabling water transparency and a drop-down for setting the quality of water reflections.
    • A “Photography” option that most of us will recognise as being the RenderVolumeLODFactor debug setting.
    • A button to open the Advanced Graphics Preferences floater, should further adjustments be required.
  • Avatars Nearby: a set of options related to rendering the avatars around you or in general:
    • The Maximum Complexity slider (from Advanced Graphics Preferences), with the value rounded down to the nearest whole thousand.
    • The option to Always Render Friends (from Preferences → Graphics).
    • A new checkbox for de-rendering all avatars in a scene (toggles Advanced → Rendering Types → Avatars (CTRL-ALT-SHIFT-4) off / on).
    • The radio buttons for showing / hiding avatar name tags (from Preferences → General).
    • A list of nearby avatars, with indicators giving their rendering complexity, colour-coded to denote fiends.
      • Running the mouse over a name in the list will highlight it, and offer an Information icon to open their profile.
      • Right-clicking on a name will bring up options to render them fully or as a “jellydoll” (neutral grey avatar) or remove them from your Exceptions list (exceptions being those set to never / always render, no matter what your Maximum complexity setting).
    • A button directly under the avatar list to open your Exceptions list, where you can again right-click on names and alter their render behaviour.
  • Your Avatar Complexity: a list of worn attachments on your avatar with a guidance on their relative rendering cost, and an option to right-click and on any of them and remove them.
  • Your Active HUDs: a list of worn HUDs, again with a relative rendering complexity indicator and the option to highlight and remove any of the listed HUDs.
The Graphics Setting and Avatars Nearby panels in the Performance / Graphics Speed floater

Prior to the release of this viewer, concerns were expressed at a number of the Content Creation User Group meetings that doing so before the re-working of the Avatar Complexity values through the ARCTan project would lessen the impact of those changes when they are eventually deployed. I’m not sure such arguments hold that much weight, simply because a) a lot of people have already made up their minds about avatar complexity and Maximum complexity, so are unlikely to be swayed by any change in how the values are calculated; and b) those who already take note of avatar complexity and the options for managing them, no matter how the values are calculated.

That said, playing with the viewer did raise a number of niggles / ideas with me:

  • Consistency of terminology: we’re all used to terms like “Quality and Speed” and “Draw Distance” in relation to graphics settings – so seeing these arbitrarily renamed to (the contextually meaningless) “Shortcuts” and “Visibility Distance” is a little disconcerting. I hope that labelling overall – whichever terms are used going forward are made consistent across the viewer.
  • That said, the use of numbers to denote quality settings rather than the “mid” to “ultra” labels, is an improvement, and I certainly hope that it is fed back into Preferences → Graphics.
  • The use of the word “hide” in reference to the Maximum Complexity slider is misleading – avatars are not “hidden” when using this slider, but are still rendered, if only as simplified grey humanoid shapes.
  • It would be useful to have Max No. of Non-Imposter avatars added to the Avatars Nearby panel, as for some this is a preferred method of reducing avatar impact on their system over seeing “jellydolled” (or “greyed” as it should perhaps now be) avatars.
  • The Avatars Nearby panel could perhaps also benefit from some additional explanatory text, such as a more rounded note on Maximum Complexity to help encourage people to use it.

As noted, this is the first iteration of the viewer and floater in order for it to gain some exposure and generate feedback from those interested in trying it. Those who do want to offer feedback on it should do so via the Jira as either bug reports or feature requests, depending on the nature of the feedback.

Links

The Project UI viewer: a look at the new user Guidebook

via Linden Lab

In  May, the Lab issued the Project UI RC viewer, part of the work to overhaul the new user experience and provide greater context and support for incoming users when getting to grips with Second Life and – in this case – the viewer.

At  the time it was issued, I  provided an overview of the viewer based on my own walk-through of the viewer as it was at that time, and notes supplied by Alexa Linden (see: Lab issues Project UI viewer aimed at new users).

Since then, the Project UI viewer has progressed through the RC process, and was promoted to de facto release status in week #25. Along the way, it saw some revisions and additions, including a Guidebook to help new users find their way around the viewer. And it is that Guidebook I’m taking a look at here.

Before getting to it, however, a quick recap on the changes within the viewer previously covered:

  • A new menu option called Avatar, and streamlined / revised right-click avatar context menus.
  • Improvements to the Inventory panel.
  • An updated Places floater.

All of these are looked at in the blog post linked to above.

New User Guidebook

The Guidebook appears to be a case of taking an idea first seen in the Basic version of Viewer 2.0 a decade ago, and greatly enhancing it.

In 2011, the was to provide new users with a simple guide to tackle basic actions such as walking and chatting through a pop-up How To guide accessed via a toolbar button. The problem was that the idea was never really followed through: the How To guide was brief to the point of being ignored, and never fully leveraged.

The new Guidebook takes the same initial approach as the old How To, using a button within the toolbar to open a dedicated panel, samples of which are shown below.

The pages of the new Guidebook relayed to avatar / camera movement –  click for full size

However, it is at this point that all similarities with the How To approach ends, as the Guidebook dives a lot deeper into basic needs – walking, communicating, interacting with objects, an overview of avatar customisation and using avatar attachments, finding where to go in SL and where to meet people. It also offers pointers to various viewer menu options and how things like right-click context menus work.

On first being opened, the Guidebook will display the first of the pages dealing with avatar movement, with each page including “next” and/or “back” buttons. Pages display information clearly and concisely, and good use is made of illustrations.

The Guidebook menu

All of the topics covered by the Guidebook can be accessed directly at any time via the three-bar Menu icon in the top-right of panel, then clicking on the desired topic. This index also includes an option to teleport to a Welcome Back Island – a duplicate of the new Welcome Islands incoming users may arrive at, giving those already in SL the opportunity to hop back to an environment where they can gain a refresher. In addition, some sections within the Guidebook also reference locations within the Welcome Islands that also help new users gain familiarity with Second Life and the viewer controls.

Obviously, not everything can be covered in a single guide like this, and people will doubtless have their own views on what “should” be included. However, what is provided should provide incoming users with a reasonable grounding in finding their way around the viewer. It’s also worth remembering that these updates may not be all that’s coming by way of viewer UI updates and/or simplification.

A further aspect of the new user experience is that the Welcome Islands will use an Experience, which in turn uses web page links, it is possible there are yet-to-be revealed elements accessed as new users explore / travel through the new Welcome Islands that may actually give further context to the viewer. As such, any final judgement on what is available in the viewer as released might be premature. Given this, I’ll likely / hopefully be returning to these updates to the viewer as an when the new user experience comes on-stream.

In the meantime, the Project UI is available as the default official viewer download, and the updates it contains will, as usual, be a core part of all future viewer updates and releases from the Lab.