AmbientColor light is darker than previous Threejs versions

Hey, I just realized that using an AmbientLight with the color #ffffff is not making a full white color on Materials usings lights anymore (Lambert, Phong, Standard etc…) now we have a grey.

Here is the code used for that: (let’s say I have a scene with a renderer)

    const geometry = new SphereGeometry(1, 32, 32)
    const material = new MeshLambertMaterial({ color: new Color(0xffffff) })

    const mesh = new Mesh(geometry, material)
    this.#scene.add(mesh)

    const light = new AmbientLight(0xffffff)
    this.#scene.add(light)

in Threejs v.149

in Threejs v.157.

Is this on purpose? I guess just increasing the intensity of the ambient light should do the trick but I was just wandering why this change, thanks!

fyi, changing the ambient light intensity to 3 seems to get the same result as before.

Actually, intensity=Math.PI will give the same result as before.
That’s just a little bit higher than 3

new THREE.AmbientLight(0xffffff, Math.PI)

Three r155 was updated to provide a single lighting mode that supports physically correct lighting.

See : Updates to lighting in three.js r155

1 Like

Oh I see so it’s based on Math.PI value now, thank you for clarifying!