2019 SL User Groups 5/3: TPV Developer Meeting

Zimminyville; Inara Pey, December 2018, on Flickr
Zimminyvilleblog post

The following notes are taken from the TPV Developer meeting held on Friday, February 2nd, 2019. A video of the meeting is embedded below, my thanks as always to North for recording and providing it. Time stamps are provided to the major topics of discussion , which will open the video in a new tab for ease of reference.

Note that, as per the warning at the start of the video, there was an immature attempt to disrupt the meeting using voice / audio, and so there are lengthy periods of silence in the video to mute out the attempts.

SL Viewer

There have been not updates to any of the official viewers through week #5, leaving the pipelines as follows:

  • Current Release version 6.0.1.522263, dated December 5, promoted December 13. Formerly the Spotykach Maintenance RC viewer – No Change.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • BugSplat RC viewer, version 6.1.0.523335, January 23. This viewer is functionally identical to the current release viewer, but uses BugSplat for crash reporting, rather than the Lab’s own Breakpad based crash reporting tools.
    • Estate Access Management (EAM) RC viewer, version 6.1.0.523351, January 23.
    • Love Me Render RC viewer, version 6.0.2.523177, January 16.
  • Project viewers:
  • Linux Spur viewer, version 5.0.9.329906, dated November 17, 2017 and promoted to release status 29 November – 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.

[00:00-2:57] The three RC viewers have all had recent issues which have prevented their promotion to de facto release status.

  • Of the three, the EAM RC might be the closest to being ready for promotion.
  • The Bugsplat RC has been delayed due to the need to remove the code that allowed the viewer to be installed on Windows at account level, rather than at Admin level due to internal issue with Second life :URLs not working. This will require a further RC release before the viewer is liable to be ready for promotion.

Visual Studio Update

[2:49-3:42 and 19:50-21:51] The work to update the viewer build process to use Visual Studio 2017 is progressing well, with the focus on rebuilding all the various libraries need by the viewer to use VS 2017. The move to automate as many of the update processes as possible when updating the Visual Studio 2013 a couple of years ago means that this update should be significantly easier.

One outcome of this work is that when complete, it will allow LL to provide better  customised CEF support.

Environment Enhancement Project

[3:45-4:53 and 18:00-19:29] Please see my January 31st CCUG summary for a complete update. In brief:

  • A further simulator RC roll expected in week #6.
  • The viewer is close to being ready for promotion to RC status, and the next update should include a lot of bug fixes.
    • When this happens, it will not include crepuscular rays (and possibly some other atmospheric effects) due to performance issues that are still being worked on. Hopefully the capability will be added in the near future.
  • A final decision on capabilities that would make the cut for the initial viewer update / the release was due after the TPVD meeting, so expect further updates possibly at the week #6 SUG meeting.

Non-HTTP Asset Fetching / UDP Path Deprecation

[17:16-17:45] The work to remove all asset fetching UDP messaging from the simulator code will see the updated code deployed to Aditi in DRTSIM-400 (pre-RC readiness). It will then appear in an RC release on the main grid some time in the next couple of weeks. Once deployed, this will mean anyone using really old viewers that do not have HTTP asset fetching will no longer be able to obtain responses to asset requests.

Linux Viewer News

[21:54-23:20] The Lab is starting to receive some good input from Linux contributors to help get the official Linux flavour of the viewer back up and running. As noted in my previous TPVD meeting summary, this may not be a 100% functional version of the viewer; for example, Voice will likely not be supported, due to the fact that Vivox no longer supports Linux, and internal changes to the viewer mean that older version of the Linux voice plug-in will not work with the current viewer code. Those that need voice on Linux can try running the Windows SLvoice EXE (or even the entire Windows viewer) under Wine or similar emulation.

Other Items

  • [9:46-11:05] Mac OS voice issues: these are known about by the Lab. The Mojave issue cane be solved by giving the voice application permission to use the microphone; if users can’t get the permission dialogue, the route (for now) is to delete the viewer completely and re-install – just be sure to keep an eye out for the dialogue after the re-install and when trying to use voice (check all your monitors, check behind other open application windows, etc.).  There is also a contributed fixed from Firestorm’s Tonya Souther (and currently in the BugSplat RC) that should also help with Mac OS voice issues.

2019 SL User Groups 5/2: Content Creation summary

Nevglide Forest; Inara Pey, December 2018, on Flickr
Nevgilde Forestblog post

The following notes are taken from the Content Creation User Group (CCUG) meeting, held on Thursday, January 31st, 2019 at 13:00 SLT. These meetings are chaired by Vir Linden, and agenda notes, meeting SLurl, etc, are usually available on the Content Creation User Group wiki page.

Environment Enhancement Project

Project Summary

A set of environmental enhancements allowing the environment (sky, sun, moon, clouds, 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 which include the ability to use custom Sun, Moon and cloud textures. These can be stored in inventory and traded through the Marketplace / exchanged with others, and can additionally be used in experiences.

The project also includes a new set of render shaders to support atmospheric effects such as rainbows, (hopefully) crepuscular rays (“God rays”), better horizon haze and fogging (but will not include rain / snow).

Resources

Current Status

  • There should be a further EEP simulator RC deployment in week #6 (commencing Monday, February  4th).
  • It has been decided that due to a number of performance issues that have yet to be resolved, EEP will not initially have crepuscular rays when the viewer is promoted to RC status, although hopefully these will come in time.
  • There is an issue with the Linden terrain appearing blurred in the viewer, this should be fixed in the next viewer update.
  • When importing windlight settings into EEP, it should be remembered that there will not be a precise 1:1 match when converting; some elements of an environment’s lighting might be darker or lighter than their windlight equivalents (as can be seen with the sample EEP assets now available in the EEP viewer’s system library). This is because the underpinning rendering in EEP is very different to the current windlight rendering.

Bakes On Mesh

Project Summary

Extending the current avatar baking service to allow wearable textures (skins, tattoos, clothing) to be applied directly to mesh bodies as well as system avatars. This involves viewer and server-side changes, including updating the baking service to support 1024×1024 textures, and may in time lead to a reduction in the complexity of mesh avatar bodies and heads.

This work does not include normal or specular map support, as these are not part of the existing Bake Service, nor are they recognised as system wearables. Adding materials support may be considered in the future.

Resources

Current Status

  • There are still a number of issues to be resolved within the viewer (e.g. bakes not being seen by other viewers,plus the “black skirt” issue that can result in an avatar appearing to wear a long, jet black “skirt”, at least one UI issue with a button not working correctly) so no updates at the moment.

Animesh Updates

  • Vir is looking at the way object updates are handled in order to find the best way to send and receive shape information to Animesh objects, should the system be extended to allow shapes to be applied to Animesh.
  • Right now, the Reset Skeleton option only applies to the local view; there have been requests to make this a system command (so if I use Reset Skeleton, a message is sent to all viewers around me to perform the reset against my skeleton as well, rather than other users having to do it manually if they see something wrong with my avatar after I’ve changed shapes).  This could also potentially benefit Animesh, and Vir is also looking at the idea as well.
    • The focus here will probably be on triggering the reset through the UI, as described above, rather than allowing a LSL function to trigger it. The problem with the latter is the risk of people using it indiscriminately in avatar models, triggering unnecessary (and impactful) updates on systems.
  • Adding attachments to Animesh is also a request, but this isn’t being looked at right now.
  • Currently, an Animesh can keep an animation as a prim property, regardless of whether or not the animation is there (e.g. add a bouncing animation to an Animesh, remove it, and the animation will persist, even if the Animesh is copied and distributed). This is not expected behaviour and will likely be fixed.

Other Items

  • Visual size overlay when editing appearance: this feature request from Penny Patton (see BUG-225513) has been accepted by Linden Lab, but is currently on the back-burner of things they may consider in a future project, but is not currently being actively worked on.
  • Next meeting: it is likely the next CCUG meeting will be on Thursday, February 14th. However, check the wiki page for confirmation ahead of February 7th.

2019 SL User Groups 5/1: Simulator User Group

Wild Edge; Inara Pey, December 2018, on Flickr
Wild Edgeblog post

Server Deployments

At the time of writing there was no server release thread, I’ll update this article should one surface. The following notes are directly from the Simulator User Group.

  • On Tuesday, January 29th, 2019 the SLS (Main) channel was not update, and remains on server maintenance package 19#19.01.09.523003, comprising logging to gather baseline information on simulator performance in various areas of interest together with additional logging.
  • On Wednesday, January 30th, 2019 the RCs are likely to be updated as follows:
    • BlueSteel will hopefully receive an update to the EEP code. However, this is dependent on Rider Linden resolving a bug that is currently blocking EEP progress. This causes the time on a EEP region to become “stuck”.
    • Magnum and  / LeTigre will receive a server maintenance package, details undefined; the other should receive an update with internal changes.
  • There is currently a small Cake RC on Agni that is being used to iron out some transient network issues with the newest server operating system update, prior to it being move to a full RC for testing. Cake may grow a little larger before this happens.

SL Viewer

There have been no updates to the current official viewers to start the week, leaving the pipelines as follows:

  • Current Release version 6.0.1.522263, dated December 5, promoted December 13. Formerly the Spotykach Maintenance RC viewer – No Change.
  • Release channel cohorts:
    • BugSplat RC viewer, version 6.1.0.523335, January 23. This viewer is functionally identical to the current release viewer, but uses BugSplat for crash reporting, rather than the Lab’s own Breakpad based crash reporting tools.
    • Estate Access Management (EAM) RC viewer, version 6.1.0.523351, January 23.
    • Love Me Render RC viewer, version 6.0.2.523177, January 16.
  • Project viewers:
  • Linux Spur viewer, version 5.0.9.329906, dated November 17, 2017 and promoted to release status 29 November – 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.

Misc Items

Mesh asset UUID flipping

Being able to flip between mesh objects via script used to be possible in SL. However, it was blocked as it was being used as a means to animate meshes – but not very efficiently (the option places a lot of strain on the asset and physics server).

Recently, there have been requests to re-enable the capability because “now we have Animesh, there’s no need to flip this way.” There are also some use-cases that could benefit from the capability – such as being able to provide customisation options to customers who can then use a scripted mean to add them.

However, as Oz Linden pointed out, the availability of Animesh doesn’t necessarily negate mesh UUID flipping being abused. There is also a risk that the ability could be used to enable IP theft, and the approach – as noted – doesn’t really fit with the current SL design due to things like the asset load, etc. Ergo, it is highly unlikely to be allowed.

SL QA Engineer

If you’re a QA engineer and in the San Francisco  / Bay area, you might be interested in a QA job at Linden Lab working on Second Life.

2019 SL User Groups 4/2: Content Creation summary

Junbug; Inara Pey, December 2018, on Flickr
Junbugblog post

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

SL Viewer

On Wednesday, January 23rd, the following viewers were updated:

Environment Enhancement Project

Project Summary

A set of environmental enhancements allowing the environment (sky, sun, moon, clouds, 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 which include the ability to use custom Sun, Moon and cloud textures. These can be stored in inventory and traded through the Marketplace / exchanged with others, and can additionally be used in experiences.

The project also includes a new set of render shaders to support atmospheric effects such as rainbows, crepuscular rays (“God rays”), better horizon haze and fogging (but will not include rain / snow).

Resources

Current Status

  • The simulator code is now out on the BlueSteel RC channel, which has also absorbed the Snack RC.
  • A further project viewer update is expected for the EEP viewer. This is currently awaiting QA clearance, which should hopefully be followed by an RC viewer soonTM
    • The latest EEP viewer (version 6.0.2.523088 and dated January 16th, at the time of writing) includes sample EEP assets in the Library section of inventory, in the environments folder. These will also be included in all versions of the EEP viewer as it moved towards release status.
    • It is not clear on whether the final shader updates (e.g. crepuscular rays) will be ready by the time the viewer goes to RC status.
  • The focus now is not on adding features but ensuring there are no significant blockers to EEP progressing to release status.

Bakes On Mesh

Project Summary

Extending the current avatar baking service to allow wearable textures (skins, tattoos, clothing) to be applied directly to mesh bodies as well as system avatars. This involves viewer and server-side changes, including updating the baking service to support 1024×1024 textures, and may in time lead to a reduction in the complexity of mesh avatar bodies and heads.

This work does not include normal or specular map support, as these are not part of the existing Bake Service, nor are they recognised as system wearables. Adding materials support may be considered in the future.

Resources

Current Status

  • Anchor Linden has resumed work on Bakes on Mesh.
  • This work is currently focused on fixing viewer bugs and moving the viewer forward.

Non-HTTP Asset Fetching / UDP Path Deprecation

  • A further reminder that UDP message paths for inventory asset fetching is being removed from the simulators.
  • When complete, this means anyone using really old viewers that use UDP messaging rather than HTTP / CDN will no longer be able to obtain responses to asset requests.
  • This work is running a little behind the planned completion date of January 9th.

In Brief

  • Texture caching: the updates to the viewer texture cache are part of Graham Linden’s work, and he is currently focused on EEP and shader work.
  • Mesh uploader: as reported in my previous TPVD meeting update, Beq Janus contributed her updates to the mesh uploader to LL. These are being worked on for incorporation in the official viewer. This is no largely working, but has some UI inconsistencies to be ironed out.
  • ARCTan: this is the work to revise the calculations for avatar / object complexities
    • It is still at the data gathering phase. This data can then be used to redefine the formulas used in calculating complexities, leading to the necessary adjustments to things like rendering cost, LI, and upload costs.
    • This work also involves updates to the respective back-end services so that they can acquire all the information needed for the calculations, rather than relying on viewer-side analysis.
    • Texture use should also be considered in the new calculations – although this may be in terms of the number of textures, rather than their size.
    • ARCTan may also look at instancing of meshes (e.g. more than one instance of a specific mesh in a scene, if this is not done already (as textures already are).
  • Animesh follow-up: still at the discussion stage internally at the Lab.

2019 SL User Groups 4/1: Simulator User Group

Bay of Dreams; Inara Pey, December 2018, on Flickr
Bay of Dreamsblog post

Update: Magnum and LeTigre did not see a deploy on Wednesday, January 23rd, leaving them on server maintenance package 18#18.12.05.522294.

Server Deployments

As always, please refer to the server release thread for the latest news and updates.

  • On Tuesday, January 22nd, 2019 the SLS (Main) channel was updated with server maintenance package 19#19.01.09.523003, comprising logging to gather baseline information on simulator performance in various areas of interest together with additional logging.
  • On Wednesday, January 23rd, 2019 the RCs will be updated as follows:
    • BlueSteel will receive server maintenance package 19#19.01.18.523336, comprising the simulator support for the Environment Enhancement Project (EEP), and which will see the Snack channel currently used for EEP rolled into the BlueSteel RC.
    • Magnum and LeTigre were still TBD at the time of writing. I’ll update this article when more is known.

Region holders who wish to test EEP can contact support and ask for their region to be moved to an RC channel once the deployment has been made. Rider Linden currently has a request to have the SL wiki updated with the LSL functions for EEP, and has offered to provide a forum post on them, if required.

Remember, to work with EEP, you need the EEP project viewer, available from the Alternate Viewers wiki page.

SL Viewer

There have been no SL viewer updates to start the week, leaving the pipelines, at the time of writing, as follows:

  • Current Release version 6.0.1.522263, dated December 5th, promoted December 13th. Formerly the Spotykach Maintenance RC viewer – No Change.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • Love Me Render RC viewer, version 6.0.2.523177, January 16th.
    • Estate Access Management (EAM) RC viewer, version 6.1.0.522564, December 19th.
    • BugSplat RC viewer, version 6.1.0.522614, December 18th. This viewer is functionally identical to the current release viewer, but uses BugSplat for crash reporting, rather than the Lab’s own Breakpad based crash reporting tools.
  • Project viewers:
  • Linux Spur viewer, version 5.0.9.329906, dated November 17th, 2017 and promoted to release status 29th November – 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.

General

The SUG meeting was dominated with questions when upcoming features – grid-wide experiences,  new premium benefits, etc – may appear, and when the Lab anticipates completing the migration to the cloud. As always, and given the fact that SL is a dynamic environment with a lot going on, the replies were more-or-less “when they are ready”.

2019 SL User Groups 3/2: TPV Developer Meeting

The Forest - Winter Wonderland; Inara Pey, December 2018, on Flickr
The Forest – Winter Wonderland, December 2018 – blog post

The following notes are taken from the TPV Developer meeting held on Friday, January 18th, 2019. A video of the meeting is embedded below, my thanks as always to North for recording and providing it. Time stamps are provided to the major topics of discussion , which will open the video in a new tab for ease of reference.

SL Viewer

[2:40-4:00]

The following viewers updated on Wednesday, December 16th, 2019:

The remainder of the official pipelines remain as:

  • Current Release version 6.0.1.522263, dated December 5, promoted December 13. Formerly the Spotykach Maintenance RC viewer – No Change.
  • Release channel cohorts:
    • Estate Access Management (EAM) RC viewer, version 6.1.0.522564, December 19.
    • BugSplat RC viewer, version 6.1.0.522614, December 18. This viewer is functionally identical to the current release viewer, but uses BugSplat for crash reporting, rather than the Lab’s own Breakpad based crash reporting tools.
  • Project viewers:
  • Linux Spur viewer, version 5.0.9.329906, dated November 17, 2017 and promoted to release status 29 November – 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.

The EEP viewer is now very close to being promoted to RC status, and if all goes to plan, the simulator EEP support should be going to RC as well very soon.

Viewer Build Process

[4:04-7:24] The Lab is starting on moving their viewer build process to Visual Studio 2017.  This may lead to changes appearing in the build process as this work progresses. So far the work is proceeding smoothly, and is not anticipated as taking too long to complete. After this, the Lab plans to track their build process updates a lot more closely to Visual Studio releases (VS 2019 will be appearing this year).  Mac builds are to OS 10.13, and use Xcode 10.

Linux Viewer Status

[11:40-17:42] A couple of TPV Linux developers have contacted Oz Linden concerning assistance with the Linux build of the viewer. The holiday period, plus the fact Oz was on vacation immediately following it, means he has not followed up on the offers as yet, but will be doing so. It is hoped that this means work on supporting Linux will once again resume soon.

The Lab’s plan had been to provide a basic Debian build for Linux, avoiding the need to rebuild all the libraries for different tarballs. However, but suggestions have been made to consider using snaps / flatpacks instead. Currently the Lab is open to trying to incorporate the progress other have made in supporting Linux, including setting up build environments to support them with the aim of providing a Linux flavour for the viewer once more, with the caveat that any work carried out must not break the build processes for the other platforms.

There are a couple of potential caveats with any Linux viewer build that emerges from this work:

  • It will not have direct Voice support because a) Vivox no longer support Linux; b) changes to the Voice API means older versions of the SLvoice.exe plug-in will not work. (although voice via Wine is possible).
  • It is unlikely to have Havok support. It is felt that the number of Linux user actually employing the official Linux viewer has always been so small that the effort to incorporate the Havok libraries is not seen as worthwhile. This may be revised as work progresses.

Non-HTTP Asset Fetching / UDP Path Deprecation

[7:44-10:36] All asset types are – and have been for some time – fetched via HTTP / the CDN. However, the old UDP message paths for such fetching has remained in place. This is now being deprecated from the simulator code. The patch for this is not ready to go, and should be rolling out across the simulator release channels over the next few weeks, a little later than originally planned.

This means anyone using really old viewers that do not have HTTP asset fetching (notably for the likes of system body parts, system clothing, gesture, animations, sounds, landmarks and textures) will no longer be able to obtain responses to asset requests.

[34:52-35:15] The Lab will also consider requests to move other functions away from UDP to other capabilities.

In Brief

  • Reports are increasing on the time it takes mesh attachments (clothing, body parts, to “snap” into place when logging-in or teleporting to a region where there is a number of other avatars.
  • Some Firestorm users are also reporting texture corruption issues linked to the above, which may be linked to Malwarebytes anti-virus software..
  • Firestorm is hoping to move the current version with Animesh support to a “full” release around the end of January, hopefully).
  • Catznip is planning a release without Animesh support, to be followed by a release with optional Animesh release.