SL21B Town Hall Summary: Product and Engineering (audio +video)

SL21B Product and Engineering Town Hall (l to r): Kali Linden, Signal Linden, Missy Mole (host), Grumpity Linden, Sntax Linden, Kyle Linden

 

On Tuesday, June 25th, 2024, Linden Lab held special Town Hall Meeting of the Product and Engineering team, featuring the following personnel:

  • Grumpity Linden – Senior VP of Product & Engineering.
  • Signal Linden – Director of Engineering Second Life Server & Viewer.
  • Kali Linden – Director of Engineering Web & Platform.
  • Sntax Linden – Senior Product Manager.
  • Kyle Linden –  Product Manager.

This is a summary of the topics discussed at the session. Audio extracts are included were appropriate, and a video of the session is embedded at the end of this article – my thanks to Pantera for providing it.

Table of Contents

For ease of reference, timestamps are provided to the relative points within the video where specific topics are discussed, allowing readers who prefer to listen to the comments directly to be able to do so.

A Little Background

[Video: 2:37-8:48]

A brief introduction to each of the people participating:

  • Kali Linden: has been with Linden Lab for nine years and heads-up the teams responsible for the Lab’s web properties (Marketplace, Secondlife.com, etc., the account management and log-in services, etc.
  • Signal Linden: a software engineer with a long history with virtual environments (MU* platforms, etc.), and started using SL as as high school student. He joined LL in 2015, initially working on Sansar. His background is software engineering, and he now leads both the viewer and server engineering teams.
  • Grumpity Linden: joined SL as a contractor with The Product Engine and helping with the development of (the then) Viewer 2.0, and formally joined LL in 2014. As the Senior VP of Product and Engineering she is responsible for coordinating both teams and overseeing their various projects, often in a hands-on capacity (as with SL Mobile).
  • Sntax Linden: manages the Lab’s web properties under Kali Linden (as he leads the monthly Web User Group meetings), and currently has a specific focus on the Marketplace and improving Second Life’s commerce environment.
  • Kyle Linden: as a product manager, is focused on creator tools within the platform. He is a 17-year veteran of Second Life and has worked in most areas of the Linden Lab / the platform in that time.

Major Announcements

SL Mobile

[Video: 1:09:25-1:16:34]

The SL Mobile log-in screen (splash image changes with each log-in), the connecting screen giving destination, and the in-world view with drop-down menu active
  • The App is not currently visible on  Google Play, as new apps take up to 7 days to become searchable there.
  • It is hoped the Beta can open out more widely Soon™.
  • As a Beta product, there is still much more work to do – but a lot has been achieved with the assistance of the closed alpha users / testers.
    • However, SL Mobile will never provide all of the features found in the viewer, as it is impractical to do so (e.g. in-depth content creation is unlikely to be a part of the app).
  • In keeping with the above, feedback from those trying the Beta is welcomed – refer to the link to the official blog post above for details.
  • Feedback is requested through the SL channels, not through either the Apple Store or Google Play, as the latter could unbalance the app’s ratings unfairly, given it is only a Beta product, not a released product.
  • LL are still in consultation with Apple over the issue of the iOS version of the app not being allowed to access Adult rated regions.
  • LL have been in discussions with Unity (as the app is built on that engine) over Unity’s sudden licensing changes earlier in 2024, and the belief is that this will not be an issue for SL mobile in the future.

Scripting and Lua(u)

[Video: 26:31-31:17] – Signal Linden

[Background: In February 2024 it was confirmed LL is looking to natively adopt Luau, a Lua VM implementation viewer-side as a means of providing better support for, and control of, scripted agents (including automated testing capabilities using such agents; providing a means of supporting custom UI extensions / plug-ins without having to resort to C++ and adding custom displays to present exiting information in the viewer. See here and here for more on the initial announcement. The following is in addition to that work.]

  • Signal indicated at as well as running Lua natively on the client-side, LL is now looking to replace the Mono VM runtime engine with Luau’s runtime engine on the back-end.
  • This means that scripts should be more efficient in their memory use and execute faster.
  • The work is still in the benchmarking / development phase, and more information will be provided as work progresses.
  • As this is now a viewer / server project, it is liable that information will be made available through both the Simulator User Group meetings and the TPV Developer meetings, as it become prescient.

  • Rider Linden added further context to the above in local chat:
The project will end up swapping the underlying Mono VM out for a Lua VM under the hood … Our plan is to support both [LSL and lua]. We will end up compiling the LSL down to the Lua bytecode. [So essentially] 2 VMs. LSO (the old stuff) and ultimately the Lua VM. The Mono -> Lua bytecode change should be invisible.

Content Creation

Educating Creators (Best Practices, Content Optimisation, etc) – Kyle Linden

[Video: 10:00-11:42]

  • The existing community of Second life creators as their greatest educational asset, and so are thinking about ways to spotlight creators who provide videos, guides, tutorials, and / or by teaching in-world, etc., on a “best practice” basis.
  • That said, LL acknowledge their own documentation is often poor – much is out-of-date, features are often released without full documentation [which also might never follow as a result], and focus needs to be placed on this.
  • Believes that LL are going to try to build a better repository / resource creators and users can use to find the kinds of tutorials / class / video guides mentioned above.

Improvements to Mesh Rigging and the Avatar Skeleton – Signal Linden

[Video: 12:07-15:31]

  • LL is aware the current approach to rigging mesh and attachments to the avatar is a non-trivial task is is looking to ways to improve the workflow for creators so that content built outside of SL can be more directly imported and “work”.
  • This involved moving to modern content creation standards [i.e. the glTF 2.0 specification, as frequently referenced in this blog].
  • First phase of this work currently in development with glTF scene import, which will prototype a “drag and drop” approach to taking content from Blender and dropping it into Second Life [details on the glTF import / export work can be found in my CCUG summaries].
  • One outcome of this work will be the ability to have more “local mesh preview” capabilities, where content can be temporarily displayed in the viewer exactly as it appears in the tool used to create it (e.g. Substance Painter, Blender), without having to go through any form of upload conversion (somewhat like the Local Textures capability).
  • Further into the future, this work will mean SL can support custom armatures (rigs / skeletons).

Animation Improvements – Priorities and Editing – Signal Linden

[Video 15:38-17:08]

  • This is seen as an important capability by many, both for helping to improve the smoothness of things like Animation Override systems and in avoiding potential conflicts between animations.
  • It has often been requested and is something the Lab would like to tackle. There are requests on the Feedback Portal, and people are asked to vote on them to indicate how important they think this is, and new ideas should be submitted there.
  • Sees the issue potentially being tackled in a number of ways (e.g. better scripted support, supporting different animation formats, etc.).

2K PBR Terrain on Mainland / Support for PBR and 2K textures on Avatars -Signal Linden

[Video: 19:12-21:16]

  • 2K PBR terrain on Mainland more a Product Operations question than an engineering question.
  • 2K textures + PBR support for Avatar Appearance [Bakes on Mesh/Bake Service; wearables assets (inventory), appearance editing, etc.]: No 1 most voted request on the Feedback Portal and is currently being planned. Deployment should eventually be a combination of both at the same time, once ready.
PBR terrain. Credit: Linden Lab

PBR and Improvements – Signal Linden

[Video: 32:53-40:39]

  • The graphics team is continuing to work on optimising PBR performance, including fixing redraw bugs, memory use, etc.
  • This work is in part focused on optimisations for mid-range hardware (e.g. around US $800 brand-new).
  • With regards to MacOS, there is a focus on the current memory issues
  • LL recognise that the introduction is a world-changer in terms of SLs visuals – but it is also a world-changer in allowing content creators to more readily use their tools to produce good content for Second Life without having to resort to arcane measures.
  • Appreciate the change can be painful for some, and are trying to respond where possible with updates and improvements.
  • Pointed out (again) that the arrival of PBR is just one step in the overall plan for enhancing Second Life’s capabilities and full leverage modern content creation tools and techniques.

WebRTC

[Video: 45:48-50:00] – Signal Linden

[Background: WebRTC (RTC=”real-time communication”) is bing implemented to replace Vivox as the Voice component in Second Life. It is both a viewer and server project, with the viewer code supplied as a library with a wrapper, so there will no longer be a separate 3rd party Voice .EXE plug-in. It will offer a more extensible, “industry standard” approach to voice in SL, with better fidelity and sound quality. Initial deployment will see it work alongside Vivox (with some limitations).]

  • The release candidate viewer can be found on the Alternate Viewers web page.
  • The switch-over will be carried out in collaboration  / cooperation with TPVs.
  • Work has been put into securing the use of WebRTC Voice against attempts to eavesdrop, obtain people’s IP addresses, etc., by routing peer-to-peer communications via an internal server using a Lab proxy IP.

Commerce

  • [Video: 58:11-1:00:33] Mult-Factor Authentication (MFA) – Kali Linden
    • Will be added to the Marketplace.
    • It will be opt-in, as per the viewer / SL dashboard.
    • The overall goal is to have MFA applied to all points of entry to SL for those using it.
  • [Video: 1:00:59-1:03:01] Marketplace questions – Sntax Linden
    • Marketplace Search has been undergoing improvements and will continue to do so, all the the aim of improving the ability of content creators to promote their content and buyers get to the content they want to see.
    • Marketplace on mobile devices: There is a project underway to update the Marketplace design and UI which it is hoped will make it more accessible to smaller screens, and when using the in-viewer web browser.
    • Feedback on these welcome through the Feedback Portal and at the monthly Web User Group meetings.
  • [Video: 1:03:05-1:04:16] CasperVend / Marketplace integration – Kali Linden
    • A road map is being developed as to what makes the most sense to do first with CasperVend integration in general.
    • Again the onus is on making the general shopping and merchant experience better across the Marketplace and when using / interacting with CasperVend products.
    • It is likely one of the first areas for integration will be having CasperVend delivering go through the same mechanism as Marketplace deliveries, simplifying CasperVend redeliveries.
    • Longer-term going is to have things integrated so that Merchants can manage their activities through a single point, whether selling through CasperVend or / and via the MP.

In Brief

Upcoming Initiatives – Kyle Linden

[Video: 24:40-26:20]

  • Combat 2.0 [ first tranche of work updating the Second Life Combat system (SLCS – see my Combat User Group summaries).
  • Implementation of game controller support (e.g X-Box game pads).
  • Introduction of WebRTC Voice.

Additional Viewer Updates – Kyle Linden

[Video: 42:15-45:29]

  • As well as those mentioned (glTF scene import, WebRTC, etc):
    • More sample content to the Library (e.g. mirrors).
    • HDRI support for skies, etc.
    • Possible updates to the library EEP settings to HDR.
    • Possibly extending the use of emojis in Display Names (this is problematic as it requires Unicode data to be stored, and so is only being explored at this time and many not make it to feature release).
Emojis in the viewer (and most / all TPVs)

Accessibility Initiative – Kyle Linden

[Video: 51:45-54:50]

  • Some of work going into SL over the last few years has been focused on laying the foundations for improved accessibility options.
  • One of the first elements of this work to surface will be server-side translation for text.
  • In the future, the deployment of WebRTC could potentially allow for direct text-to-speech / speech to text.
  • AI tools might be considered for giving access assistance to SL.
  • Those with ideas for making SL more accessible to all should file feature requests via the Feedback Portal.
  • It was pointed out that creators could help with accessibility by giving their creations meaningful names where appropriate, rather than leaving them as the default “Object”.

The future of Mesh Upload Prices – Grumpity Linden

[1:05-06-1:05:58]

  • With the work on glTF mesh uploads and scene imports, LL will be re-evaluating the cost of mesh uploads across all membership levels.
  • In the interim, the change to make 2K texture uploads  free for Premium Plus subscribers is now live.

General Questions in Last 15 Minutes

Please refer to the video from 1:16:53 onwards.

 

SL Mobile Available to Premium Plus and Premium in Open Beta

SL Mobile – via Linden Lab

On Tuesday, June 25th, Linden Lab announced the launch of an Open Beta phase for the SL Mobile App for Android and iOS, extending the opportunity for anyone with a Premium Plus or Premium subscription to Second Life to download the app and try it, and report on issues / give feedback.

  • The launch coincided with an announcement at the Product and Engineering Town Hall event at SL21B, and came with news of a series of special community-lead events to be held across the grid to mark the launch as well.
  • The announcement also saw the SL Mobile (beta) website become generally available, and the opening of a SL Mobile FAQ – those wishing to download and try the app on their device(s) should give this a read through.

How To Get It

As a beta release, you will need to use one of the links below on your device to access the SL viewer download:

The log-in screen (splash image changes with each log-in), the connecting screen giving destination, and the in-world view with drop-down menu active on a mobile ‘phone with octa-core processors ( 2×1.6 GHz Cortex-A75 & 6×1.6 GHz Cortex-A55), Mali G57 GPU and 8+8Gb RAM 

Some Points on Using SL Mobile

In General

  • This is beta software and liable to glitches (such a avatar skins rendering fully or partially black under a variety of situations).
  • Log-in is subject to multi-factor authentication, so if you use MFA, have a valid code available from your chosen authenticator when initially logging-in.
  • Once you are logged-in to Second Life on a specific device, future log-ins will be automatic on starting the the App until you log-out / are logged out from your device (e.g. because you try logging-in from a regular viewer whilst connected via SL Mobile).
  • The app also supports “standard” touch-screen capabilities including strafing movements (camera), pinch-zoom (camera zoom), etc.
  • SL notifications can be displayed as a part of your device’s notifications.
  • In order to comply with Apple requirements, Adult rated regions in Second Life cannot be access by the iOS version of the SL Mobile app.

Initial Tutorial

Avatar movement is via a “joystick” controller (tap bottom left of app window to reveal it), and a brief tutorial is supplied at first-time log-in.

Part of the Joystick tutorial displayed when logging-in to the SL Mobile App for the first time. Captured via a Doogee T10 8+7 Gb (Octa-core 2×1.6 GHz Cortex-A75 & 6×1.6 GHz Cortex-A55 CPU with Mali-G57 MP1 GPU), 1920×1200 25.65 cm diagonal screen

June 2024 Capabilities

  • Core capabilities in addition to world rendering and avatar movement, are accessed via a menu button to the top left of the app window.
  • These include:
    • Avatar: ability to change between complete outfits located in the Outfits folder
    • Chat: both nearby chat and IM (Friends (+Friends )n-line); Nearby; Group) – via overlay.
    • People: view All Friends, Friends On-line, Groups, Nearby, those Recent(ly contacted), those Blocked.
      • Includes options to view avatar profile, chat, IM, offer teleport, add / remove as friend, block, and AR.
    • Places: personal favourites, Destination Guide, Mobile showcase (DG subset).

    The Destination guide as seen in landscape view (Doogee tablet, 25.65 cm diagonal screen) and in portrait mode (16.5 cm screen on a mobile ‘phone)
  • There are also option to access the App’s settings, including:
    • General settings (draw distance (range 20m to 250m, with 20m or 100m and above not recommended); LOD (high, medium, low), Audio Steaming toggle switch, etc.).
    • Notifications settings.
    • Developer tools.
    • Feedback & bug reporting.
  • Also supported are:
    • Limited Context Menu access for avatars (e.g. to profile, to open chat, et.c) and in-world objects (e.g. to sit) – long touch over the avatar / object.
    • Receipt of Group notifications.
    • Receipt of app-specific notifications (blue dot).

What Isn’t There – Yet

  • At the time of writing the app does not support:
    • Building or object editing.
    • Inventory access and management (but see note on Outfit changing, above).
    • Use of voice.
    • Displaying on-screen HUD attachments or interactive dialogues drive by llDialog.
    • L$ transactions (or balance display) or Marketplace access.

Closing Comments

While I have been trying out the Mobile App since the public beta opened, this piece is not intended as a review, so I prefer not to give personal feedback here. I will, however, provided a more in-depth look at running the app on both a mobile phone and on a 10-in tablet device both on Android 13 in due course, as I gain more familiarity with using it.

Jade’s Red Lotus Lake in Second Life

Nong Han Kumphawapi, June 2024 – click any image for full size

Far to the north of Thailand and located within the Udon Thani province lies the lake of Nong Han Kumphawapi. According to the folklore of the region (lore which encompasses both northern Thailand and neighbouring Laos), the lake plays a pivotal role in the tragic love tale of  Phadaeng and Nang Ai, as do the flows which bloom within it (in their memory) and the wetlands within which it sits – wetlands that were designated as being of international importance in 2001, due to their biodiversity.

Nong Han Kumphawapi, June 2024

The lake is also, as of June 2024, the latest setting Jade Koltai has used as inspiration for an in-world region design. In doing so, Nong Han Kumphawapi joins Jade’s Painjin (2023) in depicting another of the physical world’s wetland areas within Second Life (see: A Red Beach in Second Life).

Covering an area of just under two square kilometres, with the surrounding wetlands covering a total of just over 4 square kilometres,  the lake is also known as Talay Bua Daeng – Red Lotus Sea or Red Lotus Lake – due to the fact that while the water is more open that the surrounding wetlands, it is home a huge array of flowers which, which in bloom, turn the lake into a carpet of pink and red.

That the plants are tropical water lilies rather than lotus plants makes no difference – the sight of the flowers blooming across the water from around late November through until around late February give it both a mystical air and mark it as a tourist attraction. The lilies serve to hide a secret of the lake: whilst it may well cover an area of almost two square kilometres, it is for the most part little more than a metre in depth.

Nong Han Kumphawapi, June 2024

As noted, both the lake and the wetland are noted for their biodiversity, sustaining as it does a variety of fish, birds and plants. Water from the area also serves part of the Udon region to the south, providing them with water for agriculture, etc. However, it is within the tale (or rather, tales, as the story takes multiple forms) of Nang Ai and Phadaeng  that the lake is best known to the peoples of northern Thailand and neighbouring Laos.

In essence the story goes that Nang Ai (and also known as Aikham), daughter of King Ek-Thita, became famed for her beauty, bringing forth suitors from far and wide; one of whom was Prince Phadaeng. Another was Prince Pangkhee (or Pangkhii to some), the son of the Grand Nâga, ruler of the deep. He was said to have been married to Nang Ai in at least one past incarnation and was determined to be so again. As neither Despite Nang Ai clearly being in love with Phadaeng, her father insists a contest is held for her hand – and neither Phadaeng nor Pangkhee  succeed in winning it. Nang Ai’s uncle does, but he’s disbarred from wedding her, leaving everyone a tad miffed. However, both Pangkhee and Phadaeng determine they will each see the princess again.

Nong Han Kumphawapi, June 2024

Being the son of a shape-shifting deity, Pangkhee turns himself into an albino squirrel for his visit. In doing so, he successfully finds himself on the menu when Nang Ai sees him and decides stewed squirrel would go down rather well for lunch. Killed by Nang Ai’s hunter, with his dying breath, Pangkhee  requests that his father avenge him and kill all who eat squirrel – and just to help sort out who this should be, turns himself into 8000 cart loads of ready-to-cook squirrel meat. This goes down very well (literally) for the townsfolk – and Nang Ai even serves the visiting Phadaeng squirrel soup.Enter the Grand Nâga and his angry horde to carry out the requested vengeance. As the killing rages, Phadaeng and Nang Ai attempt to flee on horseback, but the Grand Nâga floods the land, creating the lake and Nang Ai carelessly falls into it and drowns. Stricken with grief Phadaeng dies as well – only to bounce back as a ghost leading an army of ghosts, no also out for vengeance, this time on the Nâga’s horde, who are indeed defeated, but not before the land around the lake is flooded, forming the wetlands.

Nong Han Kumphawapi, June 2024

With her design, Jade particularly captures the flowering nature of the lake, although the setting perhaps suggesting it has been transposed to a more coastal location. The waters are shallow, the lilies in bloom, and here and there the land rises above the water. On one sits the remnants of an ancient temple, while more ruins and the remains of wood houses rise from the waters like romantic apparitions, watched over by cranes. A modern raised deck sits out over part of the water, clearly awaiting the arrival of tourists, whilst sampan-like boats float out among the lilies, just like the ones used to carry visitors over the shallow waters of the real Nong Han Kumphawapi.

Rich in bird song and setting under s sky in which a westering Sun is slowly setting, the region includes multiple places to sit and be serenaded by bird song and the gentle sounds of lapping water. Recommended.

Nong Han Kumphawapi, June 2024

SLurl Details