Jump to content

Mirrors!


You are about to reply to a thread that has been inactive for 80 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

We have mirrors now!

mirror_001.thumb.png.a4bb5fd6e4a4becaa925738f5d3448f1.png

Well, sort of. Someone set this up this demo at Materials1 on Aditi. 

After a few seconds, the reflection probe system updates the scene and you get a low-rez mirror. If you get too close, you don't get reflected, though. The pink pedestal and shiny model never appear in the mirror. It's not really for mirrors. It's to improve indoor ambience.

  • Like 3
  • Thanks 4
Link to comment
Share on other sites

12 hours ago, animats said:

If you get too close, you don't get reflected, though.

Seems a bit odd and backwards, but I don't know much about the technical details of how it works.

I guess that explains why the mirror's own shadow isn't reflected though.

  • Like 2
Link to comment
Share on other sites

More shinyness.

shinybike.thumb.jpg.58a500d0cecbcc1570373ea7977200e5.jpg

Chroming one of my bikes at Materials1. This is a nice effect if you don't overdo it. Now I need to add a light layer of road dirt.

shinybike2.thumb.jpg.99520995714716be0583f02f8e79bf03.jpg

Silly environment, but it's reflected properly. They're low-rez slow mirrors, but they are mirrors.

Most SL vehicles are going to need a refresh. Too bad we don't have the glTF clear-coat layer so we could have modern paint jobs.

This chrome material has no textures. Here's the actual glTF file I wrote:

{
  "materials" : [
    {
      "pbrMetallicRoughness": {
        "baseColorFactor": [ 1.000, 1.0, 1.0, 1.0 ],
        "metallicFactor": 0.9,
        "roughnessFactor": 0.05
      }
    }
  ],
  "asset" : {
    "version" : "2.0"
  }
}

That's the minimum glTF for an SL material. There's no base color, so the base color from the texture, if any, will be applied.

There probably should be some standard no-texture PBR materials in SL's LIbrary. You don't need many, because you can apply a color, diffuse texture, and normals to that PBR material. If the PBR material doesn't have those, the old ones are used. A standard set of simple materials like this - chrome, painted metal, brick, concrete, stone, etc.-  would cover many use cases. That would improve performance, too, because each PBR material is an extra HTTP fetch. Legacy materials are loaded in bulk when you enter a region.

This is all cute, but the thing we really need is subsurface scattering. That's what makes skin look like skin. It's the effect that when light hits your skin, a little bit of reddish light comes out nearby. It's subtle, but humans seem to be evolved to unconsciously recognize that as "alive".

Without that, the choices for skin are along the axis that runs from 'dead" to "plastic". I sometimes wonder if the tendency to overdo tattoos and fur in SL is compensation for the bad skin rendering.

 

 

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

PBR needs to be driven by people with more artistic talent than me. It's easy to get tacky effects, and hard to get subtle ones.

goldescalator.thumb.jpg.54fd8c86a89547418c25c9f77c423386.jpg

Now we can do the tacky goldish escalator from Trump Tower. This is "tarnished copper" base color plus "chrome" material.

The real world one is even shinier and tackier, but at some point you have to not turn the sliders up to 11.

Haven't been able to get a good brushed stainless steel look yet, though. That's more subtle, and harder.

 

  • Like 3
Link to comment
Share on other sites

On 7/2/2023 at 6:16 AM, animats said:

After a few seconds, the reflection probe system updates the scene and you get a low-rez mirror. If you get too close, you don't get reflected, though.

I imagine there will be some people upset by not having their expectations met. From what I recall of earlier discussion here on the forum (and especially in-world), many are expecting a high-quality "live" reflection.

15 hours ago, Love Zhaoying said:

Are they "True Mirrors"?

Do your "left and right" match in the mirror / opposite, or match your reflection?

If you look at the mirror and raise your left hand, the same side of the mirror will raise its hand. (Your left, reflection's right.) You can tell if you really squint at Animats' hands in the first picture.

Edited by Wulfie Reanimator
  • Like 1
Link to comment
Share on other sites

6 hours ago, Wulfie Reanimator said:

I imagine there will be some people upset by not having their expectations met. From what I recall of earlier discussion here on the forum (and especially in-world), many are expecting a high-quality "live" reflection.

I'm already tasting the fat laughters I'll have, when there will be someone crying because their attachments won't reflect accurately where they are located when sticking a foot in another room, holding one hand out of the window, the other near the oven and their head inside the freezer 🤣

Edited by OptimoMaximo
  • Like 1
Link to comment
Share on other sites

2 hours ago, SarahKB7 Koskinen said:

Firestorm devs were testing mirrors as long ago as 2014 in the Mauve sandbox.  These mirrors already had avatar reflection too.

That's a significantly more expensive implementation, though. For each mirror, a new camera is used to re-render the whole world again (with even more stuff than usual, since objects behind the camera are generally not kept in memory). That example breaks on non-flat mirror surfaces.

The implementation we have now is basically server-side reflections, with only a fraction of the performance cost, and works for any shape of object.

Edited by Wulfie Reanimator
  • Like 1
Link to comment
Share on other sites

  • 6 months later...
You are about to reply to a thread that has been inactive for 80 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...