2024 week #45: SL CCUG summary (with Philip Rosedale discussion)

Evermore the Folklore, September 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, November 7th, 2024. This meeting lasted some 1 hour 50 minutes, due to the presence of Philip Rosedale, who address feedback from the audience as well as discussing SL in general.

The majority of the session was livestreamed by Strawberry Linden, and her video is embedded at the end of this article. However, as the meeting extended beyond the recording session, I’ve summarised the rest based on my chat log and audio recording.

Table of Contents

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.
  • Meeting dates and times are recorded in the SL Public Calendar, and they re conducted in a mix of Voice and text chat.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewer Status

[Video: 1:28-2:19 and 3:43-4:32]

  • Release viewer: version 7.1.10.10800445603, formerly the DeltaFPS RC (multiple performance fixes, etc), dated September 11, promoted September 17 – No change.
  • Release Candidate: ExtraFPS RC, version 7.1.11.11565212741, October 30.
    • Performance improvements: enhanced texture memory tracking, broader hardware compatibility and higher FPS gain;  additional code to improve texture streaming on rigged attachments (e.g. if an earring is made with 2K textures, the viewer will correctly calculate the required resolution for the textures and download them, rather than downloading the full 2K textures), etc.
    • Aesthetics improvements: new Antialiasing setting – SMAA; Contrast Adaptive Sharpening; Khronos Neutral Tone Mapping (can be changed to ACES via the RenderTonemapType Debug setting).
    • UI Optimisations.

Near-Term Viewer Release Roadmap

  • ExtraFPS work remains focused on bug fixes.
  • The first maintenance RC to follow ExtraFPS will be a viewer bringing together the updates originally planned for the  Maint B and Maint C viewers which were side-lined with the focus on viewer performance (Atlasaurus, DeltaFPS, ExtraFPS).
    • Some issues have crept into the merge process for this work, so the focus on this will be stabilising it after ExtraFPS is promoted to release status.
    • This likely means there will be a longer than usual pause between ExtraFPS being promoted and the new Maintenance viewer RC appearing.

WebRTC Update

[Video: 4:42-5:50]

WebRTC communications protocol (RTC=”real-time communication”) is the new Voice communications protocol for Second Life, replacing Vivox Voice.

  • Situation remains that Linden Lab are waiting for more users to switch to a WebRTC enabled viewer prior to switching over to using WebRTC only, and disabling Vivox.
  • A core sticking point here appears to be Firestorm users remaining on a pre-PBR (Vivox-only) release of that viewer, and they are being strongly encouraged to try swapping to the latest Firestorm release (7.1.1) or if performance with that doesn’t suit them to temporarily consider moving to an alternate viewer to help LL with enabling WebRTC (which is a superior Voice option to Vivox) / avoid losing Voice altogether should it reach a point where the switch is thrown for WebRTC.

Graphics Team Work

Viewer Performance

[Video 6:06-6:44]

  • Core focus remains on performance work , and will remain so until “everyone is happily on PBR-enabled viewers”.
  • Average viewer performance for most users is believed to be “pretty good” for PBR, but the Lab remains aware of the fact that their are cohorts of users who, due to hardware, etc., are “suffering some pretty significant performance loss”.
  • “Hunting down” and trying to fix these issues is now the priority, but will take some time.

Pre-PBR / PBR A/B Testing

[Video: 4421-49:19]

  • LL is carrying out A/B testing with Firestorm 6.6.7 (pre PBR) and SL Viewer’s ExtraFPS (RC viewer at the time of writing) to try to better understand performance differences and which lower-end hardware is being particularly hit under PBR (e.g. lower-spec Intel systems (integrated graphics?), some AMD GPUs).
  • In terms of Nvidia, Runitai believes performance on PBR viewers is “pretty close” to levels enjoyed pre-PBR, although there are still issues to be ironed out with some older GPUs / cards with low VRAM (such as those with only 2GB).  Some of this is likely to be a case of “turning down” some internal settings in the viewer so it its friendlier towards lower-end GPUs with limited VRAM.
  • One thing that has been identified is behaviour on launch / entering a scene (location):
    • Pre-PBR viewers like Firestorm 6.6.7 tend to launch with high frame rates which then decreases as the scene loads and memory is used, before stabilising.
    • PBR viewers tend to front-load textures, resulting in a low frame rate from the get-go, which improves as the scene loads the the viewer rationalises the textures it needs to display. This gives a false impression that performance is “bad” from the outset and only liable to get worse, potentially causing people to quit using a PBR viewer before they witness the increase in frame rates.
  • Part of the work in testing involves automation: the Lab has established a “potato farm” of laptop with limited resources and which are used with SL in order to carry out automated tests to determine where performance issues might reside

Tone Mapping

[Video: 6:56-8:07]

  • Originally slated as being a part of the viewer to follow ExtraFPS, the Khronos Neutral tone mapper, intended to improve overall ambient lighting in SL, making things somewhat brighter and more vibrant.
  • Khronos Neutral was to have been the default, with the option to switch back to ACES via Preferences → Graphics. However, following feedback, the decision has been made to leave the default as ACES and make Khronos Neutral the option, together with the ability to disable Tone Mapping.
  • Setting Tone Mapping will eventually be a Sky setting within EEP.
  • The recommendation to content creators remains don’t bake the Tone Mapping into your textures, allow the post-processing the the viewer handle it – in other words, Tone Mapping belongs to the camera, not the object.
  • The above rule also applies to thigs like lighting under PBR as well.

Auto-Exposure Work

[Video: 8:09-9:18]

  • Geenz Linden is now working on both the Tone Mapper and on auto-exposure.
  • Work has already been done within the auto-exposure process to make transitions “softer / easier on the eye”, and Geenz is now extending this work to make it more configurable (e.g. a “maximum”, a “minimum” and and “offset” for auto-exposure that users can set to their personal preference).
  • The intent is to have these new auto-exposure controls within the EEP Sky settings.
  • This work should help with issues such as the environment looking “dim” over water, snow, and similar.

In Brief

  • [17:36-25:40] Mina PBR Hair issue: Mina Nakamura indicated a possible alpha issue she is experiencing when using the specific PBR versions of some of her hair styles, which has only become apparent with the release of DeltaFPS. This may be a result of multi-layering of alpha blends, but copies of the hair have been passed to LL for testing.
  • [27:48-28:49] It was noted that there have been problems in get various content artists (hair makers, skin makers, etc) engaged in the Content Creation Discord channel, which has impeded some of the work relating to Baking, alpha/gamma, etc.
    • As LL – via Derrick Linden – has requested I do not publish information on how to join the Content Creation Discord channel, if you are a content creator not involved on the channel, please contact the likes of Vir Linden, Runitai Linden and Geenz Linden to request information on how to access it.

2K Bakes on Mesh

[Video: 9:43-13:37]

  • 2K Bakes on Mesh remains in general QA on Aditi (the Beta grid), and content creators are asked to test content there and provide feedback.
    •  Specific feedback being sought includes: bakes coming out at the correct resolution (e.g. if all layers at 1024×1024, that the Bake is also 1K); everything appears visually correct without any compression artefacts or similar; that the general experience with Bakes is the same as on the Main grid.
  • As a part of this work, the Bake Service as a whole has received some performance improvements. However, this aspect of the work has yet to be deployed to Aditi, plus once deployed, they may not result in a visually faster bake, depending on the complexity and resolution of the layers being baked.
  • If all goes according to plan, it is hoped there will be some form of 2K Bakes on Mesh support to the Main grid (Agni) by the end of November – although this is subject to confirmation; and they the Lab will provide a date when 2K skins, etc., can start to be listed on the MP, etc.
  • There was a reminder that account syncing with Aditi should now be automatic at the time of log-in (no need to raise a support ticket). However, anyone encountering issue still with Aditi access should contact support.

Viewer Discussion

This was a wide-ranging discussion commencing at the 29:14 point of the video. The following attempts to summarise that discussion, however, to try and keep a general sense of context, the bullet points may not reflect the order in which comments were made.

[Video : 29:14-55:00]

  • LL are looking to encourage greater engagement in testing new capabilities and features for SL, rather than having to wait for Firestorm to ship a viewer with support for the new feature / capability, in order to avoid a similar situation as occurred with PBR.
  • The SL viewer (SLV) has a good cross-section of hardware running it, but the overall pool of users is much smaller than that of Firestorm, and of those that do use it tend not to be so engaged in the platform so as to test and try things / report issues, which can result in problems such as those seen with the deployment of PBR: the Lab doesn’t have a sufficient deep pool of engaged users to report issues as they are encountered as new features / capabilities are being developed.
  • The question was asked as to what makes Firestorm attractive to users. This boiled down to four major areas:
    • The additional UI elements Firestorm have built to expose functions native to the viewer, but otherwise hidden within Debug settings.
    • Dedicated additional features created for Firestorm (e.g. Contact Sets), our specific new UI elements which pull together options and setting from assorted elements of the viewer and present them as a cohesive whole in their own right (such as the Phototools code contribution; the Graphics Improvement floater, etc.).
    • Very basic quality-of-life improvements, e.g. the ability to de-render / block the rendering of in-world objects (see below for more on this); the additional options to position tollbar buttons in the window (e.g. make them left or right ranged along the bottom).
    •  The level of in-world and additional support Firestorm provides: in-world classes teaching how to use the viewer; in-world support groups providing “live” support in multiple languages, etc.
  • Shortfalls within the SL viewer were noted as:
    • Loss of simple quality-of-life elements (e.g. the chat bar) and lack of accessible in-world support.
    • A lack of general support documentation / material (in this, TPVs have a distinct advantage, in that users of those viewers are willing to produce their own tutorials and guides, whereas few do so where the official viewer is concerned).
    • General misapprehensions about viewers. for example:
      • The idea that the SL viewer “doesn’t have capability X or Y, as it remains hidden with Debug settings.
      • The belief that features capabilities added by LL are “Firestorm” (or whichever viewer is being used) simply because it is first seen in that viewer, and thus are “missing” from the official viewer.
      • The idea that LL “doesn’t support” older hardware; as Runitai Linden noted, LL does not intentionally seek to make the SL experience any worse for those on older / less capable hardware; when this happens, the Lab does make efforts to redress things.
  • [Video: 49:19-End] An extended discussion on the Derender capability within Firestorm, with pros and cons, together with whether it should be generally surfaced for new users, due to the impression it gives (“welcome to our world; yes some of it is naff, so you might want to derender it”).
    • Pros: the ability to stop unwanted objects being rendered in a scene either for a session or until cache is cleared. This is very hand for a variety of reasons such as in-world photography.
    • Con: the ability to de-render mesh clothing on other avatars.
    • The discussion also touched upon alternatives to derendering for certain use-cases (e.g. the ability to click-through something like mesh “rain” to touch a vendor board – something which can now be set, as Rider linden indicated).
    • Also mentioned was the option for a degree of automation to help deal with some instances where de-rendering might otherwise be used (e.g. some form of flag mechanism / land setting such that should someone enter a G/M public space with genitalia / “adult” attachments on display, the simulator orders the viewer to remove them (see below for this).

Post-Video Discussion

  • A discussion on streaming on Twitch to reach new users – which Philip Rosedale has previously noted, is a subject of ongoing discussions between LL and Twitch, with the caveat that seeing Twitch as a possible “marketing / promotional” channel for SL is not ideal, due to the younger age demographic of many Twitch users.
    • It was noted that VRChat, which has “adult” content manages to be able to have people stream from it to Twitch.
    • It was also pointed out that Twitch is a channel for content creators to produce tutorial-like live streams on how to use external content creation tools (Substance Painter, Blender, etc), to create content for SL – but they are unable to steam video of the content being used in SL via Twitch.
  • The idea of a flag mechanism was discussed in broader terms: as well as having a specific land control switch, having a switch in the viewer which derenders “adult” attachments on avatars. This:
    • Would provide the control at a per user basis (don’t want to risk seeing “adult” attachments? Leave the switch set; no objection – turn the switch off and allow “adult” attachments to be rendered.
    • Allows, when combined with the land control, the greatest flexibility of use: store owners or owners of G / M rated public regions, for example, could opt to set the flag at Land level, and thus automatically prevent rendering of any  / all “adult” attachments in their regions in all viewers in that region.
  • The above led to a conversation on Second Life continuing to allow adult content whilst working to ensure there are workable safeguards to ensure those not wishing to see it do not see it. This discussion touched upon:
    • Issues of Marketplace content not being properly flagged as adult / being tagged too broadly so that either someone with the MP content rating set to General or Moderate still gets to see adult content; or b) adult content appears in entirely unrelated categories.
    • The need for a more granular rating system. There are many reasons for this (e.g. Adult is often a catch-all, rather than indicating “sexual” (or possibly offensive): art galleries, for example, will often opt for an Adult rating, simply to avoid the risk of being reported for displaying nudity, genitalia, etc., within art.
  • Philip Rosedale asked about the appropriateness of clothing in public spaces (specifically indicating his own use of chaps with a “stained glass” crotch area in a public meeting venue – even through the chaps revealed nothing, they still drew people attention to his crotch).
  • Suggestions were made that the new user experience should provide mor details on common activities within Second Life, to give incoming joiners a clearer idea of what to expect / what they might discover.
    • This included an idea that anyone expression an interest in “Adult” content should be “sent straight to Zindra” – which (personal opinion here) I believe would be a bad move, as Zindra is most strongly associated with sexual content – and as noted earlier in the meeting, “Adult” in SL does not automatically equate to sexual activities. But, by pushing people who click the option merely out of curiosity directly to Zindra, risks reinforcing attitudes that SL is focused on sex / porn.
  • Philip also provided some updates on matters raised during his November 1st, 2024 Community Round Table:
    • That work is being put into place to better explain the user name selection in the join flow, and the difference between the user name and the Display name, to help overcome issues of people choosing user names they come to regret (e.g. “xyzmnop3210”).
    • A reiteration of the (oft-voiced at UG and Meet the Linden / Lab Gab technical sessions) fact that the reason Groups are capped for membership levels is that activities such as sending Group message comes an a non-trivial computational process (and associated cost) of the back-end systems having to look up which users are in a particular group in order to receive said message(s).
  • The above comments led to a series of personal requests being made directly to Philip, which as he pointed out, highlight the fact that prioritising requests is not easy  – those who talk loudest / most persistently do not necessarily represent the majority thinking, and thus their request  – even if apparently easy to achieve – many not reflect what “the community” (a term itself hard to quantify) actually wants.
    • In this, he specifically reiterated some of his comments from his Community Round Table about trying to find mechanisms by which the Lab can better engage with groups of users on topics / ideas, in order to get a broader representation of people’s views without either a) responding only to the most dominant voice in a group; or b) having a group so large, it is impossible to get a broad consensus on feedback / ideas.
  • Amidst the general airing of points-of view, Philip asked a question which is of potential relevance to many; as such I’ll include it here:

 

One of the things I’m trying to think about is how to make Second Life more accessible to all of you. What I mean by that is, for that one thing that brought you in, is Second Life also accessible to everyone else for whom that one thing is also true? So, for example, I spoke to someone the other day who is hard of hearing; and I can imagine that’s a pretty good reason to want to be in Second Life, because being in the real world sometimes can be quite difficult if you’re hard of hearing, right? Potentially, Second Life can make that easier, but only if we do the accessibility work to make that functional. 
So I kinda ask the broader question – and again, if you want to follow-up with me by e-mail, please do so. The broader question is, what is it that brought you here, and then is Second Life easy to use for everyone else like you, is kind-of the way I’m thinking about right now. It seem like so many things are hard; in different ways, Second Life is appealing, but then many, many other features  of it make it excruciatingly difficult. Like, we talked earlier about if I’m a teacher who wants to play around with using Second Life at university, but I’m so exposed to sexual content that I just decide “no”, that would be a perfect example of that; so in that case, Second Life is just not accessible to me as a university teacher, because it’s just too sexual.
  • The above led to a range of opinions on what SL is, griefing, accessibility in terms of supplied avatars, etc, running through the last 10 minutes of the session. However, given Philip’s question and the fact that some might wish to respond – to Philip via e-mail, not in the comments here, which he may not read! – I will close the summary here as it is already well into the realm of TL;DR!

 

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 #42: SL CCUG summary

Mad Hatter’s Tea Room, September 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, October 17th, 2024. There was no livestream or video for this meeting

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.
  • Meeting dates and times are recorded in the SL Public Calendar, and they re conducted in a mix of Voice and text chat.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Update

  • Release viewer: version 7.1.10.10800445603, formerly the DeltaFPS RC (multiple performance fixes, etc), dated September 11th, promoted September 17th.
  • Release Candidate: ExtraFPS RC, version 7.1.11.11074622243, September 30.
    • Performance improvements: enhanced texture memory tracking, broader hardware compatibility and higher FPS gain.
    • Aesthetics improvements: new Antialiasing setting – SMAA; Contrast Adaptive Sharpening; Khronos Neutral Tone Mapping (can be changed to ACES via the RenderTonemapType Debug setting).

Near-Term Viewer Release Roadmap

  • ExtraFPS work remains focused on bug fixes.
  • The first maintenance RC to follow ExtraFPS will be the Maint B viewer, which will include updates put on hold during the focus on performance issues plus additional updates, some of which may be further “post-PBR” performance / aesthetic improvements.
    • Maint B, as noted previously in these summaries, will have updates to help with Linux support / builds.
  • Maintenance C is also being put together, but updates changes have not yet be specified, outside of a desire to keep the changes separate to Maint B in the interests of keeping updates easier to manage.

Avatar LookAt /  Eye Tracking in the Viewer

  • A conversation relating to avatar eye movement / use of Look At cross hairs (& the resultant drama it can cause (“Stop perving me!”), and whether because of the latter, the capability should be removed completely from the viewer.
    • The core problem is, even though the option for a user to see their own LookAts in the Official viewer is disabled by default, the data (cross hairs and avatar name) is broadcast to surrounding viewers, resulting in unwarranted drama (“Stop perving me!” or “You’re on the wrong viewer!”).
    • Various viewers handle this situation in different ways; some follow the SL viewer, other’s provide means to see the LookAt crosshairs from others whilst supressing their own LookAt data (e.g. so I can see your LookAt crosshairs (if not supressed), but you cannot see mine – possibly leading to more drama).
    • Given this, LL sought the best way to reduce the level of upset: remove the LookAt broadcast altogether, or limit it / make it subject to having be physically turned on through a debug. The consensus of replies appeared to be to limit it / disable it behind a setting.
  • This conversation also crossed-over into avatar head movement tracking the movements of the mouse (e.g. you move the mouse up to the menu bar and your avatars head tracks upwards, then you move to a toolbar to the side or bottom of the window, and your avatar’s head again tracks).
    • This is perhaps more immersion-breaking that Look Ats (drama on the latter notwithstanding) and as  some TPVs allowing such head movement to be disabled, there was a consensus that this should be disabled / removed from the viewer.

Graphics Team Work

PBR Terrain Transforms and PBR Terrain Painting

  • PBR terrain transforms: As per my week #38 update, PBR terrain Texture transforms for applying scale, offset and rotation to any one of the four PBR terrain materials, have been developed for use in the viewer.
    • The capability is a subset of the KHR texture transform.
    • Currently the viewer-side options are setting behind debug flags.
    • The simulator support for this work is currently targeting the Barbeque simulator update, which is due to start deployment after the  WebRTC simulator deployments.
  • PBR Terrain Painting: the work on PBR terrain painting (see my week #31 update for a summary and previous status) has been “shelved” for the foreseeable future.
    • While no specific reason for this was given at the meeting, it seemed implied that this work has been superseded by the need to focus on other work for the time being.

General glTF / Graphics Comments

  • In response to a question about additional  glTF work, Runitai Linden confirmed that user-made shaders will not be supported, but blend shapes and (possibly) animation of texture coordinate transforms from Blender.
  • Displacement maps won’t be supported for the time being as their is no available glTF specification for them.
  • Given the percentage of people not using PBR enabled viewers, LL is considering adding a simulator-side update that can detect a non-PBR viewer, and then take the base colour and Normal layer from the PBR material and move them to the Blinn-Phong parameter, so users on those viewers will at least see some surface detail on PBR objects rather than only seeing then a flat grey surfaces or untextured prims.

In Brief

  • A fair portion of the meeting was taken up with issues pertaining to the New User Experience / Marketplace issues – both of which those Lindens (Engineers) at the meeting were unable to directly address as these areas are outside of their remit.

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 #40: SL CCUG summary: tone mapping

Poesy Wildes, August 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,  September 5th, 2024.

Tis meeting was also livesteamed on You Tube by the Lab. The video is embedded at the end of this summary, my thanks to the Lab for providing it.

Table of Contents

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.
  • Meeting dates and times are recorded in the SL Public Calendar, and they re conducted in a mix of Voice and text chat.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Update

[Video: 1:18-2:30]

  • Release viewer: version 7.1.10.10800445603, formerly the DeltaFPS RC (multiple performance fixes, etc), dated September 11th, promoted September 17th.
  • Release Candidate: ExtraFPS RC, version 7.1.11.11074622243, September 30.
    • Performance improvements: enhanced texture memory tracking, broader hardware compatibility and higher FPS gain.
    • Aesthetics improvements: new Antialiasing setting – SMAA; Contrast Adaptive Sharpening; Khronos Neutral Tone Mapping (can be changed to ACES via the RenderTonemapType Debug setting).

Near-Term Viewer Release Roadmap

  • ExtraFPS work is focuses on bug fixes with the aim to get it promoted to default viewer status ASAP.
  • The first maintenance RC to follow ExtraFPS will be the Maint B viewer, which will include updates put on hold during the focus on performance issues plus additional updates, some of which may be further “post-PBR” performance / aesthetic improvements.

WebRTC Status

[Video 2:34-3:41]

Summary

  • A new project intended to move Second Life away from reliance on the Vivox voice service and plug-in, and to using the WebRTC communications protocol (RTC=”real-time communication”). Roxie Linden is leading this work.
  • Key benefits:
    • WebRTC supports a wide range of real-time communications tools in common use (e.g. Google Meet), supporting audio, video and data communications, and is thus something of a “standard” approach.
    • Offers a good range of features: automatic echo cancellation, better noise cancellation and automatic gain control, much improved audio sampling rates for improved audio quality.
    • Opens the door to features and capabilities to voice services which could not be implemented whilst using Vivox.

Status

  • Still awaiting wider simulator RC deployment. Per recent SUG / TPVD meetings, this now looks set to commence on October 16th, although the date may still change.
  • In the meantime, WebRTC support is available on the following regions Pop Rock RC, comprising: WebRTC Voice 1, WebRTC Voice 2, WebRTC Voice 3 and WebRTC Voice 4.
  • LL is already looking ahead to further work with WebRTC once it has been deployed, in terms of “Voice and media”. More to follow on this in the future.

Graphics Team Work

Linear Alpha Blending

[Video: 4:08-6:06]

  • Again, as per the previous CCUG meeting, in order for PBR lighting to render anywhere close to correctly, alpha blending had to be switched from SRGB to linear colour space. This can cause some older content using Blinn-Phong, to look either more opaque or more transparent than in did pre-PBR.
  • For those with access to the Content Creation Discord channel, this work is now available in a pre-release viewer there.
      • Note: due to a request from Derrick Linden, I am unable to post information on how to access the Content Creation Discord channel. Requests to do so should be made to Vir or Derrick Linden.
  • This work is supported on (the Beta grid) – again, refer to the Discord channel for details on this.
  • Those using the Discord build are asked to provide feedback (with screen shots as appropriate).

Tone Mapping

[Video: 8:00-12:18 and 24:31-End]

  • Originally slated as being a part of the viewer to follow ExtraFPS, the Khronos Neutral tone mapper (another code contribution by Rye Cogtail), which should improve overall ambient lighting in SL, making things somewhat brighter and more vibrant.
    • Options for this are available within the ExtraFPS viewer as debug settings:
      • RenderToneMapType – set the desired tone mapper (either Khronos Neutral (new default) or ACES .
      • RenderToneMapMix – mix between linear and tone-mapped colours.
    • If this approach is continued, these options will likely become UI elements within the Sky settings, allowing the desired Tone Mapper  / mixing be set at parcel level for the viewer, together with Advanced Graphics options for determining which should be the general default.
    • Results to these have thus far been mixed, so more feedback is being sought – which is felt to be better (ACES or Khronos Neutral (or even something else, etc).
  • Some concerns have been voiced by creators over the idea that tone mapping can be user-configurable (“how can I make sure the tone mapping on my item is correct, if the user can change tone mapping in their viewer?”).
    • Allowing tone-mapping offers the ability for people to view Second Life as they prefer / set their regions / parcels to be viewer under specific lighting conditions; ergo offering tone mapping options via the EEP Sky settings as has been suggested above was seen by most at the meeting as a good thing.
    • Some questioned how consistency of appearance can be maintained (per the question above)  if they cannot be certain on the adjustments users make to their viewers.
    • One suggestion was for LL to designate one as the default that creators should be testing and creating against, and if the parcel is different, then it is up to the parcel owner to deal with.
    • Overall, keeping with Khronos  / glTF would be preferred,
  • Further help in setting the brightest / contrast for for scenes can also be offered through exposure control and the colour gradient, with Geenz working on these as well.
  • The above grew into an extended technical discussion through to the end of the meeting, please refer to the video.

In Brief (Q&A)

  • [Video: 12:23-13:30] A brief discussion on glTF punctual lights (coming with glTF scene import), which might also offer the opportunity to offer more lights on alpha (rather than just the 6 closest, as it currently the case).
  • [Video: 15:00-16:50] more Bakes on Mesh channels (e.g. individual left / right eye channels to allow for individual eye colours er eye:
    • Nothing currently planned beyond the existing Aux channels.
    • LL has had internal discussions on a “simplified editor for decorating houses, etc.”, and feedback has been requested as to what kind when / if the concept of layer channels is re-visited, it might be from the perspective of replacing them with something more accessible – but this is not something currently being investigated.
    • In terms of channels for individual eye colours (or similar), a feature request was requested.

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 #38: SL CCUG summary: more on performance updates

[REN], August 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,  September 5th, 2024.

Tis meeting was also livesteamed on You Tube by the Lab. The video is embedded at the end of this summary, my thanks to the Lab for providing it.

Table of Contents

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.
  • Meeting dates and times are recorded in the SL Public Calendar, and they re conducted in a mix of Voice and text chat.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Update

[Video: 0:57-3:05]

  • Release viewer: version 7.1.10.10800445603, formerly the DeltaFPS RC (multiple performance fixes, etc), dated September 11th, promoted September 17th.
  • Release Candidates(s):
    • None at present.

Near-Term Viewer Release Roadmap

As a reminder, linden Lab is focused to bringing viewer performance back up to levels equal or close to “pre-PBR” performance,. This involves both further adjustments in the wake of the PBR releases and also fixing issues not directly related to PBR, which were coincidentally introduced with Graphics Featurette viewer release. This work is currently focused on, but not limited to, the following viewer updates from LL:

  • Atlasaurus, promoted to release status on August 16th, 2024.
  • DeltaFPS, promoted to release status (and thus superseding Atlasaurus) on September 17th, 2024.
  • ExtraFS, a new viewer that will be issued as a release candidate viewer in the near future.

Once ExtraFPS reaches at least RC status, work will commence on resuming the normal follow of maintenance update viewers, etc., as per the more usual flow of viewer updates.

  • The first maintenance RC to be issued will likely include contributions to help with Linux support in the viewer.
  • It will also likely also include a round of further “post-PBR” performance / aesthetic improvements.

WebRTC Status

[Video 3:10-5:30]

Summary

  • A new project intended to move Second Life away from reliance on the Vivox voice service and plug-in, and to using the WebRTC communications protocol (RTC=”real-time communication”). Roxie Linden is leading this work.
  • Key benefits:
    • WebRTC supports a wide range of real-time communications tools in common use (e.g. Google Meet), supporting audio, video and data communications, and is thus something of a “standard” approach.
    • Offers a good range of features: automatic echo cancellation, better noise cancellation and automatic gain control, much improved audio sampling rates for improved audio quality.
    • Opens the door to features and capabilities to voice services which could not be implemented whilst using Vivox.

Status

  • WebRTC is now fully supported in the official viewer.
  • Back-end deployment – WebRTC support is available on the following regions Pop Rock RC, comprising: WebRTC Voice 1, WebRTC Voice 2, WebRTC Voice 3 and WebRTC Voice 4.
  • Not that during the transitional period of moving from Vivox to WebRTC, there is no bridging between WebRTC peer-to-peer  / ad-hoc and Vivox.
  • There will be an updated Echo Island specifically for WebRTC, which will be be available soon.

Graphics Team Work

Performance / Aesthetics Improvements

[Video: 7:40-14:39]

  • DeltaFPS has a major change to the texture streaming system utilising the GPU:
    • Until now, the approach has been to drop the texture resolution down to a very low resolution (often causing a texture to blur on-screen) and then use the CPU to bring it back up to the appropriate resolution for display.
    • With DeltaFPS and going forward, the GPU is used to generate a copy of the texture at the appropriate resolution for display, and this is then used in rendering, with the higher-resolution version then discarded.
    • The overall results of this is a) there should be a lot less visible blurring of textures as they are loaded; b) the CPU load should be reduced; c) texture loading should be a lot smoother and faster.
  • The upcoming ExtraFPS viewer includes texture rendering improvements for rigged attachments:
    • Currently the viewer  does not have an clear idea as to the size of a rigged attachment, other than it being possibly as big as the avatar, so all attachments essentially get the same texture resolution no matter how small there actually are, which can impact performance.
    • With ExtraFPS the texture resolutions for attachments will be more correctly calculated by their size, reducing the texture rendering overheads (e.g. rather than the texture for buttons on a jacket being loaded at its full 2K resolution, a much lower resolution sample for the texture is used unless the camera is zoomed right in on a single button, when higher resolution are used until zoomed out again).
    • This should mean that general viewer performance in crowds of avatars is improved, as the viewer isn’t trying to load high-resolution textures across every attachment in its view.
    • Note: this change is purely with regards to attachment textures, it does not change attachment LODs.
  • Anti-Aliasing:
    • ExtraFPS will support Subpixel Morphological Anti-Aliasing (SMAA).
    • In addition, as as per the previous CCUG meeting, Rye Cogtail from the Alchemy team is planning (or already has) submitted contribution to improve the FXAA code for inclusion in the ExtraFPS viewer.
    • Those requiring more insight into anti-aliasing and the various types of AA, including FXAA and SMAA, can find out more in What Is Anti-Aliasing? TAA, FXAA, DLAA And More Explained, via Digitaltrends.
  • Tone mapping:
    • The viewer update after ExtraFPS should include the Khronos Neutral tone mapper (another code contribution by Rye Cogtail), which should improve overall ambient lighting in SL.
    • To help with this, the viewer will include additional user controls. During the previous CCUG meeting, these were described as a combo box and a slider within the Advanced Graphics settings, together with a new new control – Tone Mapping Strength – to alter the linear alpha colour.
  • Linear alpha blending:
    • Again, as per the previous CCUG meeting, in order for PBR lighting to render anywhere close to correctly, alpha blending had to be switched from SRGB to linear colour space. This can cause some older content using Blinn-Phong, to look either more opaque or more transparent than in did pre-PBR.
    • A fix for this giving people the ability to adjust the alpha/gamma on per texture entry for the object (including no mod items) is in development, and will likely surface in the viewer after ExtraFPS.

Linden Water

[Video: 11:52-12:40]

  • Linden Water reflections have been reduced in quality with PBR. Geenz linden is experimenting with using elements of the mirror reflection code to try an improve them, but was not at the meeting to provide and update.
  • This work is also not a current priority, as Geenz is focused on the performance improvements work.
  • Adjusting screen space reflections (SSR) to correct the issue is not an option as “SSR has it own bunch of problems”.

PBR Terrain Work

[Video:39:34-41:44]

  • Texture transforms (as a subset of the KHR texture transform) for applying scale, offset and rotation to any one of the four PBR terrain materials, are in development for the viewer, and are currently behind a feature flag and is awaiting further work on the server-side, which is currently in a very preliminary state.
  • The server support is available on Aditi (the Beta grid), those wishing to test it should contact Cosmic Linden.
  • In addition, an LSL API for manipulating PBR terrain materials has been requested, but this is not something that is currently being worked upon.

In Brief

  • [Video: 14:48-17:18] Will GLTF mesh uploads address the issues of random linkset ordering (i.e. currently, when uploading a multi-object .DAE file, it is turned into a linkset with random ordering, so the root object can never be know until post-upload)?
    • Yes. What should happen is whatever the hierarchy is used within Blender (or similar glTF-compliant mesh modelling tool us used) should be reflected in SL after upload.
    • The basic interoperability between Blender and SL can be found here in the Blender documentation, although note that LL are not going to support extensions like Clearcoat, Sheen and Anisotropy with the initial release.
  • [Video: 18:25-30:15] In-world build tools:
    • As a part of the upcoming glTF scene import support, the in-world build tools will be given the ability to edit such scenes (subject to permissions). These will likely take the form of a Scene Explorer and Scene Management tools.
    • LL has had internal discussions on a “simplified editor for decorating houses, etc.”, and feedback has been requested as to what kind of improvements to the existing in-viewer toolset / additional tools people would like to see.
    • This sparked a brief conversation on possible improvements to the build tools / options, together with a discussion on the growing complexity of wearable layers (due to creators effectively “splitting off” face !skins” into layers, which can cause issues with the ordering of layers, and the ability to “lock” the ordering of specific items in a layer class  – e.g. the “face tattoo” should always be “below” any “make-up” tatt0o, etc.) .
    • Please refer to the video for more.
  • [Video: 30:35-36:20] A general discussion on getting started on avatar rigging and animation + suggested resources (e.g. AvaStar, AvaStar discord channel, Bento Buddy; making the avatar UV files, etc., more accessible via secondlife.com rather than being buried in the SL Wiki) – again please refer to the video.
  • [Video: 36:25-38:32 and 57:39-end] Generative AI and SL content creation:
    • Some basic internal experimentation has been carried out with meshy.ai. It is described as “compelling” in terms of content creation, but “definitively cost prohibitive to host such a thing”.
    • As such LL are brainstorming how they might interact with such a tool from SL, should they opt to go that particular route.
    • In addition, other AI tools are being speculatively looked at as well.
    • Please refer to the video for more.
  • [Video: 45:59-49:50] a request for additional LSL functions llGetSTPos and / or llGetUVPos get a world positioning from a texture coordinate. The short answer was no, and for a combination of reasons, but might be something for the upcoming viewer-side Luau scripting. Please refer to the video.
  • [Video 50:36-57:29] General discussion on the feedback portal, feature requests, duplication of requests etc.

Next Meeting

Footnotes

† 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 #36: SL CCUG summary: viewer performance and aesthetics

Goblins Knob, August 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,  September 5th, 2024.

The meeting was also livesteamed on You Tube by the Lab. The video is embedded at the end of this summary, my thanks to the Lab for providing it.

Table of Contents

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.
  • Meeting dates and times are recorded in the SL Public Calendar, and they re conducted in a mix of Voice and text chat.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Status

  • Release viewer: version 7.1.9.10515727195, formerly the Atlasaurus RC (object take options; improved MOAP URL handling) promoted August 26.
  • Release channel cohorts:
    • DeltaFPS RC, version 7.1.10.10708851543, updated September 5.
      • Performance boosts. Memory management has been optimized and users will experience a higher FPS across various systems. A comprehensive range of bug fixes are also provided. This includes better PBR material handling and resolving frequent crashes. See the release notes for more.
      • UI for scheduling region restarts now available via a new button located in the Region/Estate floater. (Note: there is currently an issue with scheduled region restarts working correctly and a fix is due to come in the next server release).

Viewer Performance – Priorities

[Video 1:15-3:03]

  • The performance setbacks between the original PBR viewer release (7.1.6) and the Graphics Featurettes viewer (7.1.8), and which particularly negatively hit the Firestorm PBR release were again covered (for additional content, see my August 30th TPVD meeting summary).
  • This has resulted in a “significant portion” of the viewer development work being focused on recovering performance and rectifying the underpinning bugs and issues – some of which are not specific to the PBR implementation itself. Some of this work has been surfaced in the DeltaFPS viewer, but more is to come.
  • The above work also folds into it various fixes for crashes and bugs and a number of Visual Aesthetics (as in how SL looks – see below).
  • This work will impact other areas of viewer work, so glTF projects like the PBR Terrain Painting and Transmission / IOR work are going to be pushed back somewhat, as is work on the viewer-side implementation of Laua scripting support. However, all of these work is still on the roadmap, just delayed.
  • [Video: 8:24-8:56] Cosmic Linden has been working on an improvement to avatar loading to assist with performance improvements, and this has been pushed to the DeltaFPS RC viewer, together with working on bug fixes.
  • [Video: 9:00-9:54] Runitai re-iterated that the Graphics Featurette viewer introduced the major performance hits (some of which are related to bounding box management and memory management, the the TPVD notes linked-to above), and DeltaFPS sees a good improvement in performance over Graphics Featurettes, and the viewer in development (“ExtraFPS) that will follow DeltaFPS should see performance return to levels seen with the initial PBR release.
  • [Video: 45:46-46:36] Which is not to say there are not additional PBR-related performance problems – such as those tied to specific GPU such as the Nividia GT1030 2Gb. These are also the subject of fixes being implemented in either the DeltaFPS viewer or the upcoming ExtraFPS viewer that will follow it.

Viewer Aesthetic Updates

[Video: 4:54-8:10]

  • Linear alpha blending: in order for PBR lighting to render anywhere close to correctly, alpha blending has to be switched from SRGB to linear colour space. This can cause some older content using Blinn-Phong to look either more opaque or more transparent than in did pre-PBR.
    • The fix for this will likely be to add the ability for people to set and alpha/gamma ramp on an item, which can be modified per texture entry, adjusting how transparent the item is on a curve.
      • This should help with a range of issues – particularly those associated with pre-PBR hair, as has been noted by an number of users.
      • To help with this, the new alpha/gamma ramp value will still be adjustable even if the content is No Mod, so as to allow users to adjust legacy content affected by the issue, rather than having to wait for  fixes from content creators.
    • This fix will hopefully follow in the ExtraFPS viewer after DeltaFPS, but in the meantime will be made available in a viewer build available through the Content Creation Discord group‡ for those wishing to test it once the initial work has been completed.
    • Runitai Linden also indicated that as an extension to this work, LL might be able to find a way to apply the adjustment automatically, rather than people having to manually set it, but also noted any automatic solution would be “hard”.
  • Auto-exposure: LL is looking to add controls for dynamic exposure (speed of transition, range, ability to turn off / on). These options will be made available via the Advanced Graphics floater, and maybe / someday via the the sky settings floaters.
  • [Video: 10:03 -10:50] Anti-aliasing: there has been negative feedback from those who used to run the viewer with Advanced Graphics Model (ALM) disabled and who are forced to have it enabled all the time as a part of the PBR rendering, don’t like the look of Fast Approximate Anti-Aliasing (FXAA) as used in the viewer, so LL are adding support for Subpixel Morphological Anti-Aliasing (SMAA).
    • In addition, Rye Cogtail from the Alchemy team did a pass on the FXAA code and found it was not working as well as it should be.
    • Updates to FXAA and the addition to SMAA will be appearing in the viewer to follow DeltaFPS.
    • Those requiring more insight into anti-aliasing and the various types of AA, including FXAA and SMAA, can find out more in What Is Anti-Aliasing? TAA, FXAA, DLAA And More Explained, via Digitaltrends.
  • Work is also being put into smoothing the problems created by switching from 8-bit colour precision to 16-bit float colour precision (which can be the cause of bugs wherein you go somewhere in SL and everything glitches to black or solid white). This work should surface through DeltaFPS.
  • [Video: 11:05-11:45] The Sun is unrealistically dim. LL are considering adding a specific Sun intensity multiplier to Sky settings.
    • As a temporary fix, and whilst not specifically addressing the sun issue, the overall brightness in a scene can be adjusted via very small tweaks to the HDR slider in the Personal Lighting floater.
  • [Video: 49:16-56:05] Tone mapping: Rye Cogtail from the Alchemy team has contributed the Khronos Neutral tone mapper for inclusion into the viewer.
    • This is not as dark as the current default in the viewer, and initially will use debugs to select which tone mapper is used (as the existing mapper will remain).
    • LL are looking to make this the default for tone mapping (subject to the outcome of testing), and the mapper is currently in the viewer Develop branch for TPV / viewer builders to take a look at.
    • When implemented the controls will likely be in the Advanced Graphics settings as a combo box and a slider. The control may also in the future be added to the sky settings.
    • In addition, there will be a new control – Tone Mapping Strength – to alter the linear alpha colour.
    • A key point to content creators on this is: you should not put the tone mapper in your textures (e.g. via the options available in PhotoShop when exporting textures) by bumping saturation, etc., and baking the tone mapper into the texture (as well and not baking things like reflections into textures).
    • WYSIWYG will still be possible providing creators select a tone mapper in SL that matches the mapper in their tool of choice or by using no post and working in linear + using the HDRI Preview option (Develop(er) > Render Tests) and use the same HDRI in SL as your content creation tool.

WebRTC

[Video 3:05-4:26]

Summary

  • A new project intended to move Second Life away from reliance on the Vivox voice service and plug-in, and to using the WebRTC communications protocol (RTC=”real-time communication”). Roxie Linden is leading this work.
  • Key benefits:
    • WebRTC supports a wide range of real-time communications tools in common use (e.g. Google Meet), supporting audio, video and data communications, and is thus something of a “standard” approach.
    • Offers a good range of features: automatic echo cancellation, better noise cancellation and automatic gain control, much improved audio sampling rates for improved audio quality.
    • Opens the door to features and capabilities to voice services which could not be implemented whilst using Vivox.

Status

  • WebRTC is now fully supported in the official viewer.
  • The back-end deployment on the simulator servers is progressing (2 release candidate channels for simulator servers – BlueSteel and Ferrari – should now have WebRTC support), but this is not yet universal across the entire grid, and will take at least another 2 weeks to be grid-wide.
  • Throwing the switch from running Vivox on the back-end to running WebRTC only will be dependent upon third-party viewers implementing and releasing the viewer-side WebRTC library.
  • In the meantime, peer-to-peer and ad-hoc WebRTC can be tested on the WebRTC regions of WebRTC Voice 1, WebRTC Voice 2, WebRTC Voice 3 and WebRTC Voice 4. However, there is no bridging between WebRTC peer-to-peer  / ad-hoc and Vivox.

In Brief

  • [Video 17:06-25:06] A discussion on Marvelous Designer (MD) cloth simulation within Second Life. This was done with Sansar, allowing clothing to be properly draped over an avatar body, and allowed for adjustments to be made prior to the finished results being baked-out (with automatic hidden surface removal).
    • Second Life utilises a different data modern to Sansar which introduces a range of complexities that would require significant re-working of how clothing  / mesh data is management, a potential re-writing of the entire Bake Service and other factors, all of which make MD integration a challenge.
    • Further complexities are added by the fact that unlike Sansar, which utilised a single avatar body type, SL has a plethora of bodies, and so using the cloth simulation against different body types (whether by creators or users) gets considerably more complicated, as do the requirements for data handling / storage and the costs involved.
    • As such, whilst these issues are not necessarily complete barriers to integration, they do mean that there are significant considerations involved, as well as significant changes to SL that would have to be made. Thus, it is not currently on the roadmap or under current consideration.
    • Please refer to the video for further details.
  • [Video: 25:16-26:12] 2K texture support for Bakes on Mesh – while there was no precisely update available:
    •  It is believed the majority of the work in enabling 2K Bakes on Mesh is now done in terms of getting an early prototype put together on one of the Lab’s own development grids.
    • However, there is currently no public availability for the capability, not is there any release schedule. The work remaining “on-going”.
  • [Video: 26:31-28:50] A brief discussion on creating content with both Blinn-Phong and PBR materials and some of the issues that can occur + some of the slight eccentricities (e.g. objects with both appearing to turn metallic when edited).
    • It was noted that as Blinn-Phong is still supported, creators can continue to use that in preference to PBR materials, although as time goes on the underpinning tools (like Blender) might move more and more into the glTF support arena and make it easier to produce glTF compliant content which can be used in SL.
  • [Video: 29:14-30:57] Transmission and IoR: these are being implemented against the glTF extensions approved by Khronos. This work is focused on implementing them against the prototype glTF implementation, then it they pass that, the focus will move to integration with SL and how they work with glTF materials assets and how to apply them to mesh and prim faces.
    • However, as noted above, this work is currently paused pending completion of the performance improvements work, and is unlikely to resume until after the viewer following Delta FPS has surfaced.
    • It was also noted that it will still be a while before LL are confident enough with both Transmission and IoR to allow either to be added to content be users, even on a test basis.
  • [Video: 40:22-41:48] The question was asked that, when SL gets glTF morph targets, if it would be possible to swap out vertex maps as well to change vertex weights so that it might be possible to deform clothing using the morph targets via script, then change the rigging, so an to allow one-size-fits-all clothing.
    • Runitai Linden noted that LL are aiming to hit all of the “musts” and “shoulds” in the glTF  specification. For morph targets, this means effectively having three channels per mesh that can be modified with the morph slider, thus limiting what could be done.
  • [Video: 42:10-44:55] llSetAlpha / llSetColor, etc: LL is planning on making these functions implicitly access the PBR equivalents when a PBR material is present. However, this is hampered by the fact a good proportion of users are still on non-PBR viewers, so “there’s not good answer to which channel it should modify.” This means that currently, the easiest thing it to leave the functions “as is” until sufficient enough users are on viewer with PBR support.
    • This does not mean non-PBR content will no longer be a thing; just that creators should not have to make a non-PBR version of their content because there are people still using a non-PBR capable viewer.
  • The last few minutes of the meeting are spent discussing what additional elements of the glTF specification have yet to be worked on.

Next Meeting

Footnotes

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

‡ Due to an express request from Linden Lab, I am unable to publish information on how to join the Content Creation Discord group. If you are a creator and are not a member, please contact Vir Linden via notecard or IM.

2024 week #33: SL CCUG summary

Grauland / Corsair Island, July 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, August 15th, 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.
  • Meeting dates and times are recorded in the SL Public Calendar, and they re conducted in a mix of Voice and text chat.
  • 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 Atlasaurus RC (object take options; improved MOAP URL handling) updated to version 7.1.9.10326512121,  on August 14th.

The other viewers in the pipeline remain as:

  • Release viewer: version 7.1.8.9375512768, formerly the Graphics Featurettes RC viewer dated June 5 and promoted June 10th.
  • Release channel cohorts:

Upcoming Releases – Change In Priority

As a result of PBR-related issues (see the section Performance Issues, below), the priority of upcoming viewer releases has changed.

  • The next planned viewer promotion was to have been the dedicated WebRTC Voice viewer.
  • The plan now is to prioritise a “more ambitious” viewer which will include the WebRTC updates and a number of high-level bug fixes related to performance (e.g.  a major vertex buffer fix, which although specifically targeted at Mac users, could help others on systems with integrated graphics).

Graphics / glTF

PBR Terrain Painting – Cosmic Linden

Summary
  • An in-development project. Current intent:
    • Provide a means to support the four PBR materials currently used in SL for “terrain painting”.
    • Will allow materials to be defined in their X,Y co-ordinates within a region by using a paint map, rather than having them defined by elevation defined in a height map. This will allow where grass or rock or stones or dirt, etc., appear within the region. providing much more flexibility in how terrain appears / changes.
    • Terrain painting will use the same permissions as terrain texturing (so if you have terraforming permissions, then tertian paining is possible; if you have the appropriate region permissions, you can define the PBR materials for the region.
    • Region owners / estate managers will have the ability to select whether the texture / heightmap is available in a region or whether the region uses terrain painting via a toggle switch in the Region floater. If Terrain painting is enabled at the region level, parcel holders (if I am understanding correctly) will be able to opt out / in.
  • Other points of note:
    • LL prefer to limit terrain painting to the four available slots at region revel, rather than allowing fully customisable swatches / slots at parcel level, as the latter presents “non-trivial issues” for terrain texture handling /loading.
    • Terrain painting will require a new entity to be introduced. Exactly what form this will take is still being discussed internally; it is unlikely to be a new asset type.
  • Much longer term options being considered for this capability might be to:
    • Allow prims to act as part of the terrain, inheriting the materials of the terrain, whilst still allowing the prim to be sized and shaped.
    • Perhaps allow the terrain within a region to be replaced by “something” else created externally to SL and then imported.
    • Neither of these ideas are currently being pursued beyond possible ideas / options.
Status
  • Cosmic believe she is getting close – perhaps another couple of weeks – to having an initial viewer build with the capability.
  • This initial build will allow terrain painting purely on the viewer-side; there will be no support for saving changes on the simulator; this will come as the work continues to be developed.

Transmission / IOR – Geenz Linden

  • Transmission and Index of Reflection (IOR)  will provide:
    • Both refraction and “blurry” refraction suitable for things like frosted glass surfaces.
    • Dispersion, allowing chromatic aberration, allowing the RGB channels to “separate out” based on a certain factor.
    • Volume, allowing an object surface to be tinted at different surface thicknesses .
    • Geenz is currently wrapping this work to get it into the Develop branch of the viewer following an internal demonstration at the Lab.

General Discussion

Performance Issues

  • It’s been confirmed that the potential for performance drops was missed within the code Firestorm took to integrate into their PBR viewer offering, and given they have the largest share of users (particularly those on low-to-mid range systems – e.g. those with 16Gb of RAM or less, and mid-to-low spec GPUs or with integrated graphics), their users have been the hardest hit with performance issues.
    • As a result, Linden Lab is now working with Firestorm to resolve the current issues.
    • As noted above, Linden Lab is now working to prioritise the release of a viewer with a number of fixes and updates aimed at improving / restoring viewer performance.
    • In the interim, the recommendation is for anyone experiencing severe performance issues to roll back to a pre-PBR viewer release.
    • Further, given that fixes beyond those currently being prioritised by LL will take time to surface, and the fact that there will continue to be systems that struggle with PBR, Firestorm has stated that version 6.6.17 of their viewer (the last pre-PBR release) will not be blocked per standard policy, but will remain available on as “as is” basis (e.g. not subject to bug maintenance or update with new features).
  • Fixes LL are looking to get out after the “prioritised” viewer has been released include:
    • Addressing  issues with the texture pipeline.
    • Fixing an issue whereby viewers on systems without dedicated video memory continually allocating available system memory to textures until all available system memory is consumed and the system suffers “performance death” until restarted.
    • A fix from the Alchemy team for an issue wherein if Mirrors are disabled in a viewer session, they continue using system resources until the viewer is restarted.
  • There will be “some form of communications coming out soon” to help inform people who are having a negative experience with PBR about what is going on to help alleviate issues.

In Brief

  • As far as enhancing rendering / shaders is concerned, the focus currently is on getting a working glTF scene implementation first, then working out what to backport to materials in inventory for applying to prims / non-glTF meshes. The will provide a good frame of reference when backporting materials to legacy objects and help maintain a consistency of appearance.
  • The meeting was overtaking by an extended discussion / diagnosis of a issue with hair which is becoming increasingly notices (hair appearing to “clump” or get blurred which does not appear to be directly related to colour alpha blending).
    • The problem is in part exacerbated by the fact the most SL hair is No Mod; so issues cannot be easily user-addressed.
    • No clear solution to this was presented, and the conversation is liable to continue, so will update if / when a way forward becomes clearer.
    • One idea floated, but will require a lot more internal investigation before LL move one way or the other, is to potentially add flags that will allow certain parameters within No Mod objects to be modified where it makes sense for them to be modifiable.
    • Expect further discussion on this.

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.