2019 Content Creation User Group week #42 summary

Summerland, August 2019 – blog post

The following notes are taken from my audio recording of the Content Creation User Group (CCUG) meeting held on Thursday, October 17th 2019 at 13:00 SLT. These meetings are chaired by Vir Linden, and agenda notes, meeting SLurl, etc, are available on the Content Creation User Group wiki page.

ARCTan

Project Summary

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

Current Status

  • Data gathering is continuing, with the intention of gathering enough information on different rendering operations to be able to update the current cost coefficients being using in the rendering cost calculations.
  • Normalising the settings across different client-side hardware is seen as a challenge.
    • One thing the Lab proposes doing is running the resultant model across a range of client hardware types and different ranges of settings.
    • However, if there are significant differences across hardware types (which is likely), then some weighting mechanism will need to be used.
  • One issue noted as a part of the work is a persistent spike – frames in every second that were much longer than the others in the Windows viewer. This was traced back to a call being made to an expensive API that wasn’t even required and has therefore been removed.

Environment Enhancement Project

Project Summary

A set of environmental enhancements (e.g. the sky, sun, moon, clouds, and water settings) to be set region or parcel level, with support for up to 7 days per cycle and sky environments set by altitude. It uses a new set of inventory assets (Sky, Water, Day), and includes the ability to use custom Sun, Moon and cloud textures. The assets can be stored in inventory and traded through the Marketplace / exchanged with others, and can additionally be used in experiences.

Due to performance issues, the initial implementation of EEP will now likely not include certain atmospherics such as crepuscular rays (“God rays”).

Resources

Current Status

  • The viewer is being merged up to the latest release viewer (version 6.3.2.530962, dated September 17th, promoted October 15th). This may also include at least one UI issue fix as well.
  • There are no further simulator-side updates that are ready for deployment as yet, but work has been continuing in resolving bugs.

Other Items in Brief

  • Following on from the discussion at the previous meeting about object size and land impact calculations a feature request – BUG-227762 “Removal of Size from Land Impact calculation/Texture LOD/Adjustable LOD distance” – has been submitted, and has been accepted by the Lab for consideration
    • The Jira also touches on texture management and handling, suggesting a way the textures for an object could be manipulated / downscaled in real-time.
    • It was pointed out that Firestorm offers an automatic downscale of 1024 textures in its 32-bit versions (and the setting in optional in the 64-bit versions), but the suggestion is that be providing users with information in the viewer could allow them to make more informed choices when making adjustments to help with their own performance.
    • This JIRA will be looked at in reference to ARCTan.
  • Something of a companion idea to this would be to allow a texture upload to produce multiple versions of a texture (e.g. a 1024×1204 also produces a 512x512x256x256 and 128×128). This has been discussed in the past, and is seen as something that, will requiring input from the Product Team, might be worth exploring.
  • A suggestion to lessen the reliance on high-res specular maps is for the Lab to provide a set of default grey textures at (say) 128×128 against which specular glossiness and environment could be set. A counter to this was that the blank white texture could be used and tinted to grey.
  • There was also general discussion on PBR and its possible introduction to SL in the future (it is *not* on the roadmap right now!) and its potential impact on existing content were it to be introduced.

2019 Simulator User Group week #42

Frogmore, August 2019 – blog post

No significant news. A lot of back and forth on region crossings and whether they are “worse” and personal views on how they can be fixed.

Simulator Deployments

Please refer to the server deployment thread for the latest updates.

  • On Tuesday, October 14th the SLS (main) channel was updated with server release 2019-10-03T01:12:11.531528, previously deployed to an RC channel and comprising:
      • Fixes: BUG-227645 EEP issue; windlight no longer rendering properly.
      • Internal logging changes.
      • Improvements to simulator state saves, which should make rolls smoother.
  • On Wednesday, October 16th, a new server update, 2019-10-11T18:12:36.531693, should be deployed. This comprises all of the above updates plus the internal script improvements previously documented in these updates. This deployment will expand these updates (originally deployed to one RC on Wednesday, October 9th in release .531529) to all of the primary RC channels.

SL Viewer

The Vinsanto Maintenance RC viewer, dated September 17th, 2019 was promoted to de facto release status on Tuesday, October 15th. The remainder of the pipelines remained unchanged at the time of writing:

  • Release channel cohorts:
  • Project viewers:
    • Legacy Profiles viewer, version 6.3.2.530836, September 17. Covers the re-integration of Viewer Profiles.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.530473, September 11.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16.
  • Linux Spur viewer, version 5.0.9.329906, dated November 17, 2017 and promoted to release status 29 November 2017 – offered pending a Linux version of the Alex Ivy viewer code.
  • Obsolete platform viewer, version 3.7.28.300847, May 8, 2015 – provided for users on Windows XP and OS X versions below 10.7.

 

 

2019 Content Creation User Group week #41 summary

Cherishville, August 2019 – blog post

The following notes are taken from my audio recording of the Content Creation User Group (CCUG) meeting, held on Thursday, October 10th 2019 at 13:00 SLT. These meetings are chaired by Vir Linden, and agenda notes, meeting SLurl, etc, are available on the Content Creation User Group wiki page.

Graphics Team

There are two new Lindens now on the rendering team – Euclid Linden, who has been with the Lab for around a month at the time of writing, and Ptolemy Linden, who has been a Linden for the last couple of weeks, again at the time of writing. Both will be working on various rendering projects which will include the Love Me Render viewer updates and also projects like the Environment Enhancement Project (EEP) – which is considered a priority in order to move that project towards release.

Euclid Linden goes full-on shark-man, while Ptolemy goes a little more conservative with a starter avatar

Viewers

No further updates thus far in the week. The hope is that the Vinsanto Maintenance RC viewer (version 6.3.2.530962 at the time of writing) looks to be in “good shape” for promotion, but currently requires a little more time in its release cohort.

This leaves the official viewer pipelines at the time of the meeting as follows:

  • Current Release version 6.3.1.530559, formerly the Umeshu Maintenance RC viewer, dated, September 5 – No Change.
  • Release channel cohorts:
  • Project viewers:
    • Legacy Profiles viewer, version 6.3.2.530836, September 17. Covers the re-integration of Viewer Profiles.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.530473, September 11.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16.
  • Linux Spur viewer, version 5.0.9.329906, dated November 17, 2017 and promoted to release status 29 November 2017 – offered pending a Linux version of the Alex Ivy viewer code.
  • Obsolete platform viewer, version 3.7.28.300847, May 8, 2015 – provided for users on Windows XP and OS X versions below 10.7.

ARCTan

Project Summary

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

Current Status

  • Work is progressing on building a predictive model based on the data LL has been gathering on mesh complexity, frame times, etc.
  • This model will be tested across a wider range of client hardware types and different ranges of settings.
  • The data thus far confirms that geometric complexity plays a large part in performance reduction, but also that there are a lot of other variables in play: rigged meshes are very different in behaviour impact to static meshes; some graphics properties can make a “big difference” in frame time, etc.
  • Details on the impact of textures has yet to be folded into the project.

Project Muscadine

Project Summary

Currently: offering the means to change an Animesh size parameters via LSL.

Current Status

Still largely on hold while ARCTan is being focused on.

Other Items in Brief

  • Mesh Uploader: a couple of points were brought up concerning the mesh uploader:
    • At the time mesh was introduced, materials were no supported; therefore, in the uploader there is code to discard tangent space (which can be used by normal maps). This means normals must be calculated in real time, causing both performance problems and inconsistencies between how normals appear in Second Life and how they appear in the 3D software used to create them. It’s been suggested this issue should be the subject of a Jira.
    • Allowing for the work on ARCTan, some see the uploader unfairly punishing on grounds of size and LI.
      • It what pointed out that a very large mesh that can be complex to render get hit with a high LI and high upload cost, but a very small object  – which may still have tens of thousands of triangles – is not penalised to the same degree, even though it might be as costly to render.
      • The alternative suggested was to have costs based not on LOD boundaries & changes rather than a simple size / LI basis. The idea here being that the cost is more reflective of what is seen and rendered by the viewer, which is seen as “levelling” the playing field (if a small object has a really high LOD tri count, then it would incur higher costs, in theory making creators more conservative in how they construct their models.
      • It was pointed out that in some respects complexity / LODs are already being gamed (e.g. by having one high LOD model then setting the medium and low LOD levels to use the same low poly version of the model for both and avoid costs for a proper mid-level LOD model), and such an approach as suggested might further encourage similar gaming.
      • Vir’s view is that the issue is not really that tied to the uploader per se, but is more in the realm of overall cost calculations (although LOD models obviously impact upload costs). As such, ARCTan is really the first step in trying to deal with these kinds of issues, and may help alleviate some of the perceived imbalance seen with upload costs.
  • Materials and Bakes on Mesh: a request was again put forward for LL to provide materials support for Bakes on Mesh. This is not an easy capability to supply, because:
    • System layers for clothing do not have a means to support any materials properties.
    • The Bake Service has no mechanism for identifying and handling materials properties to ensure they are correctly composited.
    • Thus, in order to support materials, both the system wearables and the Bake Service would require a large-scale overhaul which, given all that is going on right now (e.g. trying to transition services to being provisioned via AWS services), the Lab is unwilling to take on.
  • A request was made to allow 2K textures to be displayed by Second Life under “controlled conditions”, the idea being that a single 2K texture could eliminate the need for multiple smaller textures. The two main problems here are:
    • There is already a propensity for people to use high-res textures across all surfaces, whether required or not on the grounds “higher must be visually better”, so allowing even higher resolution textures to be displayed could exacerbate this.
    • Given there is no real gate keeping on how textures are used in-world once uploaded, how would any “controlled conditions” on the use of certain textures actually be implemented (both technically and from a user understanding perspective)?

2019 Simulator User Group week #41

{PAPPADO}. August 2019 – blog post

Simulator Deployments

Please refer to the server deployment thread for the latest updates.

  • There was no deployment to SLS (main channel) on Tuesday, October 8th.
  • Two RC deployments are scheduled for Wednesday, October 9th:
    • 2019-10-03T01:12:11.531528, comprising:
      • Fixes: BUG-227645 EEP issue; windlight no longer rendering properly.
      • Internal logging changes.
      • Improvements to simulator state saves, which should make rolls smoother.
    • 2019-10-03T01:23:43.531529, comprising the same updates as above, with the addition of the internal script improvements previously deployed and subsequently rolled back.

Script Improvements

For details on the script issues referenced above, please refer to the following blog post from Linden Lab: Parent/Child object Script Communications.

An important point to note with this is that when release 2019-10-03T01:23:43.531529 has been deployed, any scripts that still exhibit the kind of communication issues indicated by the blog post will likely need to be altered by their creator to match the example scripts supplied in the blog post, or at least follow the communications process defined within it.

We’ve also learned a bit more about esoteric scripting behaviour; for example, if an event happens and it’s going to get picked up by multiple handlers, there is NO promises about the order they get it. And with communication or transfers between prims and objects, the big lesson is to make sure everything is ready with “hello” exchanges and confirmations that both sides are ready. It’s like passing a ball – make sure the other side is ready to catch it.

– Simon Linden

SL Viewer

The long-awaited Voice RC, version 6.3.2.531587, was issued on Tuesday, October 8th. Primarily intended to improve voice detection when you’re speaking, this voice includes the following fixes (non-public Jira reports):

  • BUG-227356 [Win] ‘SLVoice.exe’ starts an unexpected cmd window
  • VOICE-56 Voice is cutting out – seems like a threshold is too low
  • SL-11958 viewer-manifest should treat missing files as errors

The remainder of the official viewer pipelines remains as follows

  • Current Release version 6.3.1.530559, formerly the Umeshu Maintenance RC viewer, dated, September 5th – No Change.
  • Release channel cohorts:
  • Project viewers:
    • Legacy Profiles viewer, version 6.3.2.530836, September 17th. Covers the re-integration of Viewer Profiles.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.530473, September 11th.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16th.
  • Linux Spur viewer, version 5.0.9.329906, dated November 17th, 2017 and promoted to release status 29th November 2017 – offered pending a Linux version of the Alex Ivy viewer code.
  • Obsolete platform viewer, version 3.7.28.300847, May 8th, 2015 – provided for users on Windows XP and OS X versions below 10.7.

 

2019 TPVD meeting week #40

Clifton Forge, August 2019 – blog post

The following notes are taken from the TPV Developer meeting held on October 4th, 2019. A video of the meeting is embedded below, my thanks as always to Pantera for recording and providing it. This was a relatively short meeting, with the majority of the meeting conducted in text and revolving around Bakes on Mesh. This being the case, points are summarised below without the usual time stamps.

SL Viewer News

There have been no further updates to the official SL pipelines since the updates at the start of the week, leaving them as follows:

  • Current Release version 6.3.1.530559, formerly the Umeshu Maintenance RC viewer, dated, September 5th – No Change.
  • Release channel cohorts:
  • Project viewers:
    • Legacy Profiles viewer, version 6.3.2.530836, September 17th. Covers the re-integration of Viewer Profiles.
    • Project Muscadine (Animesh follow-on) project viewer, version 6.4.0.530473, September 11th.
    • 360 Snapshot project viewer, version 6.2.4.529111, July 16th.
  • Linux Spur viewer, version 5.0.9.329906, dated November 17th, 2017 and promoted to release status 29th November 2017 – offered pending a Linux version of the Alex Ivy viewer code.
  • Obsolete platform viewer, version 3.7.28.300847, May 8th, 2015 – provided for users on Windows XP and OS X versions below 10.7.

Brief Notes

  • As noted in my recent CCUG summaries, the Lab have recruited two more graphics experts (Euclid Linden and one other), who will be working on EEP and rendering projects once they are up to speed.
  • The new Voice update viewer should be going to QA in week #41 (commencing Monday, October 7th). This was delayed as a result of a last minute issue preventing it going to QA and then being issued this week.

Bakes on Mesh (BoM)

There is reportedly some confusion about Bakes on Mesh, with some users believing it means that “have” to switch back to using system wearables. This is not the case; those who wish to continue to use applier-based wearables can do so. Similarly, those who prefer to use mesh clothing can continue to do so. Bakes on Mesh is simply a means to allow system wearables to be used on mesh bodies and heads.

It is also hoped by the Lab that BoM will allow mesh head and body makers simplify their products by removing the need for some of the “onion” layers. This should reduce the rendering complexity of bodies and heads, making them less resource intensive to render.

For more detailed information on Bakes on Mesh, please refer to the following links:

Linden Lab:

Creator-related BoM documentation:

Informative Bakes on Mesh blog post:

In addition, Firestorm has created their own Bakes on Mesh wiki.

TPV Notes

  • Catznip has a BoM beta (and has done for a while), but release is pending some more work being completed.
  • Radegast is close to having a BoM release available.

October 2019 Web User Group: Name Changes and new Premium option

© and ™ Linden Lab

The following notes are taken from my recording of the Web User Group (WUG) meeting, held on Wednesday, October 2nd, 2019. These meetings are held monthly. Dates and details of the meetings can be obtained through the Web User Group wiki page.

When reading these notes, please keep in mind:

  • The topics below are ordered in their likely interest to users / depth of discussion at the meeting, with some comments drawn together from different points in the meeting. This is not intended as a chronological set of meeting notes.
  • Audio extracts are taken from my recording of the meeting, but have again been grouped by topic. In addition, the audio relating to Premium and “Elite” subscriptions may sound fractured tin tone, as it is a grouping of verbal replies to questions asked in local chat at the meeting.

Summary

The TL;DR summary (items expanded upon in the sections below):

  • On Monday, September 30th, the Lab issued a blog post update on the web team’s work, and this was referenced during the meeting (see also my coverage of the blog post – Lab blogs on the SL Web Team’s work, including “last names”). Similar blog posts will likely be released ahead of each monthly WUG meeting, to both remind users of the meeting and to act as an informal agenda.
  • Web services have been a major focus of transitioning Second Life services to the cloud.
  • Name Changes: are getting closer to release but are not imminent. The feature will be Premium only, fees have not been finalised.
  • Premium options: work is progressing with the new “super Premium” option, but this will not be ready until after Name Changes have been deployed. The new level is – at present – likely to be called “Elite”. It will cost more than the current Premium subscriptions.
  • Search is being worked on across all of the SL web properties, including the Marketplace – but no time frames as to when improvements might be deployed.

Cloud Transition

  • As noted in the Monday Sept. 30th blog post, many of the Lab’s web services have been transitioned to running on Amazon AWS cloud services.
  • Other services previously operated on a third-party basis have (and are) being moved in-house or decoupled to standalone status, in readiness to be transitioned to the cloud where possible.
  • All of this work has been achieved without any significant disruption to services or – more particularly – without users actually being aware the services had been moved.
  • Specific benefits of the moves made to date are:
    • Future changes, updates and responses to issues can be handled a lot faster.
    • Due to the nature of AWS services, LL have been able to achieve almost 100% up time in running those services that have been transitioned.

Name Changes

  • As previously noted, Name Changes involve users being able to select any first name, and a last name via a list.
  • The capability will be Premium only.
  • Name changes will be subject to fee (still TBA) per change.
    • The fee charged will be less for “Elite” accounts than for Premium (see below for more on “Elite” and Premium).
  • The rough window for deployment is between 1 and 3 months, with a margin of error of around two months.
    • There is still more work to be done on the back-end systems.
    • The actual viewer UI in which name changes are made has yet to be implemented.
  • As an aside (not mentioned in the meeting, but indicated elsewhere): new users signing-up to Second Life will still be given the default name of “Resident” – they will be able to change names should they upgrade to Premium, as with all Basic account users.

New Premium Subscription

  • The idea of having additional levels of Premium subscription was first publicly mentioned in detail in 2018. See:
  • Since that time, it has been decided to just have a single additional Premium level, sitting “above” the current Premium level.
    • However, the new system is being structured such that if there is a need / opportunity for further subscription levels, they can be added in the future.
  • Currently the proposed name for the new subscription level is “Elite” – but this may still change.
    • There will be clear differentiators between Premium and “Elite”, including, as noted above, a lower fee applied to “Elite” users when changing their name.
    • There will be no requirement for merchants to have to upgrade to “Elite”, although some of the benefits of “Elite” might apply to Merchants.
  • Subscription rates:
    • Premium subscription rates will not change.
    • “Elite” upgrades will be offered on a monthly / annual basis.
    • As per my article Lab opts to temporarily continue Quarterly Premium plan for new sign-ups, relating to the Premium subscription fee changes announced earlier in 2019:
      • Quarterly subscriptions will be discontinued for those upgrading to Premium / Elite when the latter is launched.
      • However, quarterly payments will continue to be honoured for users already on the Premium quarterly payment plan.
    • Fees for “Elite” to be revealed when launched, but obviously, they will be higher than the current Premium rates.
    • Premium members upgrading to “Elite” will pay the difference between their current Premium fee and the “Elite” fee to which they decide to upgrade, and there may be a prorate option for qualifying users when upgrading.
  • “Elite” subscriptions will not be ready for introduction until at least a month after the deployment of Name Changes.

Profile Changes

  • The discontinuing of web profiles was first publicly raised in February 2019 (see: 2019 SL User Groups 7/3: TPV Developer Meeting), when it was indicated profile information would be moving back into the viewer.
  • One of the reasons for this change appears to be related to the transitioning services to the cloud as much as with the pain of provisioning the web-based profiles.
  • An initial Legacy Profile project viewer appeared in June (see: SL Legacy Profiles project viewer).
  • The Legacy Profile viewer will be updated over time, with one of the updates to come being a new tab to profile feeds, allowing users to see people’s feed updates through the viewer.
    • TPVs will still be able to use the option to point to profile feeds on the web, if they prefer.
  • It is hoped that the Legacy Profiles viewer will move to release candidate status Soon™ and promoted to release status “really soon after that”.
The new Legacy Profiles Project viewer replaces the current web-based profile panel (left), with an “old-style” profile floater panel (right)

In Brief

Web Services Release Notes

  • The web team is working “really hard” to implement formal release notes for updates to the various SL web services.
  • These will likely be in a similar format to the revamped server and viewer release notes, which can be reached via the recently implemented web-based Release Notes home page.
  • There is currently no date as to when this will be surfaced, but there are “a couple” web engineers working on this (when not working on more user-facing projects).

Marketplace, Search, Events

  • In-world purchase notifications for store owners:
    • As per my article on this, this system will be opt-in, initially on an entire store basis. It might be extended to individual items in the future, if feasible / if there is a demand for this.
    • The notification will provide details on item purchased, amount received and who made the purchase.
When released, the in-world purchase notifications option will appear in a re-named settings page (e-mail notifications)
  • Work is proceeding on Marketplace improvements beyond those mentioned, but LL is not yet in a position to state what the next updates for deployment might be.
  • Search is being worked on right across the SL web properties. This is liable to see improved filtering of searches and (particularly useful for Marketplace searches) the use of exclusions.
  • Work is proceeding with the overhaul of the events system. This comprises short-term updates that are being carried out alongside a much larger, long-term project to completely overhaul the events system.

Related Links