Bright spots for distant lights

   1496   5   1
User Avatar
Member
39 posts
Joined: Oct. 2017
Offline
I'm not very well versed in the topic of optics, but if I'm not mistaken, a reflective object lit by a parallel ray source should not have bright spots in its reflection. I feel as if something major is going over my head though, so could someone more knowledgeable of the subject explain why this torus lit by a Distant Light has an elliptical bright point? (indicated by the blue circle)

Attachments:
untitled1.png (238.1 KB)

User Avatar
Member
7740 posts
Joined: Sept. 2011
Online
It's a specular highlight. The ggx specular bsdf is used by the glass material which has non-zero roughness, so a specular highlight will be visible no matter what.
User Avatar
Member
39 posts
Joined: Oct. 2017
Offline
This is the principled shader though. Or does that not matter? Anyhow, am I a brainlet that doesn't understand optics or is there actually not supposed to be a highlight?
User Avatar
Member
7740 posts
Joined: Sept. 2011
Online
the ggx bsdf is a low level building block of the principled shader. There is definitely supposed to be a highlight when using a microfacet specular model. Even when the light source is ‘infinitely small’, parallel rays have nothing to do with it. The roughness of the surface determines the breadth of the specular highlight. In older surface models, there might be a ‘perfectly smooth’ surface model that would not feature any highlight from point/distant lights.

If you desire the old style look, you can use the classic shader instead of the principled material. The classic shader as well uses ggx by default, however it has the specular models promoted as parameters. Switch the model to “cone” or “phong” and then set the roughness to 0. This will give no specular highlights from point light sources.
User Avatar
Member
39 posts
Joined: Oct. 2017
Offline
But is it physically plausible the way it already is?
User Avatar
Member
7740 posts
Joined: Sept. 2011
Online
yes
  • Quick Links