Jump to content

Stuff I learned about PBR

Recommended Posts

Posted (edited)

All of this may be totally wrong.

- Contrary to rumors, PBR works well and can look fantastic.


-- On a new object, you need to take two steps: texture it in old (phong) world first, then add the PBR materials.

The PBR is a replacement layer that *replaces* the old world texturing *if the PBR is defined*.

"It's gray" happens if you skip the first step. A PBR material doesn't get down sampled into a phong material.


-- The PBR "material" well and the companion Save button in that dialog are your friends.

The Save button makes a material from the entire set of PBR textures and values.

Use it early and often. Build up your material toolbox with a single click.

A thing I do often: Tweeze a material, then "Save" it to inventory, click the material well

and in the dialog, select "None" (that surface appearance now falls back to phong texture), select

the material well again, and load that material that you just saved. Else, you may see a

phantom material re-appear after editing and your changes gone. Maybe that's only me, or some bug I hit.


- PBR alpha and glow are separate and distinct from phong alpha and glow (mostly).

Setting Transparency and Glow and nothing happens to your PBR'ed thing? That's why.

Use the Emissive texture in PBR to get things to glow.


- Full Bright is also different and separate in PBR, but is an affront to humanity and should never be used.

On the sort of plus side, full bright/Emissive can be defined with a texture now, and PBR glow only glows (mostly) against that Emissive texture.

(and that Emissive texture can be manipulated separately with a script! All four PBR textures can do that. New!! Yay!!!)


- Second Life light is NOT REAL LIGHT! Throwing up a bunch of lights blows out the subtle benefits of PBR.

Things can only get as bright as (1.0,1.0,1.0) full white. The lighting and shadow simulation only works if "light" has some place to go.

Dim your stuff down. Reserve about 20% of the top brightness to give light something to make brighter. Helps with shadows too.


- Avoid editing a material on an object with a running script, especially ones that are modifying surface appearance.

Weird persistence/caching bug things happen often when I don't. Return of the Zombie Material.

Maybe I'm using llSetLinkPrimitiveParamsFast() too aggressively?

Stop the scripts, edit appearance, then restart. Save yourself some grief.


- Not PBR, but while I'm on the topic of editing...

Something I still mess up after 20 years here: Don't edit scripts in live objects.

Delete the old script from the object, edit a fresh copy out of inventory, and then drop it on the object to test.

Unlike other programming platforms, in SL the one copy of your code can fly away, never to be seen again. Poof. Gone. Not returned.

It still bites me from time to time. 


- To get good shiny fun, use reflection probes, but use them in a fixed location, not attached to an object or avatar.

Rectangular reflection probes have a direction, with (6 sides with 4 orientations) 23 of them "wrong".

"Wrong" will give you Inception levels of fake reflection upside-down-backwards-ness. You may like that.

But knock it off with all the mirrors. Yeah, they sort of work ok, but you're killing fps. Try it, be impressed and disappointed, then move on.


- And again, Second Life light is NOT REAL LIGHT, is NOT RAYTRACING, and is NOT a physics simulation.

PBR is a parlor trick that's all about fake lighting dynamics. Showing restraint on light and texture brightness gives the best results.
Test against several different skies. You may be surprised at how the PBR shader interacts with various sky lighting.

Use Beacons and show "Bounding boxes for lights" to see how far you're casting light.  Turn down "radius" to adjust it to spread only as far as needed.

Two lights (usually) won't make things twice as bright, and full bright isn't bright and doesn't "emit" any light into the scene. Avoid except for special cases.

(Please deliver us from rooms where the walls, floor, and ceiling are set to full bright)

For better control, avoid using point lights and instead, drop a white circle on black gobo texture in the projector well to make a spotlight.

You'll get less spillover, more control, and PBR shader underneath knows about those lights and responds well to them.

-- that's it.

Edited by Lumpy Tapioca
  • Like 1
  • Thanks 4
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in

Sign In Now

  • Create New...