15
votes
Path tracing the Cook-Torrance BRDF
I am posting this for anyone wondering about the confusion between the terms $\frac{1}{\pi}$ and $\frac{1}{4}$.
The term $\frac{1}{\pi}$ is an error from the original Cook-Torrance reference.
In ...
14
votes
Accepted
How to properly combine the diffuse and specular terms?
Using two Fresnel terms is correct in the sense that any given diffuse path will pass through the surface twice. If you're solving diffusion by tracing a path through the medium until it bounces out ...
14
votes
Accepted
What is the accepted method of converting shininess to roughness, and vice versa?
As you already note, there is no clear cut interpretation/conversion for these values. I think it is even much worse: Depending on your BRDF and internal limitations (like having defined exponents ...
12
votes
Accepted
Path tracing the Cook-Torrance BRDF
According to this paper, the $\frac{1}{\pi}$ in your $f_r$ should be $\frac{1}{4}$:
$$
f_r = \frac{DFG}{4(n\cdot w_i)(n \cdot w_o)},
$$
so you would end up with
$$
\frac{\pi}{2}L_i(p,w_k)\left(\frac{...
8
votes
Accepted
Should ideal specular multiply light colour with material colour?
What "ideal" means in this context is that there is no divergence in the direction of light reflection vectors (i.e. no roughness) but that they are all considered to be perfect reflections from an ...
8
votes
Accepted
Should not specular reflection on a rough surface be similar to diffuse reflection?
No, because the underlying physics is not the same, nor the lobe shape - not to speak of their parameters such as color and Fresnel term.
Specular is really true surface interaction with the ...
8
votes
How to properly combine the diffuse and specular terms?
While browsing to properly write my question, I actually found the answer, which happens to be very simple.
Another Fresnel term is also going to weight in as the photons make their way out of the ...
7
votes
What is the difference between glossy and specular reflection?
The charts you show aren't showing two different phenomena - "glossy reflection" and "specular reflection" - they're showing two parameters of specular reflection. One is the specularity or specular ...
6
votes
Accepted
How to create specular surface in Mitsuba Renderer
You want to use the "conductor" plugin to create a smooth conductor / metal type BRDF. See section 8.2.6 in the documentation.
As far as Mitsuba is concerned, a mirror is a special instance of a ...
6
votes
Accepted
Fresnel and specular colour
Yes, because refractive index can vary with wavelength. This is the origin of colored specular reflection in metals such as gold and copper; most other materials have essentially uncolored specular. ...
5
votes
Accepted
Phong: Real-time rendering of Metal and Plastic Materials
Diffuse colours on materials typically come from within the material, while the specular colour is from the very surface. Coloured plastic materials are made by embedding particles of dye inside a ...
5
votes
Accepted
How to send shadow rays to window light source with glazing
Most renderers allow you to set a flag on an object to make shadow rays ignore it (so it won't cast shadows). You could set this flag on your glazing.
That said, it's not unusual to make it so that ...
5
votes
Accepted
phong equation of illumination specular component
Assuming that the classic Phong model is desired here, the dot product that goes into the specular calculation should be R·L, rather than N·H (which was introduced by Blinn). That is, Phong calculates ...
5
votes
Should ideal specular multiply light colour with material colour?
The specular of metals is a product of the light color and the albedo of the material. Only for non-metals is the color of the specular independent of the albedo, but it's also rather dim. A perfect ...
5
votes
Should ideal specular multiply light colour with material colour?
In this context, "perfect mirror" refers to a perfectly flat surface with a 0% (pure black) diffuse color. It is still possible though to have a specular color: for example a Christmas tree ball ...
4
votes
Accepted
Normal vector in Phong Illumination Model should be normalized?
Short answer: yes.
Longer answer: yes, because the vectors you’re using are meant to represent directions, not directions-and-distances. Think of it in terms of light: it doesn’t matter how far a ...
3
votes
Accepted
How to handle specular highlights with reflection / total internal reflection in a ray tracer?
But, at this point, do i apply a specular highlight to the surface that i hit from the inside?
Unless you have a light source inside your object, there's no point in doing lighting on the inside ...
3
votes
Should ideal specular multiply light colour with material colour?
Ideal mirrors are just that, ideal. The question if or not it has color never comes to play, its ideal it reflects everything. Like division by zero it is undefined. However, that does not mean you ...
3
votes
Bug: Overly Sharp Highlights in PBR
Just to comment on the 0.16*Specular^2 term that was mentioned in the comments by Karim:
Frostbite only remaps the specularity for their internal purpose so that they can pack gemstones specularity ...
3
votes
Accepted
Trying to implement Microfacet BRDF but my result images are wrong
Problem fixed by RichieSams, trichoplax and xpicox. Thanks all of you for the answers.
I lower the roughness, change the color of material and reversed the ViewDirection then finally I start to see ...
3
votes
What is the difference between glossy and specular reflection?
Gloss and Specularity are features of the surface. In modern PBR terms we usually refer to the smoothness and metalness of a surface instead (unless you use a specular workflow, then metalness is ...
3
votes
Accepted
PBR : Understanding the right part of Split sum integration of specular IBL
1)What is the V vector? How did they compute that
It's the vector toward the camera (view vector), i.e. direction of the reflected ray. The lookup table they're building is parameterized in terms of ...
3
votes
Accepted
Does fresnel reflection make sense for metals?
I think this question is a bit tricky to answer, since I have some seemingly contradictory knowledge about your implementation. If I recall correctly, you are using Schlick approximation for the ...
2
votes
Accepted
Specular exponent spectrum
Using independent settings for each colour channel is like using settings dependent on wavelength when doing spectral rendering. So the question could be re-formulated as:
Is a material which ...
2
votes
Phong and the Rendering Equation: What's with the cosine?
The cosine term in the rendering equation is to account the amount of light reaching the surface, and leaving it out from the rendering equation is what he refers as "complete nonsense", which is ...
2
votes
Accepted
Direct illumination, specular surfaces, and MIS
Specular surfaces which use MIS are not perfectly specular like a mirror. They have a small amount of blur, otherwise there is indeed no point in sampling the light as all the samples will evaluate ...
1
vote
total internal reflection implementation in pbrt-v3
The code does seem a bit ugly since it doesn't assign pdf and instead returns 0.
By returning 0 it's basically saying the same thing as pdf = 0 because f.IsBlack() ...
1
vote
PBR and Specular Aliasing
I'll point out that even if you did implement it correctly, at 1 sample per pixel with low roughness materials you'll still see heavy specular aliasing. It's not uncommon to see the firefly pattern on ...
1
vote
Phong: Real-time rendering of Metal and Plastic Materials
https://courses.cs.washington.edu/courses/cse458/99sp/projects/help/phong_params.html
...
1
vote
Accepted
Same specular lighting on both tris in a quad (for "low-poly" "flat shading" look)?
If I understand you correctly, the problem is that the provoking vertex isn't the same vertex between the two triangles in a quad, due to using triangle strips. You could switch to using an indexed ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
specular × 36brdf × 14
raytracing × 7
rendering × 6
pathtracing × 6
pbr × 6
lighting × 5
shading × 5
reflection × 5
diffuse × 4
fresnel × 4
glsl × 2
physically-based × 2
global-illumination × 2
monte-carlo × 2
material × 2
shader × 1
c++ × 1
algorithm × 1
mesh × 1
real-time × 1
shadow × 1
importance-sampling × 1
normal-mapping × 1
opengl-es × 1