#Environment reflections without effecting lighting?

15 messages · Page 1 of 1 (latest)

sacred vessel
#

Hey, so I'm using sky js to generate a skybox but this doesn't show up in reflections. so I do this:

const pmremGenerator = new THREE.PMREMGenerator(renderer);
scene.environment = pmremGenerator.fromScene( sky ).texture;

And great! The reflections work. BUT it totally throws off the lighting in the scene as the environment is considered light emitting. Is there any way to turn this off? I've tried using scene.background instead here but then the reflections go back to black.

opal pasture
#

You might be thinking of decreasing your environments intensity, rather than making it "not emissive"

#

Your environment maps interaction will vary depending on which materials you use.

sacred vessel
sacred vessel
opal pasture
#

I linked the relevant material documentation earlier. It also depends on exactly which material you're using.

sacred vessel
#

right yeah I didn't think I could adjust it on the .environment, would be nice though. Doing it on every material would be a bit of a pain, as there are dyamically created materials etc etc.

Thanks though 🙂

fast atlas
#

Would it work here to do something like this?

renderer.toneMapping = THREE.LinearToneMapping;
renderer.toneMappingExposure = 0.5;
#

what you're describing isn't really physically plausible, and won't be a setting in a PBR model (conservation of energy and all that), but there's probably some way to fudge the shaders to reduce the diffuse contribution of the IBL if you want to hack that maybe.

warm pond
sacred vessel
warm pond
#

It is indeed, but it was the only way of having reflections without affecting lighting 🙂