Hot answers tagged

68 votes
Accepted

What is Importance Sampling?

Short answer: Importance sampling is a method to reduce variance in Monte Carlo Integration by choosing an estimator close to the shape of the actual function. PDF is an abbreviation for Probability ...
RichieSams's user avatar
  • 3,732
15 votes
Accepted

Why isn't a BRDF a ratio of radiances?

There are a couple of ways to answer this question: an algebraic way and a geometric way. Algebraically, we can identify the units that the BRDF must have by looking at its place in the rendering ...
Nathan Reed's user avatar
15 votes

Rendering equation - why unsolvable directly?

I'm sadly not able to add a comment to the answer above (not enough reputation), so I will do it like this. I'd like to point out that what Dragonseel describes is simply an integral equation (...
Vanbus's user avatar
  • 304
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 ...
Samu's user avatar
  • 546
15 votes

What is the difference between radiance and irradiance in BRDF

First of all, irradiance at a certain point of a surface is the density of radiant flux (power) per unit of surface area, while radiance at a certain point of a surface in a certain direction is the ...
ivokabel's user avatar
  • 1,454
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 ...
Karl Schmidt's user avatar
14 votes

What is the difference between radiance and irradiance in BRDF

It is helpful if you always look at the units that a certain physical quantity measures. Since you use Real-Time Rendering, I'll also quote from that (3rd edition). Also, for the sake of completeness, ...
Tare's user avatar
  • 1,541
13 votes

Rendering equation - why unsolvable directly?

The rendering equation is as follows: Now, the integral is over the sphere around the point $x$. You integrate over some attenuated light, incoming from every direction. But how much light comes in? ...
Dragonseel's user avatar
  • 1,810
12 votes
Accepted

Why normalise Lambertian BRDF by 1/pi?

I think I got it! Because $cos(\theta)$ integrates to $\pi$ over the hemisphere (and not $2\pi$). And the incoming light is multiplied by $cos(\theta)$ (and the BRDF).
Supernormal's user avatar
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{...
wolle's user avatar
  • 302
12 votes

What is Importance Sampling?

If you have a 1D function $f(x)$ and you want to integrate this function from say 0 to 1, one way to perform this integration is by taking N random samples in range [0, 1], evaluate $f(x)$ for each ...
JarkkoL's user avatar
  • 3,626
10 votes
Accepted

In a physically based BRDF, what vector should be used to compute the Fresnel coefficient?

In Schlick's 1994 paper, "An Inexpensive Model for Physically-Based Rendering", where they derive the approximation, the formula is: $$F_{\lambda}(u) = f_{\lambda} + (1 - f_{\lambda})(1 - u)^...
RichieSams's user avatar
  • 3,732
9 votes
Accepted

Reasons of the assumptions for the microfacet distribution function?

It's a geometric assumption like the other two. Consider a flat macrosurface. Its projected area in any direction $v$ is just $v\dot\ \hat N$ times its area (where $\hat N$ is the surface normal). In ...
Dan Hulme's user avatar
  • 6,770
9 votes
Accepted

BRDF and Spherical coordinate in ray tracing

The polar coordinate system commonly used in BRDF definitions is set up relative to the surface being shaded, i.e. in tangent space. The $\theta$ angle measures how far you are from the surface normal ...
Nathan Reed's user avatar
9 votes

Why does the 1/r² term appear with point sources?

The concept of a point source is an approximation. Physically, light sources are extended objects and emit light from every point on their surface; but when you're far enough away (i.e. the distance ...
Nathan Reed's user avatar
9 votes
Accepted

What does "Bidirectional" in BRDF mean?

In general the two directions in BxDF are incoming $\omega_i$ and outgoing $\omega_o$ radiance directions, often defined in spherical coordinates $[\theta, \phi]$ or as a 3D unit vector in Cartesian ...
JarkkoL's user avatar
  • 3,626
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 ...
Julien Guertault's user avatar
8 votes
Accepted

Compensation for energy loss in single-scattering microfacet BSDF models

To my knowledge, there is no easy and analytic way of recovering the energy lost in single-scattering models. The previous techniques precompute the energy loss and reinject it in the BRDF as a ...
Eric Heitz's user avatar
8 votes
Accepted

Choosing Reflection or Refraction in Path Tracing

TL;DR Yes, you can do it like that, you just have to divide the result by the probability of choosing the direction. Full Answer The topic of sampling in path tracers allowing materials with both ...
ivokabel's user avatar
  • 1,454
8 votes

In a physically based BRDF, what vector should be used to compute the Fresnel coefficient?

The Fresnel coefficient should be evaluated using $H$, not $N$. You wrote, I have trouble seeing why we can still use that formula in a BRDF, which is supposed to approximate the integral over all ...
Nathan Reed's user avatar
8 votes
Accepted

Why is the half vector not used in diffuse BRDF Fresnel calculations?

I finally figured out a flaw in my argumentation to use the half vector for the diffuse part. tl;dr version: $\alpha_{hi}$ and $\alpha_{ho}$ are not equal, this assumption only works for the specular ...
Tare's user avatar
  • 1,541
7 votes
Accepted

Correct form of the GGX geometry term

TL;DR: Your $G1$ formula is wrong. Just to avoid confusion, I am assuming the isotropic version of the BRDF, the Smith microfacet model (as opposed to the V-cavity model), and the GGX microfacet ...
ivokabel's user avatar
  • 1,454
7 votes
Accepted

Volume Rendering (Path Tracing & Real-Time)

Ray marching is a ray tracing method where you take multiple steps along a ray to find intersection with geometry or to perform integration of in-scattered light from participating media (fog, clouds, ...
JarkkoL's user avatar
  • 3,626
7 votes
Accepted

Refraction in a Ray Tracer: What do with an intersection within the medium?

this is an interesting question (and I am actually an author on Scratchapixel so I can maybe help on that one)). Things go as follows: you cast the primary ray into the scene the ray hits the glass ...
user18490's user avatar
  • 656
7 votes

Dealing with blown-out highlights in PBR

Using physically based BRDFs only makes sense if your entire pipeline is built for physical units - the extreme range of values can't be displayed properly without some form of tone mapping. You didn'...
Stefan Werner's user avatar
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 ...
Dan Hulme's user avatar
  • 6,770
7 votes
Accepted

Where does the cosine factor comes from in the GGX PDF?

Normal distribution functions are defined a bit differently than you might expect. They're not strictly a probability distribution over solid angle; they have to do with the density of microfacets ...
Nathan Reed's user avatar
7 votes
Accepted

Roughness Value of (Close to) Zero in Physically Based Rendering

Yes, I think it's expected that setting roughness = 0, combined with using point lights for illumination, leads to no visible specular highlight. The size of the highlight is infinitesimally small, so ...
Nathan Reed's user avatar
6 votes
Accepted

Derivation of Wikipedia's path tracing diffuse BRDF

When you perform regular Monte Carlo integration over a hemisphere using $N$ samples, each sample represents $\frac{2\pi}{N}$ steradians. So the Monte Carlo integration for Lambertian BRDF is: $$\...
JarkkoL's user avatar
  • 3,626
6 votes
Accepted

Why the BRDF of specular reflection is infinite in the reflection direction?

In the BRDF curve, the total area under the curve is the albedo: what fraction of incident light is reflected in total (as opposed to being absorbed or transmitted). For a perfect reflector, the area ...
Dan Hulme's user avatar
  • 6,770

Only top scored, non community-wiki answers of a minimum length are eligible