2024 week #16: SL CCUG summary

Selen’s Gallery, April 2024: Gem Preiz – Do You Like Gold? 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 18th, 2024.

Meeting Purpose

  • The CCUG meeting is for discussion of work related to content creation in Second Life, including current and upcoming LL projects, and encompasses requests or comments from the community, together with related viewer development work. This meeting is held on alternate Thursdays at Hippotropolis.
  • In regards to meetings:
    • Dates and times are recorded in the SL Public Calendar.
    • Commence at 13:00 SLT on their respective dates.
    • Are conducted in a mix of Voice and text chat.
    • Are open to all with an interest in content creation.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Status

  • On Friday, April 19th, the Maintenance YZ RC ( My Outfits folder improvements; ability to remove entries from landmark history updated to version 7.1.6.8745209917.
  • On Wednesday, April 17th, Maintenance X RC viewer (usability improvements) updated to version 7.1.6.8709279750.

The rest of the official viewers remain as:

  • Release viewer: version7.1.5.8443591509, formerly the Maintenance-W RC (bug and crash fixes), version and issued March 29th, promoted April 9th –
  • Release channel cohorts:
  • Project viewers:

It is possible the glTF Maintenance-2 RC viewer might be promoted to de facto release status early in week ’13 (commencing Monday, March 25th, 2024).

Graphics / glTF

  • Work continues on the GLTF Featurettes viewer + support.
    • The viewer is in RC with on-going bug fixes.
    • The simulator support is now on a Preflight channel on Agni (the Main grid), which includes the regions Rumpus Room 2048; Rumpus Room 2049; Rumpus Room 2050 and Rumpus Room 2051.
  • 2K Textures:
    • Are not currently supported for upload onto the Main grid.
    • The fees for 2K textures have been set as follows:
      • Basic / Plus account: L$50 per texture.
      • Premium account: L$40 per texture.
      • Premium Plus: L$10 per texture.
    • 2K textures for Bakes on Mesh requires a substantial update to the Bake service (as is frequently mentioned at CCUG meetings), and currently this does not appear to be in the works.
  • Mirrors:
    • Now leverage the Dynamic flag. When set, this tells the mirror to reflect everything in the rendering pipeline including avatars and particles). if the flag is not set, avatars are particles are not rendered, just the environment (e.g. for a reflective floor which reflects the room, but rendering the avatars would cause a massive performance hit).
    • Mirror probes can now be set using LSL.
    • The updated UX for Mirrors is still not done, and it is acknowledged that setting up a mirror is far from intuitive. A good 10+ minutes of the meeting was devoted to “how to make a mirror” – rather proving the point!
  • Work has started on prototyping glTF scene handling (as part of the overall glTF scene import work). Initial work is to enable the showing of a scene locally within the viewer using a debug setting. More on this as the option becomes available in a viewer. But in short:
    • Once imported, glTF scenes will be an inventory asset type.
    • Each scene with by associated with an in-world object (e.g. a prim), which becomes its “handle”.

In Brief

  • Custom skeletons: this is an ongoing debate within LL. glTF allows for custom skeletons and animations. Second Life has a defined avatar skeleton and recognised animation formats for use against it.
    • As such, there is a disparity between SL and glTF, as in theory, adherence to the glTF specification means recognising the use of custom skeletons with their own animations – which would then be incompatible with the existing SL format(s), and lead to potential confusion  / clashes between established avatar types using the SL skeleton and custom skeletons.
    • Thus, some navigation is required to determine if / how custom skeletons might be handled without confusing the existing consumer market in SL in terms of what accessories work with which type of avatar.
  • Emissive strength is seen as “feeble” by some, so a request was made for a numeric box in which a desired emissive strength might be entered. As the glTF specification allows for this, it is something that could be added to a future viewer iteration (but not necessarily would be – Feature Request?).
  • Much of the meeting was about what extensions LL might consider, how things like emissive maps and lighting might be handled in the future, IOR, transmission and the potential to add iridescence – some of which are being worked on (IOR and transmission) and will be reported on in summaries as they come along, others are seen as possibly / maybe.

Next Meeting

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

2024 week #14: SL CCUG summary

Memories of Dreams, April 2024 – 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 4th, 2024.

Meeting Purpose

  • The CCUG meeting is for discussion of work related to content creation in Second Life, including current and upcoming LL projects, and encompasses requests or comments from the community, together with related viewer development work. This meeting is held on alternate Thursdays at Hippotropolis.
  • In regards to meetings:
    • Dates and times are recorded in the SL Public Calendar.
    • Commence at 13:00 SLT on their respective dates.
    • Are conducted in a mix of Voice and text chat.
    • Are open to all with an interest in content creation.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Status

  • On Wednesday, April 3rd, the Materials Featurettes RC viewer updated to version 7.1.5.8472515256.
  • On Tuesday, April 2nd, the Maintenance X RC viewer (usability improvements) updated to version 7.1.5.8443777128.

Both of these updates were to bring the above viewers to code parity with the current release viewer (with bug fixes to to the Featurettes viewer as well). The rest of the official viewers remain as:

  • Release viewer: version 7.1.4.8149792635, formerly glTF PBR Materials Maintenance-2 RC viewer, promoted March 26, 2024.
  • Release channel cohorts:
    • Maintenance-W RC (bug and crash fixes), version 7.1.5.8443591509, March 29.
    • Maintenance Y RC ( My Outfits folder improvements; ability to remove entries from landmark history + Maint Z RC integration), version 7.1.5.8448596295, March 29.
  • Project viewers:

It is possible the glTF Maintenance-2 RC viewer might be promoted to de facto release status early in week ’13 (commencing Monday, March 25th, 2024).

Graphics / glTF

  • Work continues on the GLTF Featurettes viewer + support.
    • The view is in RC, but the simulator-side support is still working its way through the system for full deployment on Agni (the Main grid).
    • The RC viewer has been undergoing numerous bug fixes related to both PBR Terrain textures and Mirrors, some of which are in the most recent update, others of which will be included at the viewer continues to be updated.
    • The UI/UX changes required for Mirrors to overcome confusion relating to the placement of things like Mirror reflection probes (with the creation of Mirrors described a “not intuitive”) is still under discussion at the Lab and so yet to be implemented within the Featurettes viewer.
    • The pricing structure for uploading 2K textures is currently being finalised, although it is not ready to be formally announced.
      • As with other services / uploads, the pricing looks like it will be based upon subscription level (e.g. cheaper for the likes of Premium Plus / Premium than for Plus / Basic) and the overall resolution of the texture.
      • Further work will also be required on the back-end services to fully support the upload of 2K textures.
      • An upshot of this is that at the time of writing, there is a communications mismatch between the viewer and the Aditi test regions supporting 2K texture uploads, resulting in such attempts falling over.
  • The HDRI support (replacing the sky with an HDRI file when rendered locally within a viewer to assist creators in checking to confirm their objects render in SL as they are seen within the tools they use to create their content – e.g. Substance Painter – and any variations are not related to the shader / import pipe) is still being tweaked.
    • In particular, now it has been tested internally and seen as offering some potentially interesting uses over and above pure EEP settings, consideration is being given to making HDRI an actual sky setting with simulator-side support.
    • One aspect of this would be the ability to use the lighting effects of HDRI within EEP sky settings, thus providing more true-to-life lighting without losing the use of existing EEP settings. Another might be using HDRI maps inside buildings and structure and not having the sky setting lighting leak into the structure.
    • Again, it’s important to not adding back-end support for HDRI is a future implementation, rather than anything being worked on right now, and would require work on both the simulator and back-end services (e.g. a new asset type to support HDRI would be required).
  • Light sources: there have been requests for the likes of point light shadows (e.g. so a map on a table casts is own shadows); the ability to explicitly state whether or not a light source casts a shadow or not; ability to support shadows from multiple light sources (depending on rendering settings).
    • Some of this might be addressed through glTF scene import, and / or through further adoption of the glTF specification for lighting (e.g. punctual lights / physical lights  – such as spotlight cones, etc.).
  • The work of glTF scene imports officially commenced in week #14. This work will be tackled in a similar manner to the Featurettes viewer – elements added to the viewer but placed behind debug flags until such time as they can be properly tested as the simulator support can be added (initially via Aditi, the Beta grid).
    • The will allow the viewer to be worked on and tested (with user testing) iteratively, rather than the work disappearing into a viewer fork that doesn’t see the light of day for months.
  • It was asked whether or not EXR might be a better option for SL skies rather than EEP + HDRI.
    • Runitai Linden noted he has experimented with EXR alongside of EEP and found that while EXR comes “close” to matching EEP skies, its doesn’t quite have the same range, whereas the HDRI lighting overlap with EEP offers easier flexibility of use.
    • He also noted again that the primary reason for providing HDRI support was to allow creators that means of reference checking their content between SL and their modelling tool to ensure it is appearing as expected after going through the SL upload pipe, etc., when compared to its appearance into their development tool.
  • Does the emissive map “knock out” the normal map if it is bright? No, but it can overpower the normal may and cause bumpiness, etc., to be less distinct.

In Brief

  • There was a general discussion on reflection probes and why they are limited in terms of shape (sphere or cube) and supporting other shapes+ illumination issues where probes overlap.
    • The shapes are necessarily limited largely as a result of performance stability.
    • It was acknowledged that blending lighting between probes is more a matter of improving / altering SL’s default ambient lighting model – which may well be looked at down the road.
    • The current advice is to – if necessary – “bomb” a scene with reflection probes  – and if that doesn’t work, disable probe ambience in favour of the global ambience – it will still allow the probe radiance and so generate reflections.
  • Occlusion volumes: the question was asked if it will ever be possible to have occlusion volumes in SL such that a room and its contents are never rendered in a viewer until the user actually enters the room in question.
    • It was acknowledged that this is the kind of thing the work with reflection probes might lead to, in terms of the basic mechanics being similar from a user’s perspective.
    • However, there are no current plans for developing such occlusion volumes at present, and a feature request on how user might want to use them / see them as working has been requested so the idea can be more formally reviewed / considered.

Next Meeting

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

2024 week #12: SL CCUG summary

Serene Retreat, February 2024 – 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, March 21st, 2024.

Again, apologies for the lateness of this appearing; a major RL home project is getting finished-up, but it is still taking a good deal of my time.

Meeting Purpose

  • The CCUG meeting is for discussion of work related to content creation in Second Life, including current and upcoming LL projects, and encompasses requests or comments from the community, together with related viewer development work. This meeting is held on alternate Thursdays at Hippotropolis.
  • In regards to meetings:
    • Dates and times are recorded in the SL Public Calendar.
    • Commence at 13:00 SLT on their respective dates.
    • Are conducted in a mix of Voice and text chat.
    • Are open to all with an interest in content creation.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Status

No changes to any of the official viewers through the week, leaving the list as:

  • Release viewer: version 7.1.3.7878383867, the Emoji Viewer, issued February 15, promoted March 1st, 2024 – NoChange.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • glTF PBR Materials Maintenance-2 RC viewer, version 7.1.4.8149792635, March 11, 2024.
    • Maintenance X RC (usability improvements), version 7.1.4.8148263040 , March 11, 2024.
    • Maintenance-W RC (bug and crash fixes), version 7.1.4.8113624779, March 6, 2024.
    • Maintenance Y RC ( My Outfits folder improvements; ability to remove entries from landmark history + Maint Z RC integration) updated to version 7.1.4.8114240508, March 6, 2024.
  • Project viewers:

It is possible the glTF Maintenance-2 RC viewer might be promoted to de facto release status early in week ’13 (commencing Monday, March 25th, 2024).

Graphics / glTF

  • Work continues on the GLTF Featurettes viewer.
    • There have been refinements to the applying glTF materials to terrain, notably the UV density was halved in the interest of 2K textures, and further work put into making sure repeats are less noticeable.
    • It will now be possible to have alpha under PBR terrain “under limited circumstances” (e.g. single-sided and alpha masked)
    • Discussions have started at the Lab on the fees applicable for 2K texture uploads, but no decision on what this is likely to be.
    • Mirrors have also bee going through further refinements (e.g. a Hero reflection probe for a mirror can now have similar – but not the same – fall-off as other reflection probes, so it is no longer necessary to have a “really massive” probe to get a reflection; also, a mirror reflection probe now has the ability to go between a box probe or a sphere probe, influencing how it gets masked on a reflective surface).
    • It has been noticed that people trying the pre-release versions of the Featurettes viewer have been very confused as to the placement of things like mirror probes. Therefore, the viewer is going through a further UI/UX review in order to try to make things less confusing.
    • There are also some optimisation issues (again with mirrors) which may have to be revisited.
    • Brad Linden has been working on the server-side support for the Featurettes viewer through QA. If this is successful, it will allow the graphics team to work with the simulator team to get the code into an Agni (Main grid) channel (either as Preflight or as an RC channel).
  • Index of Reflection (IOR):
    • Initially will be a numerical value which can be adjusted, and which will be “bundled” with transmission
    • LL will attempt to get volume and dispersion included at some future iteration.
    • In this, it was pointed out that within the glTF specification, IOR requires both transmission and volume: transmission gives the basics for refraction (e.g. glossy refraction); whilst volume allows for things like colours within the refraction.
    • It’s not clear if attenuation will be used with respect to IOR.

In Brief

  • “Flexi mesh” – a long-standing request to have mesh interact with physics to make it flexible in the same manner as flexiprims (i.e. movement but without collisions being calculated). The response to this was:
    • The flexiprim system doesn’t really work for mesh.
    • What would be required is dynamic bones (as seen on other platforms). However, providing this has a number of pre-requisites (e.g. custom skeletons on hair for hair movement). As such, it is not something that is liable to be implemented in the near-term (if doable).
    • In terms of using Havoc physics interacting with mesh, the short answer is: not possible. It would require Havoc physics libraries which cannot (due to licensing) be made available to the viewer, due to the latter’s open-source nature.
  • Bake Service updates:
    • LL have acknowledged that it has been some time since the Bake Service has been updates, and that there are multiple requests for improvements and additions to the service (e.g. PBR materials support).
    • A potential project to update the Bake Service and implement some of the requested updates is currently being considered. However, a decision on where this will fit in the roadmap and what it will include has yet to be taken.
    • There is a fear among some that if the Bake Service is not updated specifically to support 2K textures when that is deployed, it could see Bakes On Mesh deprecated by creators in favour of applier systems which can utilise 2K textures (even if the system downsamples them on the basis of size).
  • With regards to 2K textures:
    • It appears that LL are trying to make heir use system specific: if a user is on a computer with the capacity to handle 2K textures, then they get 2K; if a user is on an older system (e.g. one limited by VRAM), then the largest textures they get are 1K.
    • For PBR terrain using 2K textures, there are some glTF specification-defined fallbacks the Lab hare leveraging to ease the load on lower-end systems.
  • It appears the PBR release has broken the Render Resolution Debug setting (most often used by RLV(/a) for screen blurring). A fix for this might be in the glTF Maintenance-2 RC viewer.

Next Meeting

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

2024 week #10: SL CCUG summary

Monkey Island, February 2024 – 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, March 7th, 2024.

My apologies for the lateness of this report appearing; right now I have a lot going on in the physical world, and the blog and SL are having to take a back seat through until early April, after which things should start to (hopefully) return to normal.

Meeting Purpose

  • The CCUG meeting is for discussion of work related to content creation in Second Life, including current and upcoming LL projects, and encompasses requests or comments from the community, together with related viewer development work. This meeting is held on alternate Thursdays at Hippotropolis.
  • In regards to meetings:
    • Dates and times are recorded in the SL Public Calendar.
    • Commence at 13:00 SLT on their respective dates.
    • Are conducted in a mix of Voice and text chat.
    • Are open to all with an interest in content creation.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Status

  • The Maintenance-W RC (bug and crash fixes) updated to version 7.1.4.8113624779, on March 6th, 2024.
  • The Maintenance Y RC ( My Outfits folder improvements; ability to remove entries from landmark history + Maint Z RC integration) updated to version 7.1.4.8114240508, March 6, 2024.

Both of the above are at parity with the Emoji release viewer. The rest of the current crop of official viewers remains:

  • Release viewer: version 7.1.3.7878383867, the Emoji Viewer, issued February 15, promoted March 1st, 2024 – NEW.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • glTF PBR Materials Maintenance-2 RC viewer, version 7.1.3.7821226606, February 20, 2024.
    • Maintenance X RC (usability improvements), version 7.1.3.7721015131 , February 14, 2024.
  • Project viewers:

Graphics / glTF

  • Work continues on the GLTF Featurettes viewer, and it is hoped the release on an official project viewer is now not far off. This viewer includes:
    • Geenz Linden’s work on Mirrors, including his latest updates to the capability.
    • Cosmic Linden’s work on applying glTF materials to terrain (currently going through UI bug fixing + this is going to possibly reduce the number of texture repeats in light of 2K textures).
    • Updates which will allow the glTF / PBR swatch boxes in the Build / Edit floater display previews of the materials being selected, rather than grey boxes.
    • The first series of additional glTF extensions – Index of Refraction.
    • Initial work on 2K textures support.
    • Local high dynamic range imaging (HDRI) preview. This will allow content creators to view content in-world under the same HRDI settings as they are using in their tool of choice as a sanity check as SL environments / EEP will render them differently, leading to potential confusion and a belief that the HDRI settings are “wrong”.
    • The nightly builds version of the Featurette viewer is available on Github, but is not suitable for use as a primary viewer, and the capabilities are not supported on the Main grid. As such, this viewer should only be used by those wishing to test the capabilities.
    • The Rumpus Room 2048 region (and neighbours) on Aditi provides back-end support for the Featurettes viewer.
  • With reference to 2K textures, it was noted that while the viewer will have the ability to upload them, the actual ability to do so will be under the control of the simulator code; so just having the viewer-side update does not necessarily mean 2K textures can be uploaded grid-wide.
  • glTF terrain texturing: the focus has been on bug fixing and improving usability.

In Brief

  • Materials support for Bakes on Mesh: this has frequently been requested, and while it has a placeholder in the the Lab’s plans for possible implementation, it is is not currently scheduled to be worked on.
  • It was reiterated that blend shapes will be part of the work to support glTF scene import.
    • glTF scene import will allow and entire glTF scene file (scripts, node hierarchy, etc.) to be imported to SL and essentially “hung off” of a single object in-world.
    • Exactly how this will work, what limitations it will have, etc., in order to avoid “breaking” SL or opening griefing vectors, etc., has yet to be decided.
    • Similarly, glTF scene support will have its own Land Impact calculations, which are currently still TBD within the Lab.
    • Currently, glTF is due to start-up as a major project after the glTF featurette viewer has reached release status.
  • Splat Maps have been requested in the past with terrain painting. These are described as “in the early phase of consideration”, and if taken on, might be a “PBR Terrain Phase II” feature.
  • The subject of separating head and body shapes was raised – this has been the subject of a feature request, which has been accepted (Tracked). As always, “accepted” does not necessarily equate to it being quickly implemented.
  • Land Impact:
    • An update to the Land Impact is due to be deployed on the simulator side, in the Hearts and Flowers release (due to start deployment on March 13th, 2024).
    • This does not change the total Land Capacity (“prims”) for a region; but it does reduce the download weight calculated for meshes
    • This equates to a “15% discount” on mesh object Land Impact (all mesh with the exception of Animesh, not just mesh items downloaded after the update is deployed).
  • Reference was made to the upcoming shift of object inventory messaging moving to HTTP.
    • This should result in the contents of objects rezzed in-world loading “many time faster” than is currently the case.
    • The update will be deployed to the simulator code first, and then be subject to a viewer-side update.
  • With the switch to Github / Canny, LL is trying to be more transparent in terms of planning, projects, issues, etc., looking to have as much public as possible (except things like security issues, which need to be limited in who can view them for obvious reasons). However, while this will allow users to see more of what is in the works / being considered, it also means that projects and work can appear to sit apparently dormant for periods even longer than on Jira
  • How (viewer) feature requests are prioritised (in short):
    • Those which are accepted and form small, relatively stand-alone requests will be directed towards “featurette viewers” of the kind like the glTF featurette viewer mentioned above. The hope is that this will allow devs to pick them up and work on theme in between larger projects or when larger projects are stalled for whatever reason, allowing more of this type of request to filter through the the viewer more readily.
      • In addition, if this works and a Canny Board of such requests can be built-up, it might allow LL to open it to open-source developers to pick items they’d like to work on and then contribute the code to LL.
    • Larger-scale feature requests (such as adding materials support to BOM) will be subject to more extensive investigation / evaluation and internal prioritisation against other large-scale / high-value work, by LL.

Next Meeting

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

2024 week #7: SL CCUG & TPVD summaries + Lua(u) scripting; Jira Archive

Timeless Seasons, January 2024 – 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, February 15th, 2024, and the chat log transcript and video of the Third-Party Viewer Developer (TPVD) meeting held on Friday, February 16h, 2024. My thanks as always to Pantera for recording the TPVD meeting and providing the video, which is embedded at the end of this article.

  • The CCUG meeting is for discussion of work related to content creation in Second Life, including current and upcoming LL projects, and encompasses requests or comments from the community, together with viewer development work. This meeting is held on alternate Thursdays at Hippotropolis.
  • The TPV Developer meeting provides an opportunity for discussion about the development of, and features for, the Second Life viewer, and for Linden Lab viewer developers and third-party viewer (TPV) / open-source code contributors to discuss general viewer development. This meeting is held once a month  the third or fourth Friday, at 13:00 SLT at the Hippotropolis Theatre.
  • In regards to both meetings:
    • Dates and times are recorded in the SL Public Calendar.
    • Commence at 13:00 SLT on their respective dates.
    • Are conducted in a mix of Voice and text chat.
    • Are open to all with an interest in either content creation or viewer development.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of either meeting.

Official Viewers Status

[Video: 1:40-2:38]

  • On Thursday, February 15th, the Emoji viewer updated to version 7.1.3.7878383867.
  • On Wednesday February 14th, the Maintenance X RC (usability improvements) updated to version 7.1.3.7721015131.

The rest of the current crop of official viewers remains as:

  • Release viewer: version 7.1.2.7215179142, formerly the glTF PBR Materials Maintenance RC, issued December 15, promoted January 8, 2024 – numerous bug fixes and improvements – No Change.
  • Release channel cohorts:
    • Maintenance Y RC, version 6.6.17.6935642049, February 9 – My Outfits folder improvements; ability to remove entries from landmark history.
    • Maintenance-W RC viewer, version 7.1.3.7701974306, January 31, 2024 – bug and crash fixes.
    • glTF PBR Materials Maintenance-2 RC viewer, version 7.1.3.7467259489, issued January 12, 2024.
  • Project viewers:

General Notes

  • While there has been a push to get the Emoji viewer promoted, it is currently not clear which RC viewer will be the next to go to de facto release status.
  • GlTF Materials bug fixes will likely be split between the current Main-2 glTF viewer and the Graphics Featurettes viewer (see below).

Lua (or Luau) Client-Side Scripting (Both Meetings)

TPVD – Video: 3:05-17:30]

On February 9th, 2024, Linden Lab slipped out a Tools & Technology blog post announcing they are experimenting with Lua (Portuguese for “Moon”  – hence the logo for the language),  a lightweight, high-level, multi-paradigm programming language designed primarily for embedded use in applications, for client-side scripting capabilities.

At the TPVD meeting [4:44-5:12], it was qualified that LL is actually looking at Luau, a Lua VM implementation developed by Roblox. It is hoped that this will enable the code to be sandboxed from the rest of the operating system.

General Points

  • Among other potential uses, this is seen as a possible means of providing:
    • Better support for, and control of, scripted agents (including automated testing capabilities using such agents).
    • Providing a means of supporting custom UI extensions / plug-ins without having to resort to C++.
    • Adding custom displays to present exiting information in the viewer, etc.
    • At the TPVD meeting [9:28-10:06], Rider Linden noted the Luau code will not interact with LSL scripted HUDs, and should not be seen as a means of viewer-side scripting of LSL HUDs at this point.
  • The capability is not being seen as “replacing” anything, the focus is on extending capabilities and providing creators and general users with more tools they might want to use.
  • There is a  Github repository for the viewer – which is still experimental – which can be used on Aditi (the beta grid) by those interested in testing it.
  • The project is described as “very early stages”, and creators / coders should not “read too much into” the current state of the project.
    • What is in it is a basic proof-of concept implementation designed to see how feasible it might be to pursue providing a client-side scripting option. Commands within the code may change as the capability is being developed.
    • How the API(s) will work and how it will look is still a work in progress, and how Lua can be used / where limits might be applied, etc., is still subject to internal discussion at the Lab.
    • It has also not been decided if the Lua/Luau support will extend to the mobile viewer.

Discussion Points

  • Lua/Luau has been selected because it is a small, lightweight language which is not dependent on the user having to install anything else on their computer in order for it to work.
  • It was suggested at the TPVD meeting that the capability should include the ability to disable it, so that TPVs providing support for their users will not have to try to determine if an issue is part of the viewer code or the result of running a Luau script they are not familiar with.
  • There has already been considerable discussion on Lua (and client-side scripting) via the Second Life Feedback Portal, and concerns raised on issues of permissions, authorship and trust within an environment where script code can make the viewer do arbitrary (and hidden from view) things is undesirable.
    • These have been acknowledged as concerns which will need to be addressed as the work progresses.
    • Plus, it was noted that any use of Lua/Luau with user-generated content will be much further down the road than any initial implementation.

JIRA Archive and Move to Canny / Github (CCUG)

  • Thursday, February 15th, 2024 marked the official switch-over from Jira to Canny / Github.
  • The URLs for the Second Life Jira now automatically redirects to the Canny Second Life Bug Reports page.
  • Public bug reports (and feature requests) filed via Jira are mostly archived on Github.
    • Due to the different permissions environments within Jira and Github, there are some edge cases which have yet to be archived.
  • Note that any ticket that previously had restricted access e.g. (Linden Only / Originator + Lindens) is not part of this archive.
  • Please refer to the official blog post for more, if required.

Graphics / glTF (CCUG)

  • 2K textures are being looked at. LL is aware that care needs to be taken in consideration of things like memory footprint and performance (particularly for lower-end systems), so there is going to be further analysis before anything is likely to surface within a public viewer.
  • The “Graphics Featurettes” viewer is  approaching Project Viewer status, and includes:
    • Geenz Linden’s work on Mirrors, including his latest updates to the capability.
    • Cosmic Linden’s work on applying glTF materials to terrain.
    • Updates which will allow the glTF / PBR swatch boxes in the Build / Edit floater display previews of the materials being selected, rather than grey boxes.
    • The first series of additional glTF extensions – Index of Refraction.
    • Initial work on 2K textures support.
  • Mirrors: the focus has been on optimisations and performance improvements to try to raise viewer frame rates. Whilst there have been improvements, the work has yet to reach the desired FPS range. Further:
    • There are a range of bugs which need to be resolved.
    • Additional work is also required on the reflection probe selection code for Mirrors, as at times the wrong probe is selected, giving less-than-desirable results.
    • Further visual improvements need to be added to the code, particularly with mirror blending against other reflection probes in the scene.
    • The UX for mirrors still needed to be finalised via the viewer UI team.
  • glTF terrain texturing: the focus has been on bug fixing and improving usability.
  • The nightly builds version of the Featurette viewer is available on Github, but is not suitable for use as a primary viewer, and the capabilities are not supported on the Main grid. As such, this viewer should only be used by those wishing to test the capabilities.
    • When testing, note that in keeping with the “featurette” approach, the capabilities may be hidden behind debug setting flags.
  • The Rumpus Room 2048 region (and neighbours) on Aditi provides back-end support for the Featurettes viewer.

In Brief

  • The CCUG meeting had a lot of WIBNI‡ discussions around inventory and other ideas, some of which are on LL’s “sometime” list, others of which are not under current consideration. As such, these are ignored for the purposes of this summary, but will obviously be covered should they become active projects.

TPVD Meeting

  • It was requested that Emojis have an option to be completely disabled in a viewer, with it being pointed out that it could be potentially confusing for people with visual impairments, particularly in group chat rife with Emoji over-use. LL has no plans for this; some TPVs (Firestorm) are planning on providing such an option.
  • A request was made to provide some form of enforced notification that groups utilising bots to relay group chat outside of SL (e.g. to a Discord server) must disclose they are doing so.
    • The main reason for this is that disclosure of IMs without consent – and group chat is a form of IM exchange – is a violation of the SL TOS, and those joining a group chat might have no idea the conversation is being relayed elsewhere.
    • There are complications with this (what if someone other than the group owner insinuates a bot relay into the group chat? How is that regulated?). But this does not necessarily negate the idea of some form of requirement for those group owners who directly utilise such relay tools.
    • A Canny feedback submission was requested, so the issue could be put before the relevant eyes at the Lab (management and legal) for further discussion.

Next Meetings

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

‡ WIBNI – “wouldn’t it be nice if…”

2024 week #5: SL CCUG meeting summary

Hillvale Beach, December 2023 – blog post

The following notes were taken from my audio recording and chat log transcript of the Content Creators User Group (CCUG) meeting held on Thursday, February 1st, 2024.

  • The CCUG meeting is for discussion of work related to content creation in Second Life, including current and upcoming LL projects, and encompasses requests or comments from the community, together with viewer development work.
  • As a rule, these meetings are:
    • Held in-world at the Hippotropolis Campsite, where it is chaired by Vir Linden, in accordance with the dates and times given in the SL Public Calendar.
    • Conducted in a mix of voice and text.
    • Open to all with an interest in content creation.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript.

Official Viewers Status

  • The Maintenance W RC viewer – bug and crash fixes – updated to version 7.1.3.7701974306 on January 31st, January 31, 2024.

The remaining official viewers stood unchanged from the start of the week at the time of the meeting:

  • Release viewer: version 7.1.2.7215179142, formerly the glTF PBR Materials Maintenance RC, issued December 15, promoted January 8, 2024 – numerous bug fixes and improvements.
  • Release channel cohorts:
    • Emoji RC viewer, version 7.1.3.7453691714, January 22, 2024.
    • glTF PBR Materials Maintenance-2 RC viewer, version 7.1.3.7467259489, issued January 12, 2024.
    • Maintenance X RC, version 7.1.1.7088410646, December 7 – usability improvements.
    • Maintenance Y RC, version 6.6.17.6935642049, issued November 21 – My Outfits folder improvements; ability to remove entries from landmark history.
  • Project viewers:

General Viewer Notes

  • The Emoji viewer is still on the path towards an RC update, and it is still hoped it will get promoted to de facto release status Soon™.

Graphics / glTF

  • The “glTF featurettes” work is progressing, with the viewer following the current glTF Maintenance-2 RC viewer set to include:
    • Geenz Linden’s work on Hero reflection probes and reflections / mirrors and Cosmic Linden’s work on applying glTF materials to terrain.
    • Updates which will allow the glTF / PBR swatch boxes in the Build / Edit floater display previews of the materials being selected, rather than grey boxes.
    • Possibly, the first series of additional glTF extensions – Index of Refraction.
    • These capabilities (together with 2K textures support – see below) will be sitting behind debug settings, and so a) will need to be enabled by those wishing to test them; b) should be understood to be incomplete features subject to update and change / possible breakage.
  • 2K Textures:
    • The Lab is starting to assess the potential to allow 2K textures within SL. Such support will require “careful assessment” in terms of VRAM footprint, the risk of out of memory crashes on older systems and the like.
    • Runitai Linden believes that if there are issues with the viewer attempting to load a full 2K texture even when it is very small (or very distant), then it is a case of making the viewer “smarter” it terms of how it handles and samples / loads textures.
    • Support for 2K textures is available for general testing on Aditi (the Beta grid) within the RumpusRoom 2048 region.
    • One identified win is seen as terrain texturing, as 2K terrain textures at the region level should not overly tax systems and eliminate the current issues of blurriness / low texel density.

Mirrors

  • Work has been continuing of late, with what is described as a “significant” increase in reflection quality, and is starting to look “correct” as well as working with PBR.
  • Further performance tuning is required, and the clipping is “off in a lot of circumstances”.
  • The focus is on presenting planar reflections (utilising a cub map generated by a “Hero” reflection probe which is selection on the basis of the avatar’s proximity to it), with Geenz Linden noting it has the potential to allow more “fancy things” down the road.
  • It was noted that the approach taken has to offer a balance between intended use (to create actual mirror surfaces) against unintended uses (such as using the mirror capability within a highly polished floor), rather than trying to enforce some nebulous rule of “this functionality is ONLY for mirrors”), as well as taking into the consideration that it needs to be relatively easy to use.

Terrain

  • Cosmic Linden has indicated that once the PBR shader, etc., is working for terrain as per her current project, consideration is being given to allowing the same terrain shader to in-world objects.
  • So, for example, a mesh tunnel might be created and placed in-world, and then the outer face of the model set to display whatever the surrounding terrain might be.

“Combat Committee”

A reminder that:

  • The first meeting of the “Combat Committee” User Group will be held on Thursday, February 8th, at 13:00 SLT, and so will be alternating with the Content Creation User Group.
  • The venue for the meetings will be:  Longfellow/142/255/30.
  • The initial format for the meetings will be text-only, but this may become a mix of voice / text according to attendees’ preferences.
  • Further details are available on the SL wiki, and the meeting is now on the SL Public Calendar.

Rider Linden acknowledged the fact that I (aka “someone”) had pointed out having two user group meetings with the same abbreviation (CCUG) alternating between the same time slot on the same weekday might be confusing for some (even if the meetings are in different locations), so the name for this meeting might be changing.

In Brief

  • The transition from Jira to Github Issues  / Canny is still in progress at LL and is taking up resources and time, hence the slow-down in some areas of work (such as RC viewer updates. As per previous reporting, the work is due to be completed by the end of February, when Jira will cease to be used.
    • The use of Canny remains a source of unhappiness among those who tend to raise bug reports, largely as a result of its limited functionality in some areas (such as no support for any other attachment type other than static images).
    • The Lab is continuing to work with the Canny development team to try to improve things.
  • As was noted in the previous CCUG meeting, the placing of incomplete features (such as the glTF terrain and mirrors functions mentioned above) behind debug settings is a part of a more general move to add features and capabilities to the viewer more iteratively, allowing individual capabilities to be added (and potentially tested on a limited basis by those interested), but only fully exposed to all users once they have been validated / have any required supporting functionality / capabilities available to them.
  • There was a general discussion on the viewer UI and how it tries to meet the needs of very different groups of users  – content creators and “general” users, and how it might be made more responsive to specific modes of use – if you are using the viewer to explore, take photos, play a game in-world, and carry out basic building / editing, etc., then the viewer can be run in a “generic” mode to do all of these things, but if precision tools are required for design and creation, then the viewer can be switched to a mode which provides more specialised options through floaters and menus.
  • The question was asked that if SL is to support the “entire” glTF specification, including animations, does this mean future support for custom skeletons, and if so what does that mean for the current animation marketplace (e.g. preventing confusion as to what will / will not run against different skeleton types).
    • Runitai Linden’s viewer was that if custom skeletons are to be supported, then it would require suitable tools which allow for animation / joint retargeting (e.g. animations made for the current Bento skeleton could be retargeted of any other given skeleton, and vice versa). However, whilst there are tools to achieve this, they would require investigation and assessment.
    • There are limitations on how far retargeting will go, however (and it will not be entirely devoid of creator intervention), so if custom skeletons were to be allowed in SL, it was noted that expectations could be in part managed by specifying with which actual skeleton(s) the offered animation / avatar, etc. has been designed to work.
  • Concern was raised as to the constraints which might be applied if SL has an open gateway to importing glTF meshes from external sources such as SketchFab, where the content may well look pretty but is hardly appropriate for real time game rendering, the view being the Land Impact alone is not going to be sufficient.
    • The view from the Lab is that there will be some form of weighting system at import, at least analogous to Land Impact, but better suited for the acceptance / rejection of content, and this will vary for different content types (e.g. glTF scenes might be assessed of number of nodes, how many bytes in the asset, how many instances of the asset, etc.).

Next Meeting

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