SL project updates 46/3: TPV Developer meeting

The Silent Mind; Inara Pey, October 2017, on Flickr The Silent Mindblog post

The following notes are taken from the TPV Developer meeting held on Friday, November 17th 2017. The video of that meeting is embedded at the end of this update, my thanks as always to North for recording and providing it.

SL Viewer

[0:50-2:22] The Alex Ivy 64-bit RC viewer, version, has been holding up “really well” in its release cohort, although there is a start-up / benchmark crash the Lab has had difficulty reproducing, but for which they now believe they can fix in the next update, which should appear after the US Thanksgiving break (Thursday November 23rd – Sunday November 26th, 2017). If the crash is shown to be fixed, then the viewer should hopefully be in a position to move to release status in December.

[2:25-2:43] Vixox is still working on a race condition in the Voice RC viewer, version at the time of writing, and the Lab is hoping for an update on that either in parallel with or shortly after the Alex Ivy update.

[2:46-2:59] The current “Martini” Maintenance RC viewer  updated to version on Friday, November 17th.

[3:00-3:28] An update to the 360 snapshot project viewer, version at the time of writing, is in progress, which should greatly improve image quality. If possible, this update might appear ahead of the US Thanksgiving break.

Rendering Project Viewer

[5:15-5:52] A new project viewer – Project Render, version, dated November 14th, 2017, is available for Windows (32-bit and 64-bit) and Mac OS X. This viewer includes several fixes to the Rendering pipeline, and comes with a request that all issues are reported via JIRA.

The viewer is now built from the Alex Ivy (64-bit) branch (hence no Linux version), and all known issues for the Alex Ivy Viewer apply to it. It is intended to provide  / address:

  • Improvement to mesh LOD calculation (account for CTRL+0).
  • Agents that render as jelly dolls should have their attachments render at 0 LoD to prevent loading higher LoD complexity in memory thus deterring crashes -> debug setting RenderAutoMuteByteLimit has to be > default of 0 for this feature.
  • Bug: Mesh avatar deforms constantly – was due to bounding box / LOD swaps.
  • Bug: Some mesh turned invisible when camera is moved – was caused by fix for MAINT-6125.
  • Bug: Setting one avatar to “Do not render” causes all avatars to become impostors.

Viewer Development Focus

Linux Viewer

[3:32-4:52 and 15:28-15:46] Currently, the Lab is aiming to get 32-bit and 64-bit Windows builds on the current viewers, together with 64-bit only Mac builds.

Once this has been done, the Lab will try again to get a 64-bit Linux build of the viewer, with the overall goal being to change the Linux build over to a Debian package without the additional libraries, allowing TPVs to add the dependencies they require for their flavour of Linux build.  However, the Lab will be looking for help from TPVs and open-source developers in getting this done.

If help is given and the project is successful, the Lab will then maintain the Linux build, with the caveat that it will only be subject to cursory QA, and will continue to look to the Linux community for fixes.

General Focus

[10:10-14:35] In general, the Lab will be focusing more on current hardware (see resource usage tools, below) and operating systems over older / outdated hardware and operating system flavours. So for Windows, for example, while the Lab is not dropping support for 32-bit systems, the recommendation is that those who can upgrade to support Windows 64-bit (and particularly Windows 10 64-bit) should do so. If nothing else, this should substantially reduce viewer crash rates, particularly when used 64-bit versions of the viewer (e.g. fewer out-of-memory crashes).

Resource Usage tools

Note the following elements are discussed between 6:16-10:08 and then from 19:52-49:10.

VRAM and Texture Information

Chalice Yao has proposed a feature to the Firestorm team to allow users better understand the resources they are using, both through their avatar’s VRAM usage and the VRAM (triangles and vertices) for any selected object (see FIRE-21793).

Demonstration images (via FIRE-21793 / Arcane Portal) showing the proposed texture VRAM resource usage information on both a full avatar on the left and a specific attachment (Catwa head), on the right

Textures are a significant issue because of the widespread use of 1024×1024 textures on multiple faces of items at 4 MB a texture, whether needed or not (do buttons on a jacket really need 102×1024 textures?). This can lead to avatars using VRAM in the gigabyte ranges – simply because there is no incentive in place for creators to optimise their use of textures. so, offering a means by which users can see and understand their resource usage might encourage creators to start thinking in terms of optimising their use of the textures.

Overall, Oz is in favour of the idea, noting that it could be a good fit with the Lab’s own work in trying to make the render cost calculations for avatars and objects more accurate (allowing for the variances in handling information inherent within different types of graphics cards with different capabilities one to another).  In addition, the Lab has been working on an experimental viewer which radically re-organises the texture cache to make it simpler, but this has yet to work (this includes the previously mentioned idea of storing textures already decoded).

The discussion (a fair part of which is in text) also covers the upcoming Bakes on Mesh work (see my CCUG meeting notes), the benefits of supplying users with pertinent information vs. the problems of witch-hunts, providing the means for people to be better educated and to make more informed decisions, how any additional information should be displayed etc.

Hide All Objects Outside of A Parcel

BUG-5671 outlines another idea related to data handling / viewer resource usage: offering parcel owners a setting that  would effectively prevent the simulator from downloading information about objects outside of their own parcel. This would reduce simulator load, bandwidth use and mean the viewer doesn’t have to manage object data and rendering for items the parcel owner doesn’t want to see when with their parcel (although it also means their view would be reduced to looked out over “empty” land).

The feature request has been accepted by the Lab – but when or how it, or something like it, may be implemented – if it is implemented at all – has yet to be considered.

BUG-5671 another demonstration of the important difference between a JIRA being Accepted compared with being implemented. JIRAs can be Accepted for a number of reasons, but does not automatically mean it will be implemented. Reasons JIRAs might be Accepted include: it explain an issue the Lab may want to address at some point; or because it might offer a means to resolve part of a larger issue or group of issues the Lab might want to address, again at some point in the future.


Mixed with the above discussions (again in text) is a debate on RendeVolumeLODFactor settings, with some viewers (e.g. Firestorm) defaulting to higher values than the official viewer, and the impact this may (or may not have) on content creators.

Certainly, high-end LOD settings are detrimental to viewer performance, but whether enforcing a lower LOD setting would encourage content creators to optimise their designs is questionable: “recommendations” for very high LOD settings (often much higher than the defaults used by any viewer) have been a factor in content creation for a very long time, with some creators even foregoing the use of lower LOD models (so it because an “all or nothing ” approach). As such, a more effective means of preventing this might be to penalise creators who fail to provide proper medium and low LOD versions of their creations, something the Lab is considering.

This conversation (largely in text) continues on to alpha blending / masking, etc.

Continue reading “SL project updates 46/3: TPV Developer meeting”

A vision of Greenland in Second Life

Groenland Kangamiut; Inara Pey, November 2017, on Flickr Groenland Kangamiut – click any image for full size

Designed under the It All Starts With A Smile (IASWAS) banner, Groenland Kangamiut is a new region design by Kaelyn Alecto (TheNewKae). It is based on the physical world township of Kangamiut, located on a small island off the west coat of Greenland in the Davis Strait connecting Baffin Bay with the Labrador Strait.

“With its typical colourful houses, fishing harbour, ice landscapes, frosted atmosphere and the sound of the bitter wind,” Kaelyn says of the design, “We tried to be original and as realistic as possible, while keeping a small part of fantasy of course. Have fun!”

Groenland Kangamiut; Inara Pey, November 2017, on Flickr Groenland Kangamiut

The village sits nestled in the arms of an inlet, almost fjord-like in its deep cut, a single channel of water pointing the way to the open sea – presumably the Davis Strait – to the west. The shops and houses rise up the lower slopes of the inlet in brightly painted tiers, crowned by a red-painted chapel. To the north, the valley wind onwards, its floor lifting above sea-level, snow-covered slopes caught between high shoulders of rock, disappearing in the distance.

The west side of the village is split between a busy group of wharves, warehouses and shops, bordered on either side by houses built out on slits over the water on either side, their large decks suggesting they might be summer holiday homes. On the north side, these give way to the spur line of a railway overlooking the frigid waters, a locomotive just emerging from a tunnel burrowing under the high cliffs behind the village.

Groenland Kangamiut; Inara Pey, November 2017, on Flickr Groenland Kangamiut

Visitors arrive in what might be referred to as the village square – a cobbled surface in which sits a fountain. Snow swirls around the bricks of the pavement and between the painted houses on either side, as several routes of through the village offer themselves for exploration.  To the north, the cobbled pavement lead to the busy waterfront. From here, where wooden walkways and stone steps climb the hill to the next level of the village, while a board walk runs along the northern shore to the little railway station.

Closer to the fountain, steps offer a short cut up to where a brick-paved footpath winds up through the houses, eventually reaching the little church up on its high look-out point. South of the landing point, meanwhile, the pavement gives way to a wooded trail. Snow-covered and winding through frosted firs trees to where a camp site looks out over cold, blue-grey waters to a cosy house sitting along on a rocky islets. A red barn-style bridge crosses a narrow stretch of water close by, a further trail on the far bank winding up the hill in an alternate route to the church.

Groenland Kangamiut; Inara Pey, November 2017, on Flickr Groenland Kangamiut

This south path also offers one of the regions little quirks. While wolves reindeer and a polar bear  – all common enough to the northern hemisphere – can be seen among the trees and out in the snow; this side of the region also has a little group of penguins sitting on an ice flow, an emperor penguin and her young watching them from the shore. Given their far more southern origins, the presences of these penguins might seem odd, but they are in keeping with the fantasy twists found in IASWAS designs. Equally, their appearance on the southern side of the region seems to be a subtle nod and wink to their more usual domain being the southern latitudes.

What I particularly like about Groenland Kangamiut is the way the east side of the region has been blended with the region surround, rather than leaving a watery gap between region and scenery. For me, blending region and backdrop in this was adds a level of depth to a design, by making them equal partners in a scene, rather than separate entities. This really gives the feel that the village is sitting on the edge of a rugged island, and thus a natural part of a greater whole.

Groenland Kangamiut; Inara Pey, November 2017, on Flickr Groenland Kangamiut

Featured in the November 17th edition of the Destination Guide highlights,Groenland Kangamiut is a beautiful setting, and one well worth visiting.

SLurl Details