2022 TPVD meetings week #27

Village of Ahiru, April 2022 – blog post

The following notes were taken from the video recording by Pantera (embedded at the end of this piece, my thanks to her as always for recording the meetings) of the Third-Party Viewer Developer (TPVD) meeting on Friday, July 8th, 2022 at 13:00  SLT.

Please note that this is a summary of the key topics discussed during the meeting and is not intended to be a full transcript of either. However, the video does provide a complete recording of the TPVD meeting, and timestamps to the relevant points within it are included in the notes below.

Available Viewers

[Video: 0:08-2:30]

  • Maintenance Optimisations RC version issued on Thursday, July 7th, This viewer:
    • Incorporates the Build Copy / Paste capability (also found in the Copy / Paste Project viewer).
    • Assorted UI improvements / clean-up (e.g. such as with the Build Edit folder).
    • Apparently includes the ability to hide the World Map Legend
    • Is likely to be fast-tracked to release status “in the next couple of weeks”.

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

  • Release viewer: version – formerly the Maintenance M(akgeolli) RC viewer, promoted June 29th.
  • Release channel cohorts:
    • Nomayo Maintenance RC (Maintenance N) viewer, version, June 1.
  • Project viewers:
    • Performance Floater project viewer, version, May 10.
    • Mesh Optimizer project viewer, version, dated January 5, issued after January 10.
    • Legacy Profiles viewer, version, dated October 26, 2020.

General Viewer Notes

  • Following the promotion of the Maintenance Optimisation RC viewer, the focus will be on the Legacy Profile viewer to get that to RC status.
  • There are some crash-on-exit issues with the official viewer the Lab is attempting to fix.

RequestImage UDP Message

[Video: 2:50-4:44]

  • Since 2015, assets have been delivered to the viewer via HTTP using CDN capabilities.
  • However, the RequestImage UDP messaging capability for delivering textures has remained in place on the simulator, and it has been noted that some viewers continue to use it directly or as a fallback, requiring the simulator to carry out checks with the CDN service when textures cannot be found.
  • LL would like to completely remove all reliance on the simulator for texture fetching / checking, and have everything via HTTP and the viewer / asset system / CDN.
  • To this end the RequestImage message will be deprecated and removed “very soon”.
  • Viewer that us (or actually rely on) it are therefore asked to ensure they only use the HTTP route.
  • [Video: 6:55-7:24] Going forward, the simulator code will track deprecated messaging that TPVs may or may not be using, allowing LL to them TPV where such message paths are still being used and which have been earmarked for removal from the simulator.

In Brief

  • [Video 5:42-6:25] A bug introduced into one of the upload paths this week resulted in the CDN service delivering PNG data in place of JPEG2000 (primarily for profile pictures), which resulted in some viewers experiencing clogging of their texture processing pipes. This issue has now been fixed.
  • As a part of general discussions, Alexa Linden indicated she’d like to start reducing the time it takes for code contributions from TPVs and third-party developers to be integrated into the core SL viewer code. This includes receiving reminders about old code contributions that may have fallen by the wayside.

Mojo’s Wishlist Ideas

[Video: 8:21-pretty much to the end]

There are not currently project, by Mojo Linden continues to seek feedback on them.

  • He reiterated the idea mentioned at the week #27 CCUG meeting of using low-poly bakes to help “increase” visibility across Mainland regions to try an instil a greater sense of scale of the continents.
    • Mojo noted this could perhaps leverage the Map service in some manner (a problem being that the Map service currently doesn’t know about mesh geometry).
    • In raising the Map service, he also noted LL is also aware of the issues within that service that need to be addressed, and that this is really down to determining the optimum time to doe so, rather than having technical reasons why it cannot be improved.
  • He floated the idea of introducing some means of hidden surface removal, particularly for avatars to remove the need for alpha layers, etc., to hide body parts, the idea being to reduce the complexity of avatar rendering.
    • There are edge cases with this – such as an item of clothing with both an “outside” and “inside” texture (such as a lining on a jacket) – what happens to the “inside” texture, does it get culled?
  • He also floated the idea of fully baking the avatar’s appearance such that avatar and clothing are baked as one as a final step of changing appearance, reducing the overall render cost and complexity.
    • It is not clear if this would allow avatar appearance to be changed in “real time” or not (e.g. Sansar bakes avatars, but does so using a separate environment in which to modify an avatar’s appearance).
    • The fact that rigging can be variable between clothing and bodies, etc., might also need to be worked around, as baking would likely require committing to a single set of weights.
  • It is possible the use of baked avatars would allow for an alternative form of avatar impostor for use within large events with a lot of avatars in a single space, the bakes – whilst lower poly than would be the case in less-crowded environments – offering a better visual result than the current impostor system.
  • A lot of technical questions were through out by those at the meeting as to how LL see baked avatars, etc., “working”. However, as Mojo notes, he’s putting ideas forward to see if there is interest in pursuing them rather than presenting any actual projects; as such answers would be sought collaboratively if it were deemed something that should be looked at more formally / in-depth.

Date of Next Meeting

Friday, August 5th, 2022.