In my latest project, I am showcasing various models in a general scene. These models are created with different materials such as MeshPhongMaterial
, MeshStandardMaterial
, or sometimes both.
The scene is illuminated by an AmbientLight
and a DirectionalLight
that always aligns with the camera’s direction for better visibility.
To enhance the appearance of the models using MeshStandardMaterial
, I incorporated an environment map into the scene rather than directly onto the materials, which resulted in a satisfying outcome.
Initially, in version r130, the models appeared as follows (Phong material on the left, Standard material on the right): https://i.sstatic.net/X3cZG.png
However, after upgrading to r131, the rendering changed significantly: https://i.sstatic.net/Pk07g.png
This alteration was attributed to the automatic conversion of environment maps to PMREM in r131, which affected the overall lighting of the scene. While this may be technically accurate, it disrupted the visual coherence of my scene.
Upon receiving advice to eliminate ambient and directional lights due to the new reliance on environmental lighting, the results were inconclusive: https://i.sstatic.net/3ciYS.png
Removing only the ambient light yielded some improvement but did not fully solve the issue: https://i.sstatic.net/mr6Xu.png
My main concern now is whether there is a method, albeit non-physically correct, to apply an environment map solely for reflective purposes without altering the overall scene illumination?
If you wish to access the code for this particular project, please refer to the following link: https://github.com/kovacsv/Online3DViewer/blob/dev/sandbox/three_envmap_issue/three_viewer.html
For a live demonstration of the scene, click here: