Is renderer.toneMappingExposure the correct way to adjust the exposure of a scene environment map or use envMapIntensity on each material?
If using toneMappingExposure is ok, this value affects the brightness of MeshBasicMaterials where normal lights don’t. Is it possible to increase the exposure of a scene environment map for lit objects while leaving unlit objects unaffected?
You can set Material.toneMapped to
false in order to exclude the material from tone mapping.
Thanks, that might work best and is easier than adjusting the environment map intensity on each lit material and making sure they have the same value.
Is there a way to adjust the intensity of an environment map texture itself? It would be easier to adjust the intensity on a single map than set the intensity on the materials.
When maps are used as light sources, having an intensity value on the texture map (or Scene object it’s attached to) would be useful, especially if the intensity is to be animated. Perhaps there could be an image-based light object to make it easier to scale/rotate the map.
In 3D software, sometimes a sky dome is made from a large sphere/cube with a texture set to emissive for illumination and the emissive property adjusted. Is this possible in ThreeJS, would it need a custom shader?
For PBR materials (
MeshPhysicalMaterial) there is .envMapIntensity which can be used to modulate the influence of the environment map. It’s not possible to configure the intensity on texture level.
You can apply an envmap to Scene.background to create a skybox. If you apply the env map to Scene.environment, it is automatically used as the environment map for all physical materials in the scene (assumed the material’s envmap is not set).
Scene.environment is still a new feature and it might be extended in the future.
would be nice to have a way to set the .envMapIntensity
global for all PBR materials if the Scene.environment is set