May 2023 SL Web User Group (WUG) meeting summary

The Web User Group meeting venue, Denby

The following notes cover the key points from the Web User Group (WUG) meeting, held on Wednesday, March 3rd, 2023.

WUG meetings:

  • Are held in-world, generally on the first Wednesday of the month – see the SL public calendar.
  • Cover Second Life front-end web properties (Marketplace, secondlife.com, the sign-up pages, the Lab’s corporate pages, etc.).
  • They are not intended for the discussion of Governance issues, land fees / issues, content creation & tools, viewer or simulator development / projects. Please refer to the SL calendar for information on available meetings for these topics.

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.

Marketplace

  • Mentioned towards the end of a blog post made on April 7th relating to (then) recent updates, the change to allow best selling to now index each merchant’s store individually instead of just the top 50k items is now being actively worked on.
    • When complete, it will allow customers to sort the listings within a store by those which have been the top selling over a certain period of time (exact period still TBD at the time of writing).
    • In addition, Sntax Linden is interested in taking feedback from merchants on idea they may have for best selling items indexing / lists.
  • Also raised at the April meeting was the subject of a Marketplace “Spring Clean” (last performed in 2019).
    • This will see the unlisting of products and/or disabling of merchant stores if they meet specific criteria (as defined in the blog posted linked-to above).
    • Note that products / stores can be re-activated by the Merchant logging-in and re-activating and re-listed.
  • The “Spring Cleaning” discussion included a number of suggestions / comments, including providing  listings with an indicator to show if the merchant had logged in to MP in the last X number of days, so that customers might have some idea as to how active the merchant is, should support be required (privacy concerns were raised over this idea).

In Brief

Please refer to the video for these topics.

  • The Spring Cleaning topic led to a broader discussion on preserving content which might be regarded as “historic” (with the creator’s approval) when the creator departs Second Life.
    • This is not necessarily something restricted to saving within the Marketplace.
    • There is already the Second Life Region Preservation Society which can take entire regions into LL’s stewardship when certain criteria can be met).
    • However preserving individual products / product lines raises issues of IP which could be more complicated than with the preservations of a region, and with issues of continued support (or the expectation thereof) should the product(s) also continue to be in use within SL.
  • Questions were asked about shopping practices and how often people use the MP shopping cart to store-up items for later purchase, rather than proceeding to the checkout with a cart when they’ve finished their current round of shopping.
    • Responses to this were many and varied (e.g. “because I don’t want to make any MP purchases until I’m in-world to receive / unpack / sort them”), through to comments about lack of wishlist functionality (e.g. they remain cumbersome to use / load slowly / the link to add items to a wishlist is not obvious, etc.).
  •  In terms of wishlists, the option for multiple / custom wishlists was again raised, and noted that it is on the MP roadmap, but currently under the heading of “someday”, rather than something that is actively being worked on or considered for implementation at this point in time.
  • A general discussion on how merchants promote new products – via Groups, Twitter, Discord, word-of-mouth, etc.
    • One suggestion was to allow customers the ability to “follow” their favourite stores (see feature request
    • BUG-233138 “Social/Creator Focused Marketplace Feed”), allowing them to receive / view information on new releases from those stores when visiting the MP.
    • Whilst reactive rather than proactive, it was also pointed out that the above could be done when a customer goes to their Favourite Stores listing on the MP and then order by Age: Newest First.
Sorting Favourite Stores on the MP to show latest releases from each store. Credit: Alexa Linden
  • The above led to the suggestion that people could have their own personalised MP home page, listing favourite stores, providing updates on the releases etc.
  • Dates for listings – date listed, date last updated, last date the item sold, for example – have been requested in the past and were requested again, together with indications on whether products are using  the latest / more recent SL capabilities, if relevant (e.g. Bento, PBR (once in general use), etc). However, trying to cover everything likely become overly complicated.
  • The idea of “verified” creators was also raised: although exactly what the criteria for this should be might be seen as subjective, or the process itself might be seen as a barrier to entry )were it, for example, involve LL requesting personal information beyond that already requested).
  • Plrease refer to the second half of the video for these and other general discussions.

Next Meeting

  • Wednesday, July 5th, 2023 (according to the public calendar – check for changes). Venue and time per top of this summary.

2023 SL SUG meetings week #18 summary

Kaleidoscope, February 2023 – blog post

The following notes were taken from the Tuesday,  May 2nd Simulator User Group (SUG) meeting. They form 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

  • On Tuesday, May 2nd, the SLS Main channel servers were restarted without any deployment, leaving them on simulator release 579248.
  • On Wednesday, May 3rd, the maintenance release made to the Bluesteel RC channel in week #17 will be deployed to the rest of the RC channels.
    • One of the updates in this release is designed to fix issues “in the vicinity of” BUG-232037 “Avatar Online / Offline Status Not Correctly Updating”. At the time of the week #17 deployment, it was noted that all instances of the issue may not have been fixed, and the time the release has been on BlueSteel proves this to be the case.
    • Similarly, while this update helps fix an issue with avatars colliding with their vehicles on region crossings, it does not fix all region crossing issues; more will be addressed is an upcoming simulator update which should be “heading for RC soon”.

Viewer Updates

No official viewer updates at the start of the week, leaving the pipelines as:

  • Release viewer: Performance Floater / Auto FPS RC viewer, version 6.6.11.579629, promoted April 25.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
  • Project viewers:
    • Puppetry project viewer, version 6.6.8.576972, December 8, 2022.

PBR Materials

With the promotion of the PBR Viewer to Release Candidate status, the plan remains to deploy the server-side code to a Release Candidate channel on the main grid “real soon now”. The code will initially go to the Preflight RC channel with a limited number of regions. Should it prove stable there, it will be expanded to the Snack RC prior to gaining promotion to one (or more) of the “major” RC channels.

In Brief

  • A discussion on region crossings and also an apparent uptick in teleport failures. Again, there is a lot of anecdotal evidence here that might be causing incorrect conclusions to be drawn:
    • Those doing a lot of consecutive region crossings in relatively short order (e.g. through flying, boating, driving) believe issues are “increasing”, and thus drawing the conclusion failures are widespread / endemic, and that those who are not seeing the same issues elsewhere is simply down to those other regions being routinely restarted.
    • Those making region crossings / TPs on a more  extended basis (e.g. interspersed with some amounts of time with each region, rather than just passing through / hopping one to the next) are not seeing the same issues, even within regions subject to heavy use (as with Fantasy Faire), and therefore questioning whether there is any real increase in issues.
    • (Which is not to say region crossings are not problematic; just that they can be subject to subjective responses rather than objective measurement.)
  • BUG-233784 “Add sensor type LOW_SCRIPTED as an option” sparked a debate on whether it should be a feature request or BUG report. This has been raised because the existing SCRIPTED sensor flag only locates objects that have used a substantial amount of CPU time recently, rather than ALL objects with any script in them set to “running”, as someone might reasonably expect when using it; so it is essentially a request for a new flag.
  • BUG-233829 “llSetEnvironment() in neighbouring regions can cause issues with the viewer” –  it has been noted that if llSetEnvironment() (EEP) is set within an adjoining region to one where it is currently being set (and the avatar attempting to set it is registered as a child agent within the ormer region), this can impact attempts within the latter region to change its settings through the EEP options. Whether this means the simulator should be updated so as local environment settings are not sent to child agents, or the viewer should be updated so it does not ask for neighbouring region EEP settings has yet to be determined – as has the time frame for either change to be made.
  • There is a further discussion on llMessageLinked, and the idea of an llMessageListLinked function towards the end of the meeting and script sleep cycles used in llRezObject and llCreateLink. Please refer to the video below for specifics.

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a rooftop of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2023 SL SUG meetings week #17 summary

Grand Garden, February 2023 – blog post

The following notes were taken from the Tuesday,  April 25th Simulator User Group (SUG) meeting. They form 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

  • On Tuesday, April 25th, the SLS Main channel servers were restarted without any deployment, leaving them on simulator release 579248.
  • On Wednesday, April 26th, simhosts on the Bluesteel RC channel will receive a bugfix maintenance release, highlights of which include:
    • “Fixes in the vicinity of” BUG-232037 “Avatar Online / Offline Status Not Correctly Updating” – although all causes of this issue may not be fully resolved with this update.
    • A fix an issue with avatars colliding with their vehicles on region crossings.
    • Removal of a spurious error message that would pop up on llSetKeyframedMotion.
    • Being able to add UUIDs to the ban list that don’t belong to an agent or group and then being unable to remove them.

Upcoming Simulator Releases

  • It is still hoped to get the server-side support for PBR materials to one (Preflight) or two (Preflight and Snack) RC channels. There is no ETA on this, with both viewer and simulator with LL’s QA team.

Viewer Updates

No official viewer updates at the start of the week, leaving the pipelines as:

  • Release viewer: Maintenance R viewer, version 6.6.10.579060, dated March 28, promoted March 30th.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • Performance Floater / Auto FPS RC viewer updated to version 6.6.11.579629, April 20th.
    • Maintenance T RC viewer, version 6.6.11.579154, April 6th.
    • Maintenance S RC viewer, version 6.6.11.579153, March 31st.
  • Project viewers:
    • PBR Materials project viewer, version 7.0.0.579401, April 10 – This viewer will only function on the following Aditi (beta grid) regions: Materials1; Materials Adult and Rumpus Room 1 through 4.
    • Puppetry project viewer, version 6.6.8.576972, December 8, 2022.

In Brief

  • A discussion on llMessageLinked, and the idea of an llMessageListLinked function, starting some 27 minutes into the meeting. To avoid misunderstnadings, please refer to the video below for the full discussion.
  • The above led into a general discussion on possible LSL updates / functions, including the likes of BUG-232312 and BUG-229174 – again, please refer to the video for details.

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a rooftop of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2023 week #16: SL CCUG meeting summary (abbreviated)

OCWA Experience The Ocean, February 2023  – blog post

The following notes were taken from my audio recording and chat log transcript of the Content Creation User Group (CCUG) meeting held on Thursday, April 20th, 2023 at 13:00 SLT. 

These meetings are for discussion of work related to content creation in Second Life, including current work, upcoming work, and requests or comments from the community, together with viewer development work. They are usually chaired by Vir Linden, and dates and times can be obtained from the SL Public Calendar.

Notes:

  • These meetings are conducted in mixed voice and text chat. Participants can use either to make comments / ask or respond to comments, but note that you will need Voice to be enabled to hear responses and comments from the Linden reps and other using it. If you have issues with hearing or following the voice discussions, please inform the Lindens at the meeting.
  • The following is a summary of the key topics discussed in the meeting, and is not intended to be a full transcript of all points raised.

Additional note: unfortunately, my audio recording died whilst saving to disk, leaving me with just the first 10 minutes of audio from the meeting available for playback / summary. Given responses to questions in text are supplied in Voice, it is impossible to provide any reasonable summary beyond the point at which the recording save failed, so this is therefore a very foreshortened report, and not representative of the entire meeting.

Official Viewer Status

The Performance Floater / Auto FPS RC viewer updated to version  6.6.11.579629 on April 20th.

The rest of the official viewers remain as:

  • Release viewer: Maintenance R viewer, version 6.6.10.579060, dated March 28, promoted March 30th.
  • Release channel cohorts:
    • Maintenance T(ranslation) RC viewer, version 6.6.11.579154, April 6th.
    • Maintenance S, version 6.6.11.579153, March 31st.
  • Project viewers:
    • The PBR Materials / reflection probes project viewer, version 7.0.0.579401, April 10th.
    • Puppetry project viewer, version 6.6.8.576972, December 8, 2022.

The Performance Floater / Auto FPS viewer looks set to become the next viewer to be promoted to de facto release status in the coming week.

glTF Materials and Reflection Probes

Project Summary

  • To provide support for PBR materials using the core glTF 2.0 specification Section 3.9 and using mikkTSpace tangents, including the ability to have PBR Materials assets which can be applied to surfaces and also traded / sold.
  • To provide support for reflection probes and cubemap reflections.
  • The overall goal is to provide as much support for the glTF 2.0 specification as possible.
  • In the near-term, glTF materials assets are materials scenes that don’t have any nodes / geometry, they only have the materials array, and there is only one material in that array.
    • It is currently to early to state how this might change when glTF support is expanded to include entire objects.
  • The project viewer is available via the Alternate Viewers page, but will only work on the following regions on Aditi (the Beta grid):  Materials1; Materials Adult and Rumpus Room 1 through 4.
  • Please also see previous CCUG meeting summaries for further background on this project.

Status

  • Viewer:
    • The viewer is now very close to being promoted to Release Candidate status. Issues within the viewer build farm prevented it from getting fully cleared by QA, who are currently taking one more look at it.
    • It is believed that all the significant showstoppers thus far found have been dealt with (although more may show up as a result of it becoming available to a wider audience in RC).
    • The above should include the issue of objects in the camera’s view failing to render unless occlusion culling is disabled and the issues of some mesh items “exploding in the the viewer’s viewer both being fixed.
    • Ton mapping has been updated so there is no longer the ability to change / turn off tone mapping. This has been done in the name of “trying to keep things consistent” with older contents that has tone mapping built-in. This does lead to a few edge cases (such as not being able to get totally pitch black environments), but also fixes some issues around general exposure (e.g. preventing full bright objects changing brightness depending on camera distance).
    • It is likely that the work on exposures will eventually be fed into the snapshot tool, so photographers can adjust the exposure settings for them pictures.
    • There is still a collection of minor issues / bugs still to be resolved – such as getting parity some some of the current sky settings – which will be dealt with in RC as the viewer progresses.
    • Those who do find significant issues in using the viewer in RC are asked to report them via a BUG report ASAP.
  • When the view does go to RC, it is likely the server-side support will be deployed to one (Preflight) or possibly two (Preflight and Snack) small simulator RC channels to allow for testing on Agni (the Main grid). Details of the available regions will be published in my project summaries as and when available.

Future glTF Work

  • There is an internal (to LL) design document in development which is intended to set-out the next steps in the glTF work; however, this is not currently ready for public release.
  • Past indicators have been that it is possible the near-term work for glTF could include planar mirrors (with some controls around their use) and also glTF mesh uploads.

Next Meeting

  • Thursday, May 4th, 2023.

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a gathering of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2023 SL SUG meetings week #16 summary

Burrow Wood County, February 2023 – blog post† 

The following notes were taken from the Tuesday,  April 18th Simulator User Group (SUG) meeting. They form 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

  • On Tuesday, April 18th, the SLS Main channel servers were updated with simulator release 579248, previously deployed to the RC channels. This means the doubling of linkset data memory (to 128KB) and the three LSL functions for strided list management – llList2ListSlice(), llSortListStrided(), and llListFindListStrided() – are now grid-wide.
  • On Wednesday, April 19th, simhosts on the RC channels will be restarted, but there will not be any new deployments to them.

Upcoming Simulator Releases

  • It is still hoped to get the server-side support for PBR materials to at least one RC channel – Preflight, with the potential it might also go to Snack as well – but there was no ETA on this at the time of the meeting. Currently, it remains with LL’s QA team.

Viewer Updates

No official viewer updates at the start of the week, leaving the pipelines as:

  • Release viewer: Maintenance R viewer, version 6.6.10.579060, dated March 28, promoted March 30th.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • Maintenance T RC viewer, version 6.6.11.579154, April 6th.
    • Performance Floater / Auto FPS RC viewer updated to version 6.6.11.579238, April 4th.
    • Maintenance S RC viewer, version 6.6.11.579153, March 31st.
  • Project viewers:
    • PBR Materials project viewer, version 7.0.0.579401, April 10 – This viewer will only function on the following Aditi (beta grid) regions: Materials1; Materials Adult and Rumpus Room 1 through 4.
    • Puppetry project viewer, version 6.6.8.576972, December 8, 2022.

In Brief

  • llGetAgentInfo received a new flag – AGENT_AUTOMATED – in week #15, however, the simulator side has et to be released; it is currently in a maintenance simulator support which may go to QA for testing in week #17.
    • This raised concerns of whether or not llGetAgentInfo was the right place for this flag, and whether it could result in the dataserver being spammed with requests from people wanting to know if visitors to their land were avatars or scripted agents. However, as Rider Linden pointed out, the simulator already has information on scripted agent, so there is no requirement for the simulator to query the dataserver.
    • See the video for the broader discussion on when the flag for a scripted agent is propagated across the grid.
  • There was a general discussion on possible LSL enhancements. This included:
    • Possible improvements to notecard handling by LSL (e.g. searching notecards – e.g. BUG-4906 -, faster notecard reading, a safe means of sending back the contents of a notecard so a script doesn’t need to build a web page on the fly / read the entire contents of the notecard into memory).
    • HTTP response expansion.
  • Objects rezzing objects: it has been noted that if an object is set to rez other objects (e.g. say a “crate dispenser” which might be used as a visual enhancement to Get The Freight Out to simulate cargo loading), the rezzing tends to work perfectly when the rezzing object’s owner is present, but can experience issues when the owner is not present.
    • This tends to occur if rezzing within the land is restricted to Group membership, and object owner did not correctly set their active group prior to placing out the rezzing object.
    • As the owner’s group is checked when present, this allows the rezzer to work correctly, hence why the problem only surfaces when they are absent.
  • For all other discussions, please refer to the view below.

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a rooftop of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2023 SL Puppetry project week #15 summary

Puppetry demonstration via Linden Lab – see below.  Demos video with the LL comment “We have some basic things working with a webcam and Second Life but there’s more to do before it’s as animated as we want.”

The following notes have been taken from chat logs and audio recording of the Thursday, March 23rd, 2023 Puppetry Project meetings held at the Castelet Puppetry Theatre on Aditi. These meetings are generally held on alternate weeks to the Content Creation User Group (CCUG), on same day / time (Thursdays at 13:00 SLT).

Notes in these summaries are not intended to be a full transcript of every meeting, but to highlight project progress / major topics of discussion.

Project Summary

General Project Description as Originally Conceived

LL’s renewed interest in puppetry was primarily instigated by Philip joining LL as official advisor, and so it really was about streaming mocap. That is what Philip was interested in and why we started looking at it again. However since Puppetry’s announcement what I’ve been hearing from many SL Residents is: what they really want from “puppetry” is more physicality of the avatar in-world: picking up objects, holding hands, higher fidelity collisions. 
As a result, that is what I’ve been contemplating: how to improve the control and physicality of the the avatar. Can that be the new improved direction of the Puppetry project? How to do it?

Leviathan Linden

  • Previously referred to as “avatar expressiveness”, Puppetry is intended to provide a means by which avatars can mimic physical world actions by their owners (e.g. head, hand, arm movements) through tools such as a webcam and using technologies like inverse kinematics (IK) and the  LLSD Event API Plug-in (LEAP) system.
    • Note that facial expressions and finger movements are not currently enabled.
    • Most movement is in the 2D plain (e.g., hand movements from side-to-side but not forward / back), due to limitations with things like depth of field tracking through a webcam, which has yet to be addressed.
  • The back-end support for the capability is only available on Aditi (the Beta grid) and within the following regions: Bunraku, Marionette, and Castelet.
  • Puppetry requires the use of a dedicated viewer, the Project Puppetry viewer, available through the official Second Life Alternate Viewers page.
  • No other special needs beyond the project viewer are required to “see” Puppetry animations. However, to use the capability to animate your own avatar and broadcast the results, requires additional work – refer to the links below.
  • There is a Puppetry Discord channel – those wishing to join it should contact members of LL’s puppetry team, e.g. Aura Linden, Simon Linden, Rider Linden, Leviathan Linden (not a full list of names at this time – my apologies to those involved whom I have missed).

Additional Work Not Originally In-Scope

  • Direct avatar / object / avatar-avatar interactions (“picking up” an apple; high-fives. etc.).
  • Animations streaming: allowing one viewer to run animations and have them sent via the simulator to all receiving viewers without any further processing of the animations by those viewers.
  • Enhanced LSL integration for animation control.
  • Adoption of better animation standards – possibly glTF.
  • Given the project is incorporating a lot of additional ideas, it is likely to evolve into a rolling development, with immediate targets for development / implementation decided as they are agreed upon, to be followed by future enhancements. As such, much of what goes into the meetings at present is general discussion and recommendations for consideration, rather than confirmed lines o development.

Bugs, Feature Requests and Code Submissions

  • For those experimenting with Puppetry, Jiras (bug reports / fixes or feature requests) should be filed with “[Puppetry]” at the start of the Jira title.
  • There is also a public facing Kanban board with public issues.
  • Those wishing to submit code (plug-ins or other) or who wish to offer a specific feature that might be used with Puppetry should:

Further Information

Meeting Notes

Viewer Progress

  • An updated version of the project viewer is still “close” – it is currently awaiting clearance by QA.
  • This will include the attachment point tracking discussed in previous meetings (e.g., a step towards being able to “pick things up” in SL. The simulator support for this is already in place on the Aditi Puppetry regions.
  • However when available it will not include:
    • LSL animation control as yet (which has yet to be added to the simulator code anyway. Rider Linden believes he has a good protocol for single avatar animation, but would rather work on it some more.
    • Any IK improvements, as Leviathan Linden is still working on these.
    • Any extended LEAP API functionality (the added features for getting world position/orientation, lookat position/orientation, camera position/orientation/target). This will be coming in a future viewer update.
  • Another thing in this release will be the change to llsd_binary for the LEAP messaging protocol. This will be in the release notes but to use it you will want to update to either 1.3.1 of llbase and/or 1.2.0 of llsd for python scripts. Messages from LEAP scripts to the viewer will still work with the older python libraries, but messages from the viewer to the script will not be parsed correctly.

Server-Side Work

  • The LSL function API has been published to the Content Creation Discord group (sorry, I’ve been asked by LL not to publish details on joining the server – if you are a content creator interested in joining it, please contact Vir Linden or attend a meeting (Content Creation / Puppetry and ask in person).
  • Getting attachment point positions has been given a throttle, in part to not make it trivial to use LSL to rip an animation, and in part to prevent the server doesn’t get overwhelmed. This latter rate of throttling is variable and can change as load increases/decreases. However, as Rider linden noted, there would always be some delay and some disagreement about the actual position of the attachment point between LSL and all the observing viewers. As such, function is not meant for a high-fidelity use. Collision volumes on the attachment points will be a better solution in this respect, but that is functionality which is still down the line.

General Notes

  • Leviathan Linden’s work for streaming the full avatar animation state has stalled, due to it essentially hijacking the main puppetry data channel to send everything, even when not running a puppetry script, through LEAP. As such, Leviathan thinks it needs to be moved to its own experimental viewer.
  • Simon Linden’s work on allowing animation uploads of new/different formats has been decoupled from the Puppetry project’s codebase, and is now being built on the main viewer branch, allowing it to move forward without dependencies on Puppetry.
  • OpenXR support as a LEAP plug-in is still seen as desirable, since it would allow support for a broader range of devices. However, it is seen as a little more “down the road”, as there is some core infrastructure that needs to finish being vetted prior to work starting on this.

My thanks to Jenna Huntsman for the chat transcript from the meeting, and you can see her video recording of the session here.

Date of Next Meeting

  • Thursday, April 27th, 2023, 13:00 SLT.