Dido’s Fade to Grey in Second Life

Nitroglobus Roof Gallery: Dido Haas – Fade to Grey

It was back to Dido Haas’s Nitroglobus Roof Gallery for me for the second of the May / June exhibitions on offer there. Fade to Grey, offered within Dido’s space at the gallery is an exhibition of Dido’s own images, all of which have been rendered as monochrome pieces, with some additionally post-processed to give the impression of drawings.

Dido is perhaps best known for her curation of Nitroglobus Roof gallery where – as I’ve oft stated in these pages – she is able to encourage artists from across Second Life to present exceptional exhibitions of their art. She is also, again as I’ve noted, a gifted photographer-artist herself. What may be less well known is that she is a blogger and Second Life traveller.

Since July 2009 I put a lot of my SL time in writing for my blog ‘Exploring SL with Dido‘, however the emphasize shifted more and more from text to images. In line with this I started to place my best blog images and more private photos in my Flickr account … Being so busy with curating the gallery, I have little time left to make images myself … But sometimes when I am in the right mood I do make images, most of them black/white. 

– Dido Haas


The eight images reflect Dido’s talent for black-and-white images and her love of exploration. They have been captured in various regions around Second Life, including Furillen, Quoted Memories and AEAEA islands. However, seven of the images are all very much studies in narrative, the focus being both Dido herself, and the embodiment of mood and emotion, while the eighth is presented as a self-portrait, finished as a drawing, an arm stretched forward as if in greeting / encouragement. All of them together offer an invitation for us to step into Dido’s Second Life and share in both her artistic view of our digital world and in her personal time in-world.

Small in size, intimate in content, Fade to Grey is a warm exhibition that can be enjoyed for itself – and for those who might like to, Dido suggests viewing the exhibition whilst listening to the most successful single released by British synth-pop group Visage, and which has the same name as the exhibition (and, as it was originally written as an instrumental piece, there’s also this version, if you prefer).

Nitroglobus Roof Gallery: Dido Haas – Fade to Grey

SLurl Details

2022 CCUG meeting week #18 summary: reflection probes

Cherishville, March 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, May 4th 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 Update

  • On Wednesday, May 4th, the de facto release viewer was updated to version, formerly the MFA RC viewer, dated April 26. See my notes on this viewer here.
  • On Thursday, May 5th, the Performance Improvements RC viewer updated to version
    • The focus for this viewer is now bug and crash fixes, rather than adding functionality.
    • This update also sees the viewer merged with the release viewer MFA code base, and so will require anyone who uses MFA and who has not logged-in to Second Life using an MFA token to do so -follow the link above for details.

The rest of the official viewers remain as:

  • Release channel cohorts:
    • Makgeolli Maintenance RC viewer (Maintenance M) viewer, version, April 26.
  • Project viewers:
    • Performance Floater project viewer, version, March 18.
    • Mesh Optimizer project viewer, version, dated January 5, issued after January 10.
    • Legacy Profiles viewer, version, dated October 26, 2020.
    • Copy / Paste viewer, version, dated December 9, 2019.

Graphics Update

  • During the previous CCUG meeting, the potential direction for Physically Based Rendering (PBR) materials support was discussed at length, and concerns were raised that for PBR to be effective, SL’s lighting / reflections model would need to be updated.
  • As a result, these branches of work have commenced:
    • The foundational work in creating a materials type with an associated inventory asset, as per the week #16 meeting. This  will initially comprise the ability to copy a texture entry (with its specific parameters) to inventory.
    • Foundational work on the PBR graphics pipe in the viewer.
    • Work on an implementation of reflection probes which can be used both with PDR shading and with legacy content. This formed the focus of this meeting.

Reflection Probes

  • Runitai Linden envisages two forms of reflection probes:
    • Those that are part of a scene’s environment and are automatically placed, but which can (hopefully) be adjustable by scene builders – this is the current focus of the work, with the reflection probes married to the octree so they will align with octree nodes.
    • Reflection probes which can be specifically placed within structures by their creators (e.g. a probe within each room of a house) or which can be created and added to a legacy structure.
      • These would override “environment reflection probes” to prevent clashes (so that, for example, your nice shiny kitchen worktop is not reflecting the sky outside, but is offering reflections of the static objects on and around it.
      • Their size would be based on the volume they are attached to, which would allow for parallax correction, allowing the reflections to be accurately generated within a room space.
“Environment reflection probes” used with legacy content: on the left, shiny surfaces of a prop engine as most of us are used to seeing them today. Right: the same engine but with its shiny surfaces now showing reflections generated via a reflection probe in the scene. Credit: Runitai Linden
  • These probes:
    • Comprise an object (prim) defined as a reflection probe which essentially uses the 360º snapshot code viewer to produce a cube map of its surroundings with each face set to 512×512 resolution (so 6 x 512×512), which can then be used to generate object “reflections” on surfaces within their volume of control.
      • This will require some additional checkboxes to be added to the build floater / viewer, but otherwise means probes can be inserted into “indoor” scenes using the existing build toolset.
    • Capture everything except avatars (so no reflections of your avatar walking past a shiny surface).
    • Initially trigger the generation of their cube maps by the viewer on entering a scene.
      • Maps are cached on disk, with up to 64 held in memory.
      • Currently only 8 maps are active at any one time. However, given sampling of just 8 maps for rendering can take up to 70% of an RTX 3080 GPU, this number is likely to be dropped to 4, unless a more targeted means of sampling for a given pixel can be determined.
    • Are updated whenever the number of objects in them changes or the Day Cycle changes, although the update rate is no more than one probe per frame.
    • Include Fresnel calculations when generating cube maps.
Glossiness and reflection probes: in this image, the centre left row of spheres have a white face, and the centre right all have black faces. Each pair, front-to-back, has a matching and increasing level of glossiness applied. Note how the greater the amount of glossiness, the sharper the reflections of the probe’s cube map. Credit: Runitai Linden. 
  • The overall aim of this work is to provide a means to support more physically accurate reflections in SL than can be currently generated (seen as a requirement for PBR support). This work can then both:
    • Be integrated into the PBR work as that is added to Second Life.
    • Improve the existing SL environment map so that legacy content does not clash with PBR content as badly as might otherwise be the case – although it will not be a perfect blending of the two.
    • However, it will be “very, very hard for this to not break [some] content”, although the overall result should improve so SL looks.
    • Given this, the capability will need a lost of assistance with testing.
  • Concern has been raised about how to limit / control the use of probes so as not to cause potential performance issues (e.g. by creators including a probe with all of their products that have a shiny / reflective surface).
    • The plan is to have every single pixel in a rendered scene covered by at least one probe via the automatic placement, so objects that are outside certainly should not need their own reflection probes.
    • Even so, it has been suggested that time is taken to produce a “best practices” guide to using reflection probes and to provide examples of bad probe set-ups.
  • It was also suggested that a flag for “do not reflect” should be provided to help control what is included in a cube map in a given setting. It was not clear if this would be possible, so the question was set aside for the next meeting.
  • General Notes:
    • This work is still in its early stages, and elements may change.
    • Several aspects of reflection generation have yet to be tackled (e.g. handling 100% transparent and 100% alpha textured surfaces).
    • The work has yet to be tied-into the existing graphics controls in the viewer so that everything works consistently and logically.
    • Some of the additional work required for generating reflections might be compensated for by optimising other elements of the shader system as this work progresses.
    • At some point this work will be available within a project viewer for testing on Aditi.

Note: while reflection probes formed the core of this meeting, this does not mean this work will be shipped ahead of the more PBR-related work. All three project branches are in their early stages, and so no decision on prioritisation among them has been taken.

PBR-Specific Work

  • The PBR graphics pipe is still being plumbed-in.
  • No work has really started with the PBR shader set.
  • The plan is still to follow the glTF specification.
    • As this embraces the PBR Metallic Roughness workflow, this will be the first to be supported.
    • If demand surfaces, LL might add Specular Glossiness as a follow-up.

Next Meeting

  • Thursday May 19th, 2022.