2
votes

I'm currently implementing the new MeshStandardMaterial in ViziCities and I've managed to get things looking great, so long as I remove the AmbientLight from the scene.

In the scene is a base layer which has a texture map and has metalness set to 0 and roughness set to 1.

enter image description here

If I leave the AmbientLight in the scene then the mesh that I want to reflect the environment map is not only far too bright, it doesn't reflect anything at all.

enter image description here

The only way I've been able to keep the AmbientLight in the scene and have things look ok is to bump up the metalness value to nearer 1, which results in far too much reflection on the base layer.

How can I use MeshStandardMaterial with an AmbientLight or a HemisphereLight (to add a little extra ambient colour to the scene) and not have it blow out the lighting when the environment map is dark?

It's entirely possible that I'm misunderstanding how ambient lighting works, so would appreciate direction on that too :)

Thanks for the help!

Can you use the most recent version of three.js and provide a live link of a simple example to demonstrate your issue?WestLangley
Actually, see github.com/mrdoob/three.js/pull/8201 for a simple testbed from the dev branch. : - )WestLangley