<p>When you multiply colors together the surface color acts as a filter. Remember that colors are scaled from 0 to 1.</p>

<p>That way with white incoming light a green object will remain looking green.</p>

<p>This does bring a few issues because physical light isn't as orthogonal (where the 3 primary colors are actually overlapping frequency response functions) but for the vast majority of cases you can tweak the values enough for it to stay looking realistic.</p>

CC BY-SA 4.0
2019-10-03T05:18:34.670Z
You might want to add that the problems are not a major concern as a) phong isnt really well motivated from a measurement perspective b) If you need to account for real light then RGB is an approximation anyway.
joojaa
CC BY-SA 4.0
2019-10-02T08:52:19.420Z
2019-10-02T10:20:59.457Z
2019-10-02T10:20:59.457Z
ratchet freak
<p>In <a href="https://en.wikipedia.org/wiki/Phong_shading" rel="nofollow noreferrer">Phong shading</a> model (and other shading models as well), the light color is multiplied together with the surface color component-wise. I want to know the justification for this. Is this some what related to the physics of light?</p>

CC BY-SA 4.0
2019-10-02T00:35:58.350Z
As noted in that wikipedia article, the term "Phong shading" refers *specifically* to interpolating normals across a surface and using them in lighting computations. There is no multiplying of colors in "Phong shading"; that would be a part of ["Phong lighting."](https://en.wikipedia.org/wiki/Phong_reflection_model)
Nicol Bolas
CC BY-SA 4.0
2019-10-02T02:30:01.820Z
Multiplying the material colour by the light is an approximation of light absorption
PaulHK
CC BY-SA 4.0
2019-10-02T07:27:22.213Z
It is, consider the rendering equation: $$L_o = L_e + \int_{\Omega}fL_i\cos\theta\,d\omega$$
For Phong $f= k_d + k_s\frac{\cos\theta_r}{\cos\theta}$.
lightxbulb
<shading>
What's the justification of multiplying colors together?
Rui Liu
# What's the justification of multiplying colors together?

(Asked by: username_0 on 2019-10-01)

In [Phong shading](https://en.wikipedia.org/wiki/Phong_shading) model (and other shading models as well), the light color is multiplied together with the surface color component-wise. I want to know the justification for this. Is this some what related to the physics of light?

**Tags:** shading

> **Comments:**
> **username_1**: As noted in that wikipedia article, the term "Phong shading" refers *specifically* to interpolating normals across a surface and using them in lighting computations. There is no multiplying of colors in "Phong shading"; that would be a part of ["Phong lighting."](https://en.wikipedia.org/wiki/Phong_reflection_model)  
> **username_2**: Multiplying the material colour by the light is an approximation of light absorption  
> **username_3**: It is, consider the rendering equation: $$L_o = L_e + \int_{\Omega}fL_i\cos\theta\,d\omega$$ For Phong $f= k_d + k_s\frac{\cos\theta_r}{\cos\theta}$.  

---

## 1 answers

### Answer by username_4 on 2019-10-02. Score: 7

When you multiply colors together the surface color acts as a filter. Remember that colors are scaled from 0 to 1.

That way with white incoming light a green object will remain looking green.

This does bring a few issues because physical light isn't as orthogonal (where the 3 primary colors are actually overlapping frequency response functions) but for the vast majority of cases you can tweak the values enough for it to stay looking realistic.

> **Comments:**
> **username_5**: You might want to add that the problems are not a major concern as a) phong isnt really well motivated from a measurement perspective b) If you need to account for real light then RGB is an approximation anyway.  

---

