Skip to main content
2 of 4
added 103 characters in body
Theraot
  • 28.2k
  • 4
  • 55
  • 83

First of all,

the angle of the incident light is the same for every point

The angle between the incident light and the normal is different. Even if the incident light comes form the same direction※, the normal is different for each point of the surface of the object.

※: In reality this would be an approximation admisible for a light source very far away. For computer graphics, we are talking about a directional light source instead of a spot or cone light source.


But when I change the camera position (but object position and light source position remain as it is) the specular portion becomes diffuse and vice versa in the image of that object.

I believe we have gone over the fact that the position of the specular highlights depends on the position of the camera, the object and the light source. Thus, moving the camera is sufficient to move the specular highlights. The last paragraphs of a prior answer are about that.


But we know that diffuse reflection is independent of camera ( only depends on normal and direction of incident light).

Right. What we are trying to model with diffuse reflection is light being scattered in every direction. This is why it is independent of the direction of the camera.

You get specular and diffuse reflections on every point.

The specular reflection is negligible everywhere except on the specular highlight. I mean, the specular reflection decays away from the specular highlight until it is virtually zero.

In consequence where you see an specular highlight, the specular reflection is much more intense than the diffuse reflection, so we do not perceive the diffuse reflection.


While the way specular reflection decays attempts to model roughness. The diffuse reflection attempts to model scattering.

I quote form Wikipedia's article on Diffuse reflection:

Diffuse reflection from solids is generally not due to surface roughness. A flat surface is indeed required to give specular reflection, but it does not prevent diffuse reflection.

A light ray travelling from one medium to another scattering inside the object

A light ray travelling from one medium to another scattering inside the object. This picture is taken from the article THE PBR GUIDE BY ALLEGORITHMIC - PART 1.

So, some of the light gets refracted and scattered back out the surface. And the distribution of the direction and intensity of that light is close to uniform. So we model it as being the same from every direction.


  1. When we see diffuse and specular reflection is happening on one single object then the definition of diffuse reflection isn't going to work but when only diffuse reflection is happening on one single object then definition of diffuse reflection has properly worked.

The specular reflection, diffuse reflection (and ambient and any other components according to the lighting model) contribute to the final shading of every pixel.

But away from the specular highlight, the contribution of the specular reflection is negligible. Leaving only the contribution of the diffuse reflection (and ambient reflections or any other component according to the lighting model) noticiable.

On the other hand, on the specular highlight, the specular reflection is very intense. As a consequence we do not notice the contributions of the diffuse reflection (and ambient reflection and so on).

That is, the definition of diffuse reflection holds. But it does not account for how its contributions is combined with the others.


  1. When we see diffuse and specular reflection is happening on one single object then diffuse reflection is also dependent of camera like specular reflection.Then when the angle between viewing direction (camera) and reflection is increasing then specular portion gradually converging to diffuse.

The final result of combining the reflection is dependent on the camera. Because the specular reflection is dependent on the camera. But the diffuse reflection, considered on its own, isn't dependent on the camera.

Theraot
  • 28.2k
  • 4
  • 55
  • 83