June 2022 Web User Group: Premium Plus Update + Marketplace rebuild

The Web User Group meeting venue, Denby

The following notes cover the key points from the Web User Group (WUG) meeting, held on Wednesday, June 1st, 2022.

These meetings are generally held in-world on the first Wednesday of the month, with dates and venue details available via the SL public calendar. They are usually chaired by Reed Linden, who is the Lab’s Product Manager for the Second Life front-end web properties (Marketplace, secondlife.com, the sign-up pages, the Lab’s corporate pages, etc.).

A video of the meeting, courtesy of Pantera, can be found embedded at the end of this article (my thanks to her as always!), and subject timestamps to the relevant points in the video are provided. Again, the following is a summary of key topics / discussions, not a full transcript of everything mentioned.

Premium Plus

[Video: 2:17-8:30]

  • Premium Plus will officially launch during SL19B (Thursday, June 16th through to Sunday, June 26th, 2022).
  • Grumpity Linden (VP of Operations) and Patch Linden (VP) of Product Operations will be discussing Premium Plus – price, benefits, etc.), during interviews at SL19B (dates TBC)).
  • The price will (obviously) be “more” than Premium, but there will be an initial “discount” for those signing-up following release.
  • Indicated initial benefits include:
    • More: free tier than Premium’s 1024 sq m; stipend; group slots.
    • Lower fees for uploads (excluding mesh initially, as the upload fees for this are calculated differently, so the hope is to offer discounted mesh loads after Premium Plus has been deployed).
  • “Future benefits” being considered for “the future”:  new region types; new Linden Home types; potentially discounts for options such as Name Changes, mobile applications (not defined), “priority access to some areas” (again not defined).

Search Update

[Video: 8:40-10:36]

  • As noted in past WUG summaries, the Lab is working to improve Search results relevance. This work is now progress.
  • The SL Search engine uses an Elasticsearch instance, and the third-party contracted-in to work with LL has Elasticsearch expertise.
  • In particular, work has been focused on building “search relevance engine” machine learning tool, designed to observe how Search performs and gradually improving the relevancy of results.
  •  Additionally, a number of fixes are being developed for common issues (e.g. search for an item by its name, but it doesn’t top the results list).
  • It is hoped this work should start surfacing in July(ish).

Marketplace Overhaul

[Video: 12:30-57:29]

  • The development of the listing Styles – formerly called listing variance,  the ability to have a single listing for an item that has multiple individual colour options that would otherwise have to be individually listed) -has been on-going for some time.
  • All of the backend infrastructure and database updates are now in place.
  • HOWEVER – in order to implement the capability, the front-end of the Marketplace effectively has to be re-built. Because of this, LL is considering a complete rebuild of the Marketplace “from the ground up”.
  • To this end, a portion of the meeting was spent discussing what form the MP might take to meet the needs of both merchants and shoppers, e.g.
    • What should it look like?
    • What features / capabilities are important to merchants or shoppers (either within the existing MP or that they would like to see added)?
    • What features / capabilities within the existing MP require improvement / replacing and how / why?
  • A further recognition of the need for a complete rebuild is that the MP is often the “front page” of Second Life for the user community, in that it is the web property that is most often used by residents (It also has a reasonably high visibility on the web in general), and thus needs to reflect this.
  • The plan is to discuss these points (and others raised by the Lab / meeting attendees) over the next few meetings.
  • Feedback from this meetings included:
    • Look and accessibility: more in the way of an Amazon style of look / feel (including the “Users who bought this also bought” type of section); better integration with tools like screen readers / magnifiers; better recognition of screen resolution / size and scales the UI to suit; an ability to produce short links to listings.
    • Search: more relevancy when searching for items (which will hopefully come out of the Search overhaul); ability to filter-out specific stores from search results; ability to have store names listed as a search result option; ability to add an item to the shopping cart directly from a Search results list (rather than having to open the product listing page and add from there).
    • Refunds / Redeliveries: the ability to allow refunds and prevent the redelivery of an item for which a refund has been given (BUG-226218); the ability to redeliver directly from the listing page.
    • Social Media integration: improved capabilities to offer You Tube links and links to Instagram accounts (e.g. for product preview images), etc. Seen as possible, with the caveat that apps like Instagram use tracking pixels, etc., so linking would be depending on negotiations around this (LL do not as a rule allow user data tracking).
    • Improved co-ordination between MP and in-world stores:  an ability for merchants to update their in-world store location globally, rather than by editing all listings; the ability to have an MP store better reflect the in-world store (e.g. if a creator had a store that has multiple “departments” or “mini stores” within it, these can be reflected as “sub-brands” or “sub-stores” within the MP, and if one of these “sub-stores” is renamed (either on the MP or in-world), the change is reflected on the other).
    • Tools for merchants: improved analytics / metrics on store performance / listing performance; options for applying discounts / promotional codes on selected items.

There were also a number of non-specific recommendations “make it better”; “better tools to deal with negative / inaccurate reviews”, etc., that will require more clarity / granularity as to what is desired.

Suggestions have been (and will be at upcoming meetings) recorded by LL, and will form the basis for both internal discussions and more idea generation at the next WUG meeting.

Timeframe and Approach

Assuming this goes ahead:

  • In rebuilding the new Marketplace, the ability to migrate existing listings from the current MP to the new MP would be factored in; precisely what form this would take has yet to be fully determined..
  • In reality, it is unlikely any form of initial “new MP” will be available until some time in 2023; the focus at the moment is purely trying to road map capabilities, features, design, with user input.

“Land Journey” Refresh

[Video: 57:30-58:33]

  • The next major web project will be a refresh of all aspects of land sales – the Land Store, how Linden Homes are offered / selected; how land for sale is located, how it can be rented (and from whom), etc.
  • This work likely will not include the return of land auctions by users, unless a system can be developed that avoids abuse and can pay for its cost of implementation / management.

Next Meeting

  • Wednesday, July 6th, 2022. Venue and time per top of this summary.

2022 SUG meetings week #22 summary

Tempura Project, April 2022 – blog post

The following summary notes were taken from the Tuesday, May 31st, 2022 Simulator User Group (SUG) meeting. It forms a summary of the items discussed and is not intended to be a full transcript. A video of the entire meeting is embedded at the end of the article for those wishing to review the meeting in full – my thanks to Pantera for recording it.

Server Deployments

At the time of writing, there was no server deployment thread for the week, or release notes for the RC updates.

  • On Tuesday, May 31st, the SLS Main and Event channel servers updated to simulator version 2022-05-20.571998, which includes a couple of fixes, including one for the issue with objects not showing up when you first log-in.
  • Wednesday, June 1st should see the RC channels receive an update with fixes in support of the upcoming Premium Plus capability.

Available Official Viewers

There have been no official viewer updates at the start of the week, leaving the current crop as:

  • Release viewer: version 6.6.0.571939 – formerly the Performance Improvements viewer, dated May 25th – NEW.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • Makgeolli Maintenance RC viewer (Maintenance M) viewer, version 6.5.6.571575, May 12.
  • Project viewers:
    • Performance Floater project viewer, version 6.5.4.571296, May 10.
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Legacy Profiles viewer, version 6.4.11.550519, dated October 26, 2020.
    • Copy / Paste viewer, version 6.3.5.533365, dated December 9, 2019.

In Brief

  • To avoid over-/mis-use, Mazidox reminded people when filing bug reports to differentiate between rezzing and rendering. The former only applies to objects being placed into the world; rendering refers to objects already in-world. So, when you TP to a location, the objects within it are not rezzing, they are rendering.
  • Options for dealing with BUG-232143 “Substitute with NULL_PARAM whenever a variable of llSetLinkPrimitiveParams is not being changed.”, and this will likely get further discussion at the next meeting.
  • Brad Linden touched upon the materials / PBR project the graphics team is working on – see my most recent CCUG meeting summaries for more background. He specifically raised the proposed scripting support for the materials aspect of the work, noting a draft specification of what is being considered will be published shortly. Currently, two functions are under consideration:
    • llSetMaterial(key material_id), with LL thinking this could be framed in a similar manner to llSetAgentEnvironment() and possibly  llSetPrimitiveParams() work.
    • and llSetMaterialParams( parameters TBD), which will override only the specific params that are modified by the function, and will likely be framed in a similar manner to how llSetTexture() works.
    • Those interested in learning more should likely attend the CCUG meetings, with the next due to take place on Thursday, June 2nd, 2022.
  • The above topic also incorporated texture preloading (which, given the new materials assets will be called directly by the viewer via the CDN, should have to be used for any pre-loading with them), with an “llPreloadAsset” function might ever be available (would need to be a project of its own), and object culling.

2022 SUG meetings week #21 summary: offline requests / offers

Whimberly, April 2022 – blog post

The following summary notes were taken from the Tuesday, May 24th, 2022 Simulator User Group (SUG) meeting. It forms a summary of the items discussed and is not intended to be a full transcript. A video of the entire meeting is embedded at the end of the article for those wishing to review the meeting in full – my thanks to Pantera for recording it.

Server Deployments

At the time of writing, there was no server deployment thread for the week, or release notes for the RC updates.

  • On Tuesday, May 24th, the SLS Main and Event channel servers updated to simulator version 05-06.571613, comprising:
    • A fix for off-line Friend / Group request – see below for more.
    • The removal of server-side generation of Calling Cards when a friendship offer is accepted has been removed.
  • Wednesday, May 25th should see two RC channel updates:
    • Simulator version 2022-05-20.571998, which includes a couple of fixes, including one for the issue with objects not showing up when you first log-in.
    • Simulator version 2022-05-19.571962, comprising an update with fixes in support of the upcoming Premium Plus capability.

Rider Linden has agreed to take requests that future simulator deployments are posted to the forums in a timely manner once more (e.g. no later than the Monday evening before any proposed deployments).

Offline Group Offers and Friend Requests

As noted above, the fix for off-line friendship requests and group membership offers going stale between being set and the next time the recipient logs-in to SL and tries to accept them (so they are never acted upon) is now grid-wide. However, it is subject to certain limitations:

  • When the recipient does log in, stored offers are retrieved and remain active for up to 24 hours or until the region restarts.
  • Requests can only be acted upon whilst you remain in the region you logged into – so respond before TPing!
  • The offers are received by the recipient as Notifications, and friendship offers also appear as Direct Messages from the person / group sending the offer.

See this official blog post for more, including the note on Calling Cards given above.

Available Official Viewers

There have been no official viewer updates at the start of the week, leaving the current crop as:

  • Release viewer: version version 6.5.5.571282, – formerly the MFA RC viewer, dated April 26, promoted Wednesday, May 4th – NEW.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • Performance Improvements RC viewer version 6.6.0.571939, May 20.
    • Makgeolli Maintenance RC viewer (Maintenance M) viewer, version 6.5.6.571575, May 12.
  • Project viewers:
    • Performance Floater project viewer, version 6.5.4.571296, May 10.
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Legacy Profiles viewer, version 6.4.11.550519, dated October 26, 2020.
    • Copy / Paste viewer, version 6.3.5.533365, dated December 9, 2019.

2022 CCUG meeting week #20 summary: reflection probes update

Lemon Trees Mediterranean – 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, May 19th 2022 at 13:00 SLT. These meetings are chaired by Vir Linden, and their dates and times can be obtained from the SL Public Calendar.

This is a summary of the key topics discussed in the meeting and is not intended to be a full transcript.

Official Viewers Update

  • On Wednesday, May 18th, the Performance Improvements RC viewer updated to version 6.6.0.571869.

The rest of the official viewers remain as:

  • Release viewer: version version 6.5.5.571282, – formerly the MFA RC viewer, dated April 26, promoted Wednesday, May 4th – Non change.
  • Release channel cohorts:.
    • Makgeolli Maintenance RC viewer (Maintenance M) viewer, version 6.5.6.571575, May 12.
  • Project viewers:
    • Performance Floater project viewer, version 6.5.4.571296, May 10.
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Legacy Profiles viewer, version 6.4.11.550519, dated October 26, 2020.
    • Copy / Paste viewer, version 6.3.5.533365, dated December 9, 2019.

Materials and PBR Work

Please also see previous CCUG meeting summaries for further background on this work. In summary:

Three core elements of work:

  • Work on an implementation of reflection probes which can be used both with PDR shading and with legacy content. This formed the focus of this meeting.
    • The overall aim of this work is to provide a means to support more physically accurate reflections in SL than can be currently generated (seen as a requirement for PBR support).
    • It applies to both PBR generated content, once available, and to legacy content.
  • Foundational work in creating a materials type with an associated inventory asset, as per the week #16 meeting. This  will initially comprise the ability to copy a texture entry (with its specific parameters) to inventory, to be followed by
  • Initial work to work implement a PBR graphics pipe in the viewer.

Reflection Probes

  • Additional information available within the week #18 CCUG meeting summary.
  • This work is close to feature complete.
    • The viewer gets to work with 256 reflection probes, which take the form of spheres or boxes within a region.
    • Anything within a sphere or box will receive reflections from the cube map rendered from the centre of the sphere / box.
    • Some of these probes will be automatically placed in open areas of land where there are objects, etc., by the viewer.
    • Additional probes can be created by users using prims tagged as probes and placed where they want to influence the reflections being generated (e.g. inside rooms, etc.).
    • Baking for reflection probes will be automatic, and updates will be handled at least once every 30 seconds.
  • There is a performance hit with the capability, and this is still being adjusted so that it will hopefully not be overly onerous.
  • Elizabeth Jarvinen (Polysail) is working  on the current light shader to enable legacy content to receive the reflection probes without looking “too different” and look like it belongs in the environment along with PBR content.

Materials /PBR Work

  • Progress continues in developing a “materials” type with an associated inventory asset capable for containing PBR materials data.
    • LSL access to said materials is regarded as being “tricky”, simply because the materials will be an asset type loaded by the viewer.
    • What is being proposed is to have the ability to “override” elements of the asset (e.g. colour or texture) via LSL by applying the changes to the properties of the object face to which the materials is applied.
      • So, for example, the LSL override says, “OK. I know this material has a texture UUID inside it – I don’t know what it is, but I want this face to use MY texture UUID instead” – so the material asset itself is not changed / updated, but the UUID defined by the LSL code is displayed, rather than the texture UUID defined by the asset.
      • If the materials asset type subsequently be changed, then the overrides applied via LSL to the object face are automatically dropped until such time as new overrides are applied.
    • This is seen as the most flexible approach, as it protects the integrity of the materials asset (in a similar manner to texture data) whilst also allowing the flexibility of using colour variants against an asset type (such as in the case of a sweater using a single materials asset, but with multiple colour options in the pack or in allow a HUD to alter the tint of an object that uses a materials asset).
  • Nothing of significance to report on the PDR shader work.

In Brief

  • Custom pivot point work: currently awaiting simulator updates & will require viewer-side changes.
  • A fix has been implemented in the viewer to speed-up opening media / web floaters (such as search). This should be surfacing in the next Maintenance RC viewer (“Maint N” to follow the Makgeolli  Maintenance RC).
    • An upcoming simulator release should have a fix for objects failure to rez when users first log-in. .

Next Meeting

  • Thursday June 2nd, 2022.

2022 SUG meetings week #20 summary

Lost Dreams, April 2022 – blog post

The following summary notes were taken from the Tuesday, May 17th, 2022 Simulator User Group (SUG) meeting. It forms a summary of the items discussed and is not intended to be a full transcript. A video of the entire meeting is embedded at the end of the article for those wishing to review the meeting in full – my thanks to Pantera for recording it.

Server Deployments

Please refer to the server deployment thread for updates.

  • On Tuesday, May 17th, the SLS Main and Event channel server were restarted by left on simulator version 05-05.571557.
  • On Wednesday, May, 18th, the RC channels should be updated to simulator version 05-06.571613, which contains the server-side fixes for off-line Friend and Group invites going stale. In addition, server-side generation of Calling Cards when a friendship offer is accepted has been removed. This feature moved to the viewer several years ago and now accepting friendship offers creates, at most, two Calling Cards, one for each party.

Available Official Viewers

There have been no official viewer updates at the start of the week, leaving the current crop as:

  • Release viewer: version version 6.5.5.571282, – formerly the MFA RC viewer, dated April 26, promoted Wednesday, May 4th – No change.
  • Release channel cohorts:
    • Performance Improvements RC viewer version 6.6.0.571736, May 12.
    • Makgeolli Maintenance RC viewer (Maintenance M) viewer, version 6.5.6.571575, May 12.
  • Project viewers:
    • Performance Floater project viewer, version 6.5.4.571296, May 10.
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Legacy Profiles viewer, version 6.4.11.550519, dated October 26, 2020.
    • Copy / Paste viewer, version 6.3.5.533365, dated December 9, 2019.

In Brief

  • Bug 232091 – “Implement object_rez_failure Event” has been accepted as a feature request by the Lab and is liable to be implemented, providing testing doesn’t reveal any backward comparability issues – but no date for possible implementation.
    • This request led to a degree of discussion on the nature of the event (and the possible need for a new function to support it).
    • BUG-228939 – “on_rez action delayed for 2 to 3 seconds in many regions” and BUG-231929 – “llCanRez or something equivalent to check if an object can rez at the location it will try to in the future” are also touched upon in the discussion.
    • The broad discussion on object rezzing and control took up the majority of the rest of the meeting – please refer to the video below for details.
  • Bug 231582 “Newly rezzed objects are invisible after relog under certain circumstances” – should have a fix available in the week #21 RC maintenance release.

2022 TPVD meetings week #19 summary: PBR materials

RockMead, April 2022 – blog post

The following notes were taken from the video recording by Pantera (embedded at the end of this piece, my thanks to her as always for recording the meetings) of the Third-Party Viewer Developer (TPVD) meeting on Friday, May 13th, 2022 at 13:00  SLT. These meetings are chaired by Vir Linden, and dates for them can be obtained from the SL Public Calendar.

Important: as from this meeting, the TPV Developer meeting has moved to a four-week schedule.

Please note that this is a summary of the key topics discussed during the meeting and is not intended to be a full transcript of either. However, the video does provide a complete recording of the TPVD meeting, and timestamps to the relevant points within it are included in the notes below.

Available Viewers

[Video: 0:00-6:22]

On Thursday, May 12th:

  • The Makgeolli Maintenance RC viewer (Maintenance M) viewer updated to version 6.5.6.571575.
  • The Performance Improvements RC viewer updated to version 6.6.0.571736.

On Tuesday, May 10th, the Performance Floater and Auto-FPS project viewer updated to version 6.5.4.571296.

The rest of the currently available official viewer versions remain as:

  • Release viewer: version version 6.5.5.571282 – formerly the MFA RC viewer, dated April 26, promoted Wednesday, May 4th – NEW.
  • Project viewers:
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Legacy Profiles viewer, version 6.4.11.550519, dated October 26, 2020.
    • Copy / Paste viewer, version 6.3.5.533365, dated December 9, 2019.

General Viewer Notes

  • The Performance Improvements RC viewer remains the next in line for promotion to de facto release status, the latest update to this viewer awaiting data on crash rates prior to potentially being promoted.
  • MFA Enforcement: the eventual plan with multi-factor authentication (MFA) is to “enforce” it for all users who have opted-in to using it so that when logging-in to SL on a viewer without MFA support, they will see a message requesting they either swap to using one with MFA support or disable MFA from their Second Life account dashboard.
    • It is not clear when such enforcement will commence. However, the official viewer, Catznip, Kokua and Cool VL are all known to support MFA, and an MFA version of Firestorm is in the works, so it is likely that the “enforcement” could come in the relatively near future.
    • There will be no change to logging into the viewer for users who have not opted to use MFA or who decided to disable it on their account.
  • https://viewer-login.agni.lindenlab.com/ is a URL referenced in the viewer log-in code, but is currently a redirect and not actually used. LL is therefore planning on removing it.

Additional Materials Support / PBR

[Video: 7:19-20:36]

Note: please also refer to my recent (April / May) CCUG meeting summaries.

Two area of work are currently in progress.

Materials Assets Support

One element of work is to provide “full” Physically Based Rendering (PBR) materials support utilising the glTF specification.

  • This work is currently focused on implementing a new materials asset type that will allow materials surfaces created utilising the PBR workflow to be imported to SL and then applied to their desired object face(s).
  • LL hopes that creators using PBR will also supply textures entries (e.g. a diffuse map + normal & specular maps (if required) + associated parameters as we know them today in the build floater) so that systems / clients that cannot / do not run the supporting PBR code can display these texture entries instead, rather than leaving objects with blank faces.
    • It has been suggested than any such use of “fallback” texture entries be an automated process, rather than something that has to be done manually by the creator.
    • Longer term, there will be some form of LSL support for this as well, although the extent of this has yet to be fully determined. However, it is liable to be along similar lines to texture application using LSL.
  • Once defined, the materials assets will be stored using the glTF 2.0 specification.

Reflection Probes / Environment Maps

A parallel piece of work is adding sport to SL for reflection probes to update the generation of the environment maps (because the current cube mapping used by SL is limited and would not work will with PBR).

  • The key point here is that the introduction of reflection probes + updated cube maps will work with both “PBR” and “legacy” content.
  • This work has been underway for the last couple of weeks, including input from some content creators / viewer developers.
  • “Outdoor” probes will likely be subject to automated placement, but with a hierarchy applied such that they don’t override probes placed inside structures.

General Notes

  •  In terms of user testing, the approach to this work is similar to that taken with Mesh:
    • Testing will initially be carried out on Aditi (the beta grid) as things develop, allowing various “PBR” and “legacy” content to be uploaded and tested, well before anything is implemented on the main grid or made widely available to users through the viewer.
    • Content creators wishing to test content are strongly advised to join the Discord discussions and join in with testing from there.
  • glTF mesh object uploads: this is on the roadmap of things the Lab would like to include in the initial project. However, depending on how work progresses and time frames imposed, it may not form a part of the initial work that is shipped and slip to being “tackled at some point”.
  • Support for materials variants within the glTF assets (e.g. to allow colour variants in fatpack items) is also under internal discussion at the Lab.

In Brief

  • [Video 21:09-23:30] The simulator fixes for off-line Group and Friend invites failing to update following acceptance should be surfacing on the RC channels in week #20.
  • [Video 22:44-27:40] a discussion on rigged meshes and bounding boxes focused on a change that was made to overcome issues of people creating oversized bounding boxes for their rigged meshes in order to avoid providing LODs (and forcing the viewer to always render them at a performance impact) that was recently reverted.
    • Runitai Linden explained that the revision was actually the result of changes made within the Performance Improvements Viewer that clashed with the rigged mesh bounding box changes, and that there is still an open issue to ensure the rigged mesh bounding box is always an appropriate size.
    • This rolled into a broader discussion on the complexities of rigged mesh visual size, scaling, bounding boxes / LODs selection, impact of the animation system, etc.
  • [Video 28:04-End] The above leads into a discussion on LODs in general and the idea of auto-LODding content vs. (good and bad) custom LOD creation (and what constitutes “good” LOD modelling – e.g. basing on surface area or triangle count?), LOD / LI conflicts, and trying to strike an equitable balance such that LODs can be “properly” defined and used.
    • As this discussion covers a lot of ground, I refer those interested to the video.