2021 CCUG meeting week #5 summary – graphics

Jacob, December 2020 – blog post

The following notes were taken from my audio recording and chat log of the Content Creation User Group (CCUG) meeting held on Thursday, February 4th 2021 at 13:00 SLT. These meetings are chaired by Vir Linden, with dates available via the SL Public Calendar.

The venue for meetings is the Hippotropolis camp fire.

Due to Vir having to depart the meeting early, the majority of the meeting focused on viewer rendering.

SL Viewer

There have been no updates since the promotion of the Dawa Maintenance viewer to de facto release status earlier in the week. the viewer pipelines therefore remain as:

  • Current release viewer Dawa Maintenance RC Viewer, version 6.4.12.555248, dated January 25, 2021, promoted February 1st, 2021 – NEW.
  • Release channel cohorts:
    • Project Jelly viewer (Jellydoll updates), version 6.4.12.553798, January 7, 2021.
    • Custom Key Mappings project viewer, version 6.4.12.553437, January 7, 2021.
  • Project viewers:
    • Love Me Render (LMR) 5 project viewer, version 6.4.12.553511, issued on January 7, 2021.
    • Simple Cache project viewer, version 6.4.11.551403, November 12.
    • Legacy Profiles viewer, version 6.4.11.550519, October 26.
    • Copy / Paste viewer, version 6.3.5.533365, December 9, 2019.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.532999, November 22, 2019.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16, 2019.

Viewer Rendering

Love Me Render Viewer

The Graphics team are getting close to an RC release of the Love Me Render 5 (LMR 5) viewer (project viewer version 6.4.12.553511 at the time of writing).

  •  The one remaining issue they addressing with it is the matter of incorrect vertex attribute normals (not normal maps themselves) being rendered with Debug Normals enabled in the viewer (see BUG-228952 “Mesh Debug Normals display incorrectly. Normal Maps on scaled objects appear to use incorrect mesh normals for shading calcs”).
    • This appears to occur with models created in Maya with normals applied, but which uses non-uniform scaling.
    • The fix involves updates to both the Debug Normals code and the affected shader code.
  • The focus of LMR 5 is EEP fixes, apparently including the inverted rainbow issue, going on comments made (although currently that isn’t listed in the release notes), together with more general fixes related to things like specularity renderings, etc. It also includes a number of TPV contributions that fix assorted rendering issues.
  • It is hoped an RC version of the viewer will be available in the next week or two, with the aim of moving it to release status as rapidly as possible.

Outside of any specific rendering work going on for LMR 5 (or which my be directed into the next Love Me Render viewer, aka LMR 6 (such as BUG-5975 and BUG-229462, which might be investigated as part of LMR 6 work), it was indicated the Graphics Team would like to work on the environment map, if only to reduce the performance load it currently places on rendering.

Rendering API Replacement

No specific updates at present on the replacement of OpenGL as the rendering API.However, it was indicated that consideration is still being given to supporting more than one rendering capability by means of some form of back-end “tool kit” or library. There are a number of reasons for this:

  • As indicated in my previous CCUG meeting summary, there appears to be a substantial portion of Windows users accessing Second Life on hardware that cannot support more recent APIs like Vulkan (which had been the preferred choice).
  • Whilst they are set to deprecate OpenGL at some point in the future (prompting the need for the switch away from OpenGL), Apple actually don’t provide native support for Vulkan, thus prompting the need for a second alternative (such as – perhaps – Apple’s own Metal API).
  • Therefore, the use of an intermediary tool box / library approach would, whilst adding a layer of complexity, allow Linden Lab to potentially leverage more than one rendering API to support a wider range of user hardware.

Looking to Possible Future Options

Some thought is being given to rendering capabilities beyond the replacement of OpenGL, such as physically based rendering (PBR).

  • It is important to note that none of these are currently being considered for adoption at this point in time; they are simply on the Graphics Team’s wish list of things they would like to look at.
  • As such, if something like PBR were to be adopted, it would not be until some time after the need to replace OpenGL has been addressed, which itself is liable to be a long-term piece of work.
  • In terms of PBR in particular, it was noted that in practical terms, it would only be of value on  objects that utilise PBR materials.
    • This likely means that if it  were implemented, it would be a opt-in capability: creators would set a flag against content they are importing to indicate it uses PBR, and thus use the required shaders.
    • Such an approach would prevent any “breakage” of existing content (which would effectively continue to be rendered “as is”, and in turn allows creators to determine which of their products they might like to update to / replace with models utilising PBR.
  • Outside of PBR, it was suggested that High-dynamic-range  (HDR) rendering might be something the Graphics Team would like to look at at some point in the future.

Mesh File Formats

Again, not a project under active development or something that will come about in the near future, but the Graphics team are also giving thought to potential mesh model file format support outside of the current .DAE.

  • In the past, users have expressed a desire for .FBX support; the problem here is potentially that whilst widely used and accepted as a “standard”, it is pretty much close-source by Autodesk.
  • The open-source Graphics Language Transmission Format  (gITF) has been suggested by some as an alternative, particularly given it is already supported by Blender as via a plug-in option, and the Graphics Team have indicated they will have a look at this as and when time allows.

Date of Next Meeting

  • Thursday, February 18th, 2021.

February 2021 WUG summary

The Web User Group meeting venue, Denby

The following notes are taken from my recording of the Web User Group (WUG) meeting, held on Wednesday, February 3rd, 2021. These meetings are generally held on the first Wednesday of the month, with dates and venue details available via the SL public calendar.

When reading these notes, please keep in mind:

  • This is not intended as a chronological transcript of the meeting. Items are drawn together by topic, although they may have been discussed at different points in the meeting.
  • Similarly, and if included, any audio extracts appearing in these summaries are presented by topic heading, rather than any chronological order in which they may have been raised during the meeting (e.g. if “topic X” is mentioned early in a meeting and then again half-way through a meeting, any audio comments related to that topic that might be included in these reports will be concatenated into a single audio extract.

Web Properties Updates

  • Core work remains clean-up post the transition to services to AWS.
    • Most of the issues arising from the Uplift project for the various web properties (e.g. Marketplace, Destination Guide, etc), appear to have been resolved, although the destination Guide still has a couple of issues to be fully resolved.
  • Once this has been completed, work will resume on sorting through the web “to do”list (which includes incoming bug reports and feature requests in readiness to start working through items.
  • There have been some additional non-user visible updates to some web properties.
  • As of the end of December 2020, there were three software toolsets LL use in relation Second life (none of them user-facing) awaiting a transition to AWS, as of the start of February, one of these has yet to be transitioned.

Single Sign-On

  • Linden Lab is starting to roll-out single sign-on for web properties (not to be confused with two-factor authentication, which is still being planned, but is not ready for deployment).
  • This will mean that users with multiple accounts will only be able to sign-in to different properties on a per account basis.
  • There will be a formal LL blog post to explain this further in due course.

Mobile Client

  • Linden Lab is dealing with some bugs, so no significant news arising from the past month.

Last Names

  • The Lab is hoping to have a new batch of Last Names available for around Valentine’s Day, which will include Valentine’s-themed last names.
  • There is some talk of also providing “normal” last names (for some definition of “normal”, given the likes of  “Aphelion”, “Birdwhistle”, “Dankworth”, “Izzard” and “Posey”, among many others are all considered “normal” where I come from!).
  • For new batches of Last Names, LL tend to select from the list of suggestions that came about from the 2019 Last Names competition, then add a mix of names they’ve selected.
  • It is also hoped that Last Name updates will happen more “regularly” in the future.

In Brief

  • There has been intermittent delays in getting items delivered from the Marketplace ( which can last up to several minutes) over the last week(ish). The issue has been hard for LL to reproduce, although they have been aware of it and had tried to make adjustments.
  • BUG-229713 “Marketplace listing status updates are not being updated between the web and the viewer” and BUG-230107 “Marketplace Listings window in the viewer does not update” have been confirmed by LL as an issue, and the issue is to be investigated.
  • Profile feed: there had been a series of issues of late (images failing to upload, posts failing to appear, etc.), but as of February 2nd, these should have been resolved. Anyone still experiencing problems should contact support / raise a bug report.
  • LL are continuing to consider how to improve the new user experience, and have been seeking feedback on what established users see as the “main” problem new users face. In addition, it was notes that in order to better understand new user problems when on-boarding, the Lab:
    • Has regular internal workshops where staff go through various aspects of being a new users (e.g.building an entire mesh-based avatar from scratch) to better understand the complexities lies, and where particular pain point might be.
    • Has staff spend time within new user environments (the learning / social islands, etc.)..
    • Has some of the user-led mentor groups to assist with the on-boarding process through the social and learning islands.

Next Meeting

  • Wednesday, March 3rd, 14:00 SLT.

2021 SUG meeting week #5 summary

Silent Night, December 2020 – blog post

The following notes were taken from the Tuesday, February 2nd, 2021 Simulator User Group (SUG) meeting.

Server Deployments

At the time of writing,the release notes for the week had yet to be produced. However, Rider Linden summarised the state of play as follows:

We unfortunately found a bug in last week’s RC so did not promote it to SLS today. We instead will be rolling a new and shinier version back to the RCs tomorrow.
Also in tomorrows release the simulator will try and be “nicer” about how often it sends notifications about privileged script calls being made in an experience. It won’t send more than 1 per event per experience per agent every 30 seconds. So, calling llGetCameraPos followed by llGetCameraRot will only generate a single notification. There is an additional key now in the LLSD that comes down from the simulator “EventCount” that will tell the viewer how many times that particular event had occurred.

– Rider Linden

SL Viewer

The Dawa Maintenance RC viewer, version 6.4.12.555248, was promoted to de facto release status on Monday February 1st. All other official viewer pipelines remain as follows:

  • Current release viewer version 6.4.11.551711, formerly Cachaça Maintenance RC viewer promoted on November 12 – No Change.
  • Release channel cohorts:
    • Project Jelly viewer (Jellydoll updates), version 6.4.12.553798, January 7, 2021.
    • Custom Key Mappings project viewer, version 6.4.12.553437, January 7, 2021.
  • Project viewers:
    • Love Me Render (LMR) 5 project viewer, version 6.4.12.553511, issued on January 7, 2021.
    • Simple Cache project viewer, version 6.4.11.551403, November 12.
    • Legacy Profiles viewer, version 6.4.11.550519, October 26.
    • Copy / Paste viewer, version 6.3.5.533365, December 9, 2019.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.532999, November 22, 2019.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16, 2019.

In Brief

  • The lab is working to correct the on-going issues with Group chat (notably BUG-229936 “Group Notices not expiring after 14 days” and BUG-230116 “Sorting group notices by date disconnects the viewer”. A fix for the former should be available very soon, and does not require a simulator-side update (it’s a back-end fix).
  • What’s the difference between a viewer crash and a disconnect?
    • The Lab see a “crash” as being “my viewer exited without displaying any message”.
    • The viewer exiting SL with a message to the user (such as “you have been disconnected”) is not regarded as a viewer crash.
  • A change intended to fix BUG-228783 “llSitOnLink() is not generating Notifications nor logs in Events in the viewer”, and which improves notifications in general (including for llTakeControls), resulted in breaking a work-around for BUG-8265, affecting certain weapons in SL. This should be resolved following the February 3rd RC deployments.

2021 SUG meeting week #4 summary

Aqua Breeze, November 2020 – blog post

The following notes were taken from the Tuesday, January 26th, 2021 Simulator User Group (SUG) meeting.

Server Deployments

At the time of writing,the release notes for the week had yet to be produced. However, Rider Linden described the RC release planned for the week thus:

So, this week we are rolling to all of the RC channels tomorrow. The main feature we added is the extended error reporting.There is also some extended handling when origin servers return 5XX errors to a script that should reduce some load on the simulator.

– Rider Linden

SL Viewer

The Dawa Maintenance RC viewer updates to version 6.4.12.555248 on Monday, January 25th. The rest of the official viewer pipelines remain as:

  • Current release viewer version 6.4.11.551711, formerly Cachaça Maintenance RC viewer promoted on November 12 – No Change.
  • Release channel cohorts:
    • Dawa Maintenance RC Viewer, version 6.4.12.555248, January 25, 2021.Project Jelly viewer (Jellydoll updates), version 6.4.12.553798, January 7, 2021.
    • Custom Key Mappings project viewer, version 6.4.12.553437, January 7, 2021.
  • Project viewers:
    • Love Me Render (LMR) 5 project viewer, version 6.4.12.553511, issued on January 7, 2021.
    • Simple Cache project viewer, version 6.4.11.551403, November 12.
    • Legacy Profiles viewer, version 6.4.11.550519, October 26.
    • Copy / Paste viewer, version 6.3.5.533365, December 9, 2019.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.532999, November 22, 2019.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16, 2019.

Group Notices

  • BUG-229936 “Group Notices not expiring after 14 days”: this is a known issue for the Lab, which in the words of Mazidox Linden means: “We’re troubleshooting [it]. By which I mean we’re finding the root of the trouble, and shooting it.”
  • BUG-230116 “Sorting group notices by date disconnects the viewer”: this is a new issue, but one that is potentially causing some serious issues for those who attempt to carry out such searches (which Firestorm apparently does by default).
  • BUG-229075 “VWR-4137 / SL-13093 Missed opportunity to fix group notice date sorting” has now been accepted.
  • Beq Janus has been carrying out an extensive investigation into Group notice issues, the short form of which is that notice culling needs to be re-enabled (which the Lab to do “soon”) lest a lot of people start being impacted with failures in handling group notices, and she also have code contributions she may be submitting to the Lab to assist with group notice issues.

2021 TPVD meetings week #3: summary

Yukina, November 2020 – blog post

The following notes are taken from the TPV Developer meeting held on Friday, January 21st, 2021.

These meetings are generally held every other week.  They are video recorded by Pantera Północy, and her recording of the  meeting is embedded at the end of this report – my thanks to her for allowing me to do so – and it is used with a transcript of the chat log from the meeting and my own audio recording to produce these notes.

SL Viewer News

[0:00-2:15]

  • Current release viewer version 6.4.11.551711, formerly Cachaça Maintenance RC viewer promoted on November 12 – No Change.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • Dawa Maintenance RC Viewer, version 6.4.12.555058, January 20, 2021.
    • Project Jelly viewer (Jellydoll updates), version 6.4.12.553798, January 7, 2021.
    • Custom Key Mappings project viewer, version 6.4.12.553437, January 7, 2021.
  • Project viewers:
    • Love Me Render (LMR) 5 project viewer, version 6.4.12.553511, issued on January 7, 2021.
    • Simple Cache project viewer, version 6.4.11.551403, November 12.
    • Legacy Profiles viewer, version 6.4.11.550519, October 26.
    • Copy / Paste viewer, version 6.3.5.533365, December 9, 2019.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.532999, November 22, 2019.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16, 2019.

General Viewer Notes

  • Viewer updates / releases had been held-up due to some Uplift related issues. This have now been rectified, and viewers should start rolling forward again.
  • As noted in my 2021 week #3 CCUG summary, the Dawa Maintenance RC viewer was the only viewer updated during the week, and this will likely be the next viewer to be promoted to de facto release status.
  • The Simple Cache project viewer (VFS replacement) and the Legacy Profile project viewer are both now “close” to be promoted to release candidate (RC) status. That latter had been blocked due to some required UI fixes, with Kylie Linden indicating these are in progress.
  • Graphics fixes continue to be added to the LMR-5 project viewer, but this is liable to end in the next week or so, in order to allow this viewer to progress onwards through RC and eventual de facto release.

AMD GPUs “Blue View” Issue

[3:21-11:02]

Some users running systems with AMD GPU has been encountering a issue with scenes being rendered with a strong blue bias when running the SL viewer with Advanced Lighting Model (ALM) enabled and using the most recent (post October 2020, I believe, and particularly the latest Adrenalin drivers) AMD drivers.

  • General reports can be found here, and a formal bug report is available: BUG229727.
  • LL have acknowledged the issue, and believe it to be driver related. However, AMD driver bugs must apparently be reported using a specific reporting tool provided by AMD, and thus far LL have been unable to reproduce the bug when running said software and so are apparently having issues getting AMD to accept it.
    • The issue appears to be somewhat similar to an Nvidia bug of a few years ago, possibly resulting from a switch to using a BGRA for textures rather than the more usual RGBA format.
  • There are reports that an AMD driver update issued on January 21st, 2021, but at the time of writing this summary, this has yet to be more broadly confirmed.
  • In the meantime for those affected by the issue,the following workarounds are recommended:
    • Rolling back to an older driver version (e.g. Adrenalin 2020 Edition 20.11.2).
    • If that doesn’t work:
      • Disable ALM in the viewer (Preferences → Graphics → uncheck Advanced Lighting Model).
      • Log out and back into the viewer.
      • Enable ALM (Preferences → Graphics → check Advanced Lighting Model).
      • Remember to disable ALM prior to ending your session (so you only need to re-enable ALM when you next log-in.

In Brief

  • [16:32-34::45] The meeting saw a significant amount of text chat concerning the technicalities of viewer CPU / CPU core usage, TPV work in trying to rebuild viewer threading, etc. As this is text-based (and may not be of relevance to many users), please refer to the video from around the 16m 32s mark through to .
  • [34:47-48:00] and continuing after the brief discussion on chat lag] A further text conversation is on graphic API options and moving away from OpenGL. This is covered in my 2021 week #3 CCUG summary, but it appears that around 20% of Windows users running systems incapable of supporting Vulkan (notably those using Intel integrated graphics).
    • That said, Vulkan isn’t the sole option available to LL, and much is still in discussion internally at the Lab.
  • [48:37-49:15] Some are experiencing an increase in chat lag post-Uplift. LL are currently re-starting the chat servers as an interim means of improving reliability of chat services, but it’s not clear if this is also helping reduce general performance issues.

2021 CCUG meeting week #3 summary

Snowdrops, November 2020 – blog post

The following notes were taken from my audio recording and chat log of the Content Creation User Group (CCUG) meeting held on Thursday, January 21st 2021 at 13:00 SLT. These meetings are chaired by Vir Linden, with dates available via the SL Public Calendar.

The venue for meetings is the Hippotropolis camp fire.

SL Viewer

The Dawa Maintenance RC viewer updated to version 6.4.12.555058 on Wednesday, January 20th signalling the issues within the build process that had stalled viewer updates have been cleared. However, at the time of writing all other viewers in the current pipelines remain unchanged:

  • Current release viewer version 6.4.11.551711, formerly Cachaça Maintenance RC viewer promoted on November 12 – No Change.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • Project Jelly viewer (Jellydoll updates), version 6.4.12.553798, January 7, 2021.
    • Custom Key Mappings project viewer, version 6.4.12.553437, January 7, 2021.
  • Project viewers:
    • Love Me Render (LMR) 5 project viewer, version 6.4.12.553511, issued on January 7, 2021.
    • Simple Cache project viewer, version 6.4.11.551403, November 12.
    • Legacy Profiles viewer, version 6.4.11.550519, October 26.
    • Copy / Paste viewer, version 6.3.5.533365, December 9, 2019.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.532999, November 22, 2019.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16, 2019.

General Viewer Notes

Viewer Caching

  • LL are in the process of overhauling and improving the viewer’s cashing mechanisms.
  • There is already a Simple Cache  project viewer that is available (see the viewer list above). This will be progressing to RC status soon.
  • A further project by Callum Linden is to improve the caching and loading of textures within the viewer. No ETA at present as to when a project viewer for this will surface.
  • Mention was made in 2020 about detaching the viewer UI rendering from scene rendering in order to improve viewer performance. This work is still in the discussion/ initial development stages.

Viewer Rendering Situation (Moving from OpenGL)

Work on updating the viewer’s rendering API to something more recent than OpenGL (which is to be deprecated by Apple anyway) has hit an issue. Vulkan had been looked to as a replacement for OpenGL. However

  • Logging added to the viewer to assess the capabilities of users’ home systems has revealed that around 20% of existing Windows users have systems that cannot support the Vulkan API (e.g. due to their GPU – notably those with Intel graphics). However, this figure is mixed:
    • It may be conservative, as there are users who are accessing SL with older viewers without the necessary logging, so it could be higher, or
    • The data isn’t currently granular enough to to differentiate between users running on hardware that cannot support Vulkan and those who have suitable GPUs, but simply haven’t updated their drivers.
  • This means the work on any potential move to an API change has paused while LL assess options.
  • One course of action might be to add some form of abstraction layering in the viewer, such that those able to support a more recent API do so,whilst older systems continue to use OpenGL – but decisions of direction / options have yet to be finalised.
  • Another issue with updating the rendering API is the risk of content breakage if an incoming API handles some rendering features in a substantially different manner to OpenGL.
  • One aspect related to systems used to access SL lies within LL’s own Recommended specs page, which continues to list GPU options that are well out-of-date. For example, the basic “recommended” Nvidia GPUs are listed as GeForce 9 series / GeForce 200 series, which ceased being supported by Nvidia in 2016.

ARCTan

Project Summary

An attempt to re-evaluate object and avatar rendering costs to make them more reflective of the actual impact of rendering either in the viewer. The overall aim is to try to correct some inherent negative incentives for creating optimised content (e.g. with regards to generating LOD models with mesh), and to update the calculations to reflect current resource constraints, rather than basing them on outdated constraints (e.g. graphics systems, network capabilities, etc).

As of January 2020 ARCTan has effectively been split:

  • Viewer-side changes, primarily focused on revising the Avatar Rendering Cost (ARC) calculations and providing additional viewer UI so that people can better visibility and control to seeing complexity.
  • Work on providing in-world object rendering costs (LOD models, etc.) which might affect Land Impact will be handled as a later tranche of project work, after the avatar work.
  • The belief is that “good” avatar ARC values can likely be used as a computational base for these rendering calculations.

Status

Focus on this project was reduced due to the to concentrate on the Uplift project work, so the last couple of months of 2020 saw little direct progress. Vir hopes to be able to turn his attention back to it “before too long”.

In Brief

  • As is common for the start of a year, priority lists are currently being reviewed and updated.
  • Graphics updates: as well as the current LMR 5 project viewer with fixes for graphics issues, the Graphics team are also working on other issues, such as rainbows having the colour spectrum inverted  (i.e. appearing as VIBGYOR rather than ROYGBIV). However, it is until to fix the sorting issue that causes the Moon to appear in front of rainbows.

Date of Next Meeting

  • Thursday, February 4th, 2021.