2022 week #35: CCUG + TPVD meetings summary

WillowWood, July 2022 – blog post

The following notes were taken from:

  • My audio recording and chat log of the Content Creation User Group (CCUG) meeting held on Thursday, September 1st 2022 at 13:00 SLT.
  • My notes and the video from the Third-Party Viewer Developer (TPVD) meeting held on Friday, September 2nd, 2002 at 13:00 SLT. The video is provided by Pantera – my thanks to her for recording it, and can be found at the end of this article. Times stamps to the video are included where relevant in the following notes.

Both meetings are chaired by Vir Linden, and their dates and times can be obtained from the SL Public Calendar.

This is a summary of the key topics discussed in the meeting and is not intended to be a full transcript.

Official Viewers Status

[TPVD video: 1:00-2:20]

  • Release viewer: version 6.6.3.574158 – formerly the Profiles RC viewer, dated August 18, promoted August 30.
  • Release channel cohorts:
    • Izarra Maintenance RC, version 6.6.4.574724, September 1.
    • Maintenance 3 RC viewer, version 6.6.4.574727, September 1.
    • Maintenance P (Preferences, Position and Paste) RC viewer version 6.6.3.573877 issued August 15.
  • Project viewers:
    • Puppetry project viewer, version 6.6.3.574545,  issued on August 30.
    • Love Me Render (LMR) 6 graphics improvements project viewer 6.6.2.573263, July 21.
    • Performance Floater project viewer, version 6.5.4.571296, May 10.

General Viewer Notes

  • LL are likely going to be updating the Windows viewer build tools to use Visual Studio 2022.
  • This will likely be ahead of the move to use Github as the main viewer repositories, as outlined at the previous TPV Developer meeting.

Materials and PBR Work

Please also see previous CCUG meeting summaries for further background on this project.

  • Overall, the work on the viewer side of things – rendering in support of glTF 2.0 standards (and consistency of results when going from a tool like Substance Painter trough the uploader to displaying in SL)  is now “near complete”.
  • It  is hoped that it will “not be long” now before a project viewer is more generally available, although there is still additional back-end work to be completed, together with adding support for things like transparency support, ensuring PDR rendering works under linden Water, and similar.
  • Again, the focus of this work for the first pass is “core” glTF 2,0 support.
    • Ratified (under ISO) extensions may be up for inclusion in future enhancements to the capability.
    • Non-ratified extensions will not be up for inclusion in future updates.
  • In order for to be compliant with glTF, tangents are going to have to be generated in mikkTSpace, where normal maps are applied. This means that existing normal maps within Second Life / normal maps generated without using MikkTSpace may not look correct when rendered via the PBR pipe.
  • [TPVD video: 28:41-30:55]:
    • Runitai Linden noted that this project has been a valuable experiment in real-time collaboration between the LL dev and members of the community through the Discord server.
    • He expressed thanks to the TPV developers and the creators who have assisted the graphic team both in the development of the PBR rendering path and in helping with the reflections probe development, both in terms of code contributions and in helping to identify and address edge-case issues.
    • He further noted It  is hoped more projects might by run this way.

Textures: Handling

[TPVD video: 5:19-10:22]

  • Also pulled into this work are improvements to the texture handling (previously DRTVWR-559), This involves  better core utilisation and VRAM usage.
  • For Windows, this work includes an API which:
    • More accurately track texture memory use in the viewer and report it back to the client operating system.
    • Should ensure all available video memory (i.e. that not being used by other applications) on  Windows systems is used by the viewer prior to any texture paging occurring.
    • Works with both Intel and AMD hardware (the latter is important that the OpenGL extensions commonly used by TPVs to achieve a more efficient use of VRAM apparently no longer work correctly on AMD hardware).
  • For Mac OSX, the new method is to use internal accounting to attempt to track how much video memory is free and then estimate a value of available memory for textures from that.
    • This is because the operating will not simply report the amount of free video memory (only how much is installed), ruling out the use of a more scientific approach.
  • Once available in production viewers, these changes should mean those running systems with more recent video cards with decent amounts of free video memory should see much improved texture fetching and loading and see a reduction of textures being paged out to cache (the blurring / sharpening / blurring of textures) seen when the viewer thinks it is using all available / allowed video memory.
  • A further change is to specify the maximum amount of system memory the viewer can use for textures (16 GB, if available on 64-bit systems; 4GB on 32-bit systems).

Puppetry Update

Please also refer to:

Notes:

  • The discussion on puppetry mentioned in  the above articles will be the first such meeting, and if there is demand for it, there will be a similar meeting on Aditi on alternate Thursdays from September 8th onwards, to be held in the theatre on Aditi Castelet region.
  • These meetings will (initially) be very development focused rather than creator / user focused, given the overall status of the project.
  • It is advisable that attendees use the Puppetry project viewer when attending these meetings (available from the Alternate Viewers page), so that they might see any demonstration which may take place during meetings.
  • [TPVD video 12:50-14:53]:
    • It’s important to notice that what has been made available is a very early stage “alpha” release.
    • The choice of  the  LLSD Event API Plug-in (LEAP) system means that it should be fairly easy to write third-party code to support capture devices (e.g. from Leap Motion through to (potentially) full body trackers – something Vru Linden is already tinkering with).
    • The Thursday meetings are being established to discuss precisely these kinds of opportunities and the potential for things like multi camera support, etc.
  • [TPV video: 31:09-33:24]  Given the success of the real-tome collaboration with PBR / Reflection Probes, it is likely the Puppetry project will also follow a similar approach and utilise a Discord channel for discussion and contributions, etc., over and above the fortnightly meetings on Aditi.

TPVD In Brief

  • [TPVD video: 2:26-4:15] Inventory Updates:
    • This is something the Lab is considering, and has been looking for feedback from users on possible approaches. – see also the previous CCUG  / TPVD  meetings summary.
    • If / when this work goes ahead, it will also involve some general code and other technical tidying-up,  including:
      • Reducing the number of different AIS APIs currently in use.
      • Removing deprecating (and eventually removing) UDP messaging paths for inventory, together with outdates inventory caps (particularly as the latter are superseded.

 

Next Meetings

  • CCUG: Thursday, September 15th, 2022.
  • TPVD: Friday, September 30th, 2022.

2022 SUG meetings week #35 summary – Puppetry

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

The following notes were taken from the Tuesday, August 30th, 2022 Simulator User Group (SUG) meeting. They form a summary of the items discussed and is not intended to be a full transcript. A video of the entire meeting is embedded at the end of the article for those wishing to review the meeting in full – my thanks to Pantera for recording it.

Server Deployments

For the most up-to-date information, please refer to the deployment forum thread.

  • On Tuesday, August 30th, the simhosts on the Main SLS channel were updated with simulator version 574550. This release fixes an issue with some system textures being unavailable – notably the default water map being absent, resulting in totally flat glassy water or view-transparent mode having everything look solid..
  • On Wednesday, August 31st, all simhosts on the RC channels will be updated with simulator release 574611,which includes the above fixes + additional fixes (release notes pending at the the time of writing.

Available Official Viewers

On Tuesday, August 30th:

  • The Profiles viewer, 6.6.3.574158, was updated to de facto release status.
  • The Puppetry project viewer, version 6.6.3.574545, was issued – see below.

The remaining official viewers stay listed as:

  • Release channel cohorts:
    • Maintenance P (Preferences, Position and Paste) RC viewer version 6.6.3.573877 issued August 15.
    • Izarra Maintenance RC, version 6.6.3.573920, August 15.
    • Maintenance 3 RC viewer, version 6.6.3.573882, August 5.
  • Project viewers:
    • Love Me Render (LMR) 6 graphics improvements project viewer 6.6.2.573263, July 21.
    • Performance Floater project viewer, version 6.5.4.571296, May 10.

Puppetry

See also: the official blog post Introducing Second life Puppetry.

Previously referred to as “avatar expressiveness”,  Puppetry is intended to provide a means by which avatars can mimic physical world actions by their owners through tools such as a webcam and using technologies like inverse kinematics and the  LLSD Event API Plug-in (LEAP) system.

We are excited about Puppetry’s potential to change the way we interact inside Second Life.  For example, using a webcam to track your face and hands could allow your avatar to mimic your face animations and finger movement, or more natural positioning of the avatar’s hands and feet against in-world objects might also be possible.  Alternative hardware could be used to feed information into Second Life to animate your avatar – a game controller or mocap equipment.  There’s a lot to explore and try, and we invite the Second Life community to be involved in exploring the direction of this feature.

– from the official blog post

Note that this capability is still very much experimental / in development and is not feature-complete. Also, the following should be noted:

  • The Puppetry viewer is very much experimental,  and is required to view any puppetry animations – viewers without the supporting code will not show them.
  • The back-end support for the capability is only available on Aditi (the Beta grid) and within the following regions: Bunraku, Marionette, and Castelet.
  • No other special needs beyond the project viewer are required to “see” Puppetry animations. However, to use the capability to animate your own avatar and broadcast the results will take more work.
  • For further information, check out the documentation links below:

Again, please remember this is very much a “alpha” implementation of Puppetry:

  • Linden Lab is looking for feedback from the community in determining potential use cases and onward development.
  • The Lab will be hosting an open discussion on Puppetry on Thursday, September 8th, and 13:00PM SLT. This will take place at the Puppetry theatre in the Aditi  region of Castelet.

Please refer to the video for further discussion on the capability.

Update, September 1st

  • The discussion on puppetry mentioned in  the above articles will be the first such meeting, and if there is demand for it, there will be a similar meeting on Aditi on alternate Thursdays from September 8th onwards, to be held in the theatre on Aditi Castelet region.
  • These meetings will (initially) be very development focused rather than creator / user focused, given the overall status of the project.
  • It is advisable that attendees use the Puppetry project viewer when attending these meetings (available from the Alternate Viewers page), so that they might see any demonstration which may take place during meetings.

2022 SUG meetings week #34 summary

MarDayLine Pylons, July 2022 – blog post

The following notes were taken from the Tuesday, August 23rd, 2022 Simulator User Group (SUG) meeting. They form a summary of the items discussed and is not intended to be a full transcript. A video of the entire meeting is embedded at the end of the article for those wishing to review the meeting in full – my thanks to Pantera for recording it.

Server Deployments

For the most up-to-date information, please refer to the deployment forum thread.

  • On Tuesday, August 23rd, the simhosts on the Main SLS channel were updated with simulator version 574216. This includes the new LSL functions:
    • llReplaceEnvironment() – a scripted means to replace the environment in a parcel or a region, either for a single elevation track or the entire environment.
    • llSetEnvironment() – a scripted function to override the environmental settings for a region or a parcel. The owner of the script must have permission to modify the environment on the parcel or be an estate manager to change the entire region.
  • On Wednesday, August 24th, all simhost on the TC channel will be restarted without any deployment, leaving the also on simulator version 574216.

Available Official Viewers

On Monday, August 22nd, the Mesh Optimiser and Copy / Paste project viewers were both finally withdraw from the Alternate viewers download page, leaving the available official viewers as:

  • Release viewer: version 6.6.2.573358 – formerly the Maintenance 2 RC viewer, dated August 1, promoted August 4 – 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).
    • Profiles RC viewer updated to version 6.6.3.574158, on August 18<.
    • Maintenance P (Preferences, Position and Paste) RC viewer version 6.6.3.573877 issued August 15.
    • Izarra Maintenance RC, version 6.6.3.573920, August 15.
    • Maintenance (N)omayo RC viewer, version 6.6.3.573882, August 5.
  • Project viewers:
    • Love Me Render (LMR) 6 graphics improvements project viewer 6.6.2.573263, July 21.
    • Performance Floater project viewer, version 6.5.4.571296, May 10.

In Brief

HTTP discussion: a fair amount of the meeting was given over to HTTP which touched upon:

  • HTTP/2 multiplexing / pipelining (to replace the current HTTP 1.1 pipelining (which in turn touched upon TLS updates and Curl version updates) – in short, something the Lab is looking towards, but not on the immediate horizon.
  • The potential to obtain headers from an HTTP response using llGetHTTPHeader, which itself incorporated discussions of requirements, risk in exposing SL to returns of strings with uncontrolled lengths such that a verbose web site might cause a LSL stack overflow,
  • I’m actually hardly the best place to relay the ins and outs of the discussions, so I’ll refer you to the video for more.

2022 CCUG meeting week #33 summary

Missing Melody, July 2022 – blog post

The following notes were taken from my audio recording and chat log of the Content Creation User Group (CCUG) meeting held on Thursday, August 18th 2022 at 13:00 SLT. These meetings are chaired by Vir Linden, and their dates and times can be obtained from the SL Public Calendar.

This is a summary of the key topics discussed in the meeting and is not intended to be a full transcript.

Official Viewers Status

  • Release viewer: version 6.6.2.573358 – formerly the Maintenance 2 RC viewer, dated August 1, promoted August 4 – no change.
  • Release channel cohorts:
    • Profiles RC viewer updated to version 6.6.3.574158, on August 18.
    • Maintenance P (Preferences, Position and Paste) RC viewer version 6.6.3.573877 issued August 15.
    • Izarra Maintenance RC, version 6.6.3.573920, August 15.
    • Maintenance (N)omayo RC viewer, version 6.6.3.573882, August 5.
  • Project viewers:
    • Love Me Render (LMR) 6 graphics improvements project viewer 6.6.2.573263, July 21.
    • Performance Floater project viewer, version 6.5.4.571296, May 10.
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Copy / Paste project viewer, version 6.3.5.533365, dated December 9, 2019.

Materials and PBR Work

Please also see previous CCUG meeting summaries for further background on this project.

  • The back-end updates are now “all there”, and the focus is now on “tightening up” the graphics., the the image-based side of things now looking “pretty good”.
  • Internal testing currently involves Second Life, the new PBR / Materials viewer, the Kronos glTF 2.0 standard and Adobe Substance tools (Painter, Stager) to ensure that results displayed within Second Life are consistent with expectations when working within Substance Painter and with glTF.
  • Some inconsistencies with using directional lights created in Blender have been noted and subject to further testing.
  • Those with access to the Content Creation Discord server will be able to obtain an updated viewer soon. This will lack transparency support or LSL support; it will also have some “rough edges” around the UI and inventory support.
    • This is a test viewer only, and not for general consumption.
    • A more public Project viewer will be made through the Alternate Viewers channels when the work is more stable and suited for wider consumption.
  • Once the initial work on PBR  Materials is released, the graphics team will likely work on some quality of life improvements (e.g. bug fixes) for the graphics system, rather than launching into a new project immediately.

Possible New Inventory Fields

Whilst not solely related to content creation, the Lab has been discussing the potential of adding new inventory fields. Ideas being considered or also put forward at the meeting comprise:

  • Providing a thumbnail image of the inventory item, rather than having to rely solely on descriptive text.
  • A means of “tagging” inventory items (e.g. to define what they are in terms of being an attachment or not, and whether the attachment is / is not rigged, etc.), rather than just simply leaving them as a list of orange boxes.
  • Providing a formal means of “archiving” items that are not regularly used but which are not yet ready to be deleted (other than boxing things up and creating more orange boxes….).
  • Splitting head shapes and body shapes to make it easier for people who use different heads with the same body (or vice-versa).

In Brief

  • Requests are again surfacing for texture animation support in particles (see feature request BUG-5307). Those interested in seeing such capabilities should consider adding feedback to this Jira.
    • This led to questions on a complete overhaul of the SL particle system, which is not something currently under consideration as a possible future project at the Lab – which is not so say incremental updates are ruled out. Again, specific requests incremental updates system should be made via Jira.
    • For texture animations on particles, for example, the Lab would likely consider adopting the existing texture animation system for use with particles, rather than rebuilding the particle system to handle texture and other animations.
  • There was a brief discussion of a viewer-side Animation Override (AO) system (e.g. similar in nature to the Firestorm approach). This has been raised in the past at TPV Developer meetings, where it appears to get more robust discussion.
  • The question was raised of having support for user-defined custom shaders in Second Life. The short answer is “no”, as there are too many variables (a custom shader for a single scene may work – but what happens with 30 people utilise their own shaders / shaders made by others and all congregate at a single club? The rendering will not scale (also, with people all creating their own shaders, how can a consistent result be ensured? What about the risk of malicious shaders being used with content?).

Next Meeting

  • Thursday September 1st, 2022.

2022 SUG meetings week #33 summary

La Montagna Spaccata, July 2022 – blog post

The following notes were taken from the Tuesday, August 16th, 2022 Simulator User Group (SUG) meeting. They form a summary of the items discussed and is not intended to be a full transcript. A video of the entire meeting is embedded at the end of the article for those wishing to review the meeting in full – my thanks to Pantera for recording it.

Server Deployments

For the most up-to-date information, please refer to the deployment forum thread.

  • On Tuesday, August 16th, the simhosts on the Main SLS channel were updated to simulator version 573931, adding Premium Plus support to llGetObjectDetails() in LSL.
  • On Wednesday, August 17th, the simhosts on the RC channels will be updates with simulator version 574216. This includes the new LSL functions:
    • llReplaceEnvironment() – a scripted means to replace the environment in a parcel or a region, eEither for a single elevation track or the entire environment.
    • llSetEnvironment() – a scripted function to override the environmental settings for a region or a parcel. The owner of the script must have permission to modify the environment on the parcel or be an estate manager to change the entire region.

The Tuesday deployment took longer than anticipate, as has been accompanied by reports of back-end services issues (e.g. login failures, texture uploads failing, profile changes reverting) being experienced for some regions on coming back up. LL is investigating these issues).

Available Official Viewers

On Monday, August 15th:

  • A new Maintenance RC viewer – Maintenance P (Preferences, Position and Paste), version 6.6.3.573877, was issued.
  • The Izarra Maintenance RC viewer updated to version 6.6.3.573920.

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

  • Release viewer: version 6.6.2.573358 – formerly the Maintenance 2 RC viewer, dated August 1, promoted August 4 – 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).
    • Maintenance (N)omayo RC viewer, version 6.6.3.573882, August 5.
    • Profiles RC viewer, version 6.6.2.573372, issued July 21.
  • Project viewers:
    • Love Me Render (LMR) 6 graphics improvements project viewer 6.6.2.573263, July 21.
    • Performance Floater project viewer, version 6.5.4.571296, May 10.
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Copy / Paste project viewer, version 6.3.5.533365, dated December 9, 2019.

In Brief

  • BUG-232490 “not_at_rot_target fails inconsistently” is a re-filing of an old report (SVC-3324) which filed to get picked-up. The re-filling under the BUG project should ensure it is now properly triaged.
  • BUG-231553 “Revised: HTTP_ACCEPT not working as expected” (setting HTTP_ACCEPT on outgoing HTTP requests per: the function’s SL wiki notes doesn’t behave as expected. Currently you can set any values you like, but those settings aren’t reflected in outgoing requests). This may or may not be a bug, pending further user testing.
  • Please refer to the video for additional general discussion.

2022 SUG meetings week #32 summary

Bella’s Nocturne, June 2022 – blog post

The following notes were taken from the Tuesday, August 9th, 2022 Simulator User Group (SUG) meeting. They form a summary of the items discussed and is not intended to be a full transcript. A video of the entire meeting is embedded at the end of the article for those wishing to review the meeting in full – my thanks to Pantera for recording it.

Server Deployments

No deployment plan notes were available on the forums at this time of writing this update.

  • On Tuesday, August 9th, the simhosts on the Main SLS channel were restarted without any deployment, leaving them running simulator version 573176, comprising infrastructure updates.
  • On Wednesday, August,10th, all RC channels will updated to simulator version 573931, adding Premium Plus support to llGetObjectDetails() in LSL.

The long-promised new llReplaceEnvironment and llSetEnvironment should now go out in week #33, as Maestro had found a couple last minute bugs, which required the addition of an ability to override them at altitude and so prevented their inclusion in this week’s RC deployment.

Available Official Viewers

No changes to the current crop of official viewers at the start of the week, leaving them as:

  • Release viewer: version 6.6.2.573358 – formerly the Maintenance 2 RC viewer, dated August 1, promoted August 4 – New.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • Maintenance (N)omayo RC viewer, version 6.6.3.573882, August 5.
    • Profiles RC viewer, version 6.6.2.573372, issued July 21.
    • Izarra Maintenance RC, version 6.6.2.573282, July 20.
  • Project viewers:
    • Love Me Render (LMR) 6 graphics improvements project viewer 6.6.2.573263, July 21.
    • Performance Floater project viewer, version 6.5.4.571296, May 10.
    • Mesh Optimizer project viewer, version 6.5.2.566858, dated January 5, issued after January 10.
    • Copy / Paste project viewer, version 6.3.5.533365, dated December 9, 2019.

In Brief

  • More general discussion on parcel ban lines, security orbs and road / water / air vehicle travel (mostly, but not exclusively related to Mainland. This included BUG-231802 “Prevent vehicles from entering parcels their riders cannot access”), which is now being queued-up to be worked on at the Lab. While this will not help with aggressive orbs, it will help with issues of vehicle entering parcels set with restricted access and the passengers being ejected.
  • Scripted simulator communications:
    • Several people have reported llInstantMessage() is failing at times. This is proving hard to reliably reproduce, but the Lab is nevertheless investigating.
    • llRegionSayTo is also reportedly failing at times, but again, more investigation on this is required before definitive conclusions can be drawn.
    • These led to a wider discussion on simulator communications – please refer to the video for details.
  • Pivot points / object hierarchies. Following the discussion on these at the last Content Creation User Group (CCUG) meeting (see here), a Feature Request Jira has been raised (BUG-232445) and a bare-bones forum thread opened. Commenting on the linking of the two ideas, Rider Linden noted:
The whole discussion about object hierarchies is/was a bit tangential. Strictly speaking the two are not related. (It is a nice to have, but would be a huge multi-month effort to pull off).
  • For other general discussion and comments, please refer to the video below.