Stack Exchange Network

Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

Questions tagged [brdf]

The tag has no usage guidance.

34
votes
2answers
4k views

How physically-based is the diffuse and specular distinction?

The classical way of shading surfaces in real-time computer graphics is a combination of a (Lambertian) diffuse term and a specular term, most likely Phong or Blinn-Phong. Now with the trend going ...
31
votes
2answers
4k views

What is Importance Sampling?

What is importance sampling? Every article I read about it mentions 'PDF' what is that as well? From what I gather, importance sampling is a technique to only sample areas on a hemisphere that matter ...
26
votes
2answers
3k views

Path tracing the Cook-Torrance BRDF

-- Sorry for the long post, but I prefer to do that way because "Devil is in the details." :) I am writing a path tracer from the scratch and it is working nicely for perfectly diffuse (Lambertian) ...
17
votes
2answers
4k views

How to properly combine the diffuse and specular terms?

As far as I understand, in a BRDF the Fresnel term is telling us the probability for a photon to be reflected or refracted when it hits a surface. The reflected photons will contribute to the ...
13
votes
2answers
546 views

Fresnel reflectance of gold: red channel greater than 1?

I've been trying to understand some of the physical principles behind light and material interaction lately. In his talk Physics and Math of Shading, Naty Hoffman explains Fresnel reflectance and ...
13
votes
1answer
2k views

Choosing Reflection or Refraction in Path Tracing

I am trying to implement refraction and transmission in my path tracer and I'm a bit unsure on how to implement it. First, some background: When light hits a surface, a portion of it will reflect, ...
12
votes
1answer
513 views

Compensation for energy loss in single-scattering microfacet BSDF models

Single-scattering microfacet-based surface models like the original Torrance-Sparrow BRDF or derived models like the BSDF for rough dielectric surfaces by Walter et al. neglect inter-reflection of ...
11
votes
1answer
144 views

Reasons of the assumptions for the microfacet distribution function?

The paper Microfacet Models for Refraction through Rough Surfaces (among others) reminds us the following assumptions about the microfacet distribution function D: Microfacet density is positive ...
11
votes
1answer
2k views

What is the accepted method of converting shininess to roughness, and vice versa?

Most modern renderers use physically-based materials and their models are often parameterized over roughness. Since this wasn't always the case with renderers, conventional assets often don't have a ...
10
votes
1answer
303 views

Why isn't a BRDF a ratio of radiances?

I'm Learning about BRDFs and wondering why the BRDF is defined as the ratio of outgoing radiance to a given direction and incoming irradiance from another direction. Why isn't the BRDF defined as ...
9
votes
2answers
1k views

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

The well known Schlick approximation of the Fresnel coefficient gives the equation: $F=F_0+(1 - F_0)(1 - cos(\theta))^5$ And $cos(\theta)$ is equal to the dot product of the surface normal vector ...
9
votes
1answer
2k views

Correct form of the GGX geometry term

I'm trying to implement a microfacet BRDF in my raytracer but I'm running into some issues. A lot of the papers and articles I've read define the partial geometry term as a function of the view and ...
8
votes
2answers
1k views

Rendering equation - why unsolvable directly?

Why is the rendering equation, introduced by Kajiya in 1986, not solvable directly/analytically?
8
votes
1answer
713 views

Why normalise Lambertian BRDF by 1/pi?

Why is a Lambertian BRDF normalised by dividing by $\pi$? Since the area of a unit sphere is $4 \pi$, and the area of the half sphere above the surface is $2 \pi$, shouldn't it rather be $1/(2\pi)$?
8
votes
1answer
354 views

How does Smith multiple scattering interact with diffuse subsurface scattering?

The Multiple Scattering Microfacet BSDFs with the Smith Model paper describes a statistical model for replacing the masking-shadowing functions in microfacet BSDFs (which account for paths with more ...
7
votes
5answers
337 views

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

I'm currently reading some books on radiometry. They mention that radiance is constant along a ray. It doesn't change with distance. However, I've seen some raytracer and they put the 1/r² factor when ...
7
votes
1answer
290 views

Dealing with blown-out highlights in PBR

I've been writing some custom shaders based around Unity's Standard BRDF, which is uses GGX distribution term and Smith visibility term. It looks great at either end of the smoothness scale (1 and 2 ...
7
votes
1answer
1k views

Energy Conservation for Blinn-Phong BRDF

I am trying to sample from the Blinn-Phong BRDF. For testing, I use a spherical light source (Lambertian emission) sitting on a specular plane. Here's a reference image using energy-conserving Phong ...
7
votes
1answer
442 views

Fresnel and specular colour

I'm trying to implement Cook-Torrance BRDF and had previously bookmarked this question as it looked very well thought out. Going through it, I'm confused about the Fresnel equation. The author has the ...
7
votes
1answer
269 views

Derivation of Wikipedia's path tracing diffuse BRDF

Wikipedia's path tracing algorithm has the following line for the diffuse BRDF: Color BRDF = 2 * m.reflectance * cos_theta; I'm a little confused as I've been ...
7
votes
1answer
333 views

What is the most physically accurate model of surface materials possible in computer graphics?

I am looking for theoretical and implemented models to represent surface materials in software that strives for physical accuracy. Is BRDF really the best model? What alternatives are better? Why? ...
7
votes
1answer
510 views

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

I am currently working with Earl Hammon Jr's Presentation PBR Diffuse Lighting for GGX+Smith Microsurfaces (now mentioned as [PBR, p.XYZ] and have read through (among others) Brent Burley's Physically-...
7
votes
1answer
112 views

fix over exposure in importance sampling in screen space reflections

I am having my first encounter with the rendering of indirect reflections in the form of screen space reflections in a game engine, but i am struggling to get correct looking results. (patterns arise ...
7
votes
0answers
1k views

Diffuse BRDF component of the Disney BRDF

In the SIGGRAPH course: BURLEY B.: Physically Based Shading at Disney, SIGGRAPH 2012 Course: Practical Physically Based Shading in Film and Game Production, 2012. it is mentioned that some BRDF ...
6
votes
2answers
2k views

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

I am currently following a tutorial at Scratchapixel.com on refraction Here is the refract function: ...
6
votes
1answer
1k views

BRDF and Spherical coordinate in ray tracing

I developed a ray tracer that use standard phong/blinn phong lighting model. Now I'm modifying it to support physically based rendering, so I'm implementing various BRDF models. At the moment I'm ...
6
votes
1answer
214 views

Phong BRDF in Mitsuba, Tungsten and AGI

In the book AGI (Advanced Global Illumination), the Phong BRDF is $f_r(x,\Psi\leftrightarrow\Theta)=k_s\cfrac{(R\cdot\Theta)^n}{N\cdot\Psi}+k_d$ $k_d=\cfrac{albedo}\pi$ In Mitsuba and Tungsten, the ...
6
votes
1answer
105 views

Trying to understand environmental cubemaps

I am trying to implement a physically based renderer, in OpenGL. I was planning to implement the Cook-Torrance BRDF. I read about radiance cubemaps (for reflections), like the one discussed here, for ...
6
votes
1answer
101 views

“Artist Friendly Metallic Fresnel” reversible?

While implementing the "Artist Friendly Metallic Fresnel" paper by Ole Gulbrandsen (http://jcgt.org/published/0003/04/03/paper.pdf), I read that it is fully reversible: (section 2.3.2): for all r,g ...
6
votes
2answers
110 views

Problem with Basic Diffuse Lighting

So recently I have been learning how to implement Diffuse Lighting in DirectX and I have done so with the following code: ...
6
votes
1answer
225 views

Ray tracing - BRDF using Cornell measured spectral data

I wrote a ray tracer that implements various BRDF models (Oren Nayar, Lamber, Torrance Sparrow and so on). Now I'm trying to implement a BRDF from measured data. I choose the Cornell database data ...
6
votes
3answers
2k views

What is the difference between radiance and irradiance in BRDF

Currently I am reading the BRDF section from Real Time Rendering and I am having a hard time to visually understand the definition of this function. BRDF is the ratio between the radiance in outgoing ...
6
votes
1answer
150 views

Roughness Remapping

I have been recently exploring physically-based rendering (PBR), but there is one part that still confuses me. I don't quite get roughness remapping, as described in the PBR section on Learn OpenGL. ...
6
votes
1answer
82 views

How is measured BRDF data recorded?

How is measured BRDF data recorded? Like the MERL BRDF Database. What kind of equipment is used and what are the key values that need to be recorded? I know one place this data was used was in the ...
5
votes
2answers
303 views

What does “Bidirectional” in BRDF mean?

So Bidirectional essentially means "two directions", right? But what are these two direction (left-right? up-down? north-south?) we are talking about in regards to bidirectional reflectance ...
5
votes
1answer
574 views

Microfacet shading for diffuse materials

I recently replaced the Lambertian BRDF in my path-tracer with Oren-Nayar, under the assumption that I could adjust it to use the GGX distribution model with appropriate masking/shadowing. PBR ...
5
votes
1answer
537 views

Energy conservation of BRDF

I'm reading Advanced Global Illumination. Here is the part confusing me: What do the second equation and $\delta$-function mean? Why the third equation is a sufficient condition even though a reason ...
5
votes
1answer
789 views

Volume Rendering (Path Tracing & Real-Time)

I have a few doubts and questions regarding volume rendering, I was hoping someone here could help me understand. I commonly hear the terms 'Ray-Marching' & 'Volume Rendering' being used together ...
5
votes
3answers
7k views

What is the difference between glossy and specular reflection?

What is the difference between glossy and specular reflection? What is their relations with BRDF?
5
votes
1answer
116 views

Radiative Transfer Equation for Photorealistic Rendering

I've recently become interested in photorealistic rendering, and I've been looking at the different rendering philosophies. I read this Disney Research bachelor's thesis, which states both the ...
5
votes
1answer
335 views

Intuitively understanding conservation of energy for the Lambertian BRDF

The Lambertian BRDF is defined as $R / \pi$, where the division by $\pi$ is there to maintain conservation of energy. The derivation is provided here. The maths makes sense, and I can understand ...
5
votes
2answers
100 views

Refraction: given an incoming and transmitted direction, can I deduce the normal?

It's easy to find guides to calculating the transmitted direction of light given an incoming direction, the normal, and indexes of refraction. However, I can't find anything about determining the ...
5
votes
1answer
437 views

How to correctly implement Lambertian BRDF with point light

I'm implementing a simple Lamberitan BRDF in GLSL, using a point light source. My fragment shader simply returns light_colour * 1.0/PI * cosine, which should model ...
5
votes
0answers
111 views

Where do “fireflies” come from?

I'm using a renderer developed by other people, and I found there are fireflies. It is strange that in a completely diffuse scene, there are still fireflies presented. To my understanding, I think it ...
5
votes
0answers
44 views

Ask for help on understanding a formula related to change of variable

Although I have tried for a long time, I cannot understand Eq.(11) of paper "Microfacet Models for Refraction through Rough Surfaces" written by Bruce Walter, Stephen Marschner, Hongsong Li and ...
5
votes
0answers
96 views

Should I use nonsymmetric BSDF for refraction in BPT?

I'm implementing bidirectional path tracing. I want to simulate perfect refraction. I read in the Veach thesis that a perfect refraction BSDF is non-symmetric. Does it mean that I need to use ...
4
votes
1answer
369 views

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

I know the BRDF of specular reflection is nonzero only in the reflection direction. But why it is infinite? A paragraph on page 36 of Advanced Global Illumination:
4
votes
2answers
228 views

Relationship between roughness and BRDF

In a BRDF $f_r$, assume Cook-Torrance model, we have a microfacets distribution $D$. This distribution essentially models the rougheness of the material as far as I've understood. Given a direction $v$...
4
votes
1answer
191 views

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

The GGX NDF, as it appears on the paper where it is presented is: $$D(m)=\frac{\alpha_g^2\space\chi^+(m\cdot n)}{\pi\cos^4(\theta_m)(\alpha_g^2+\tan^2(\theta_m))^2}$$ It is equivalent, in the range $...
4
votes
2answers
246 views

What is the effect of the BRDF denominator?

I was reading a paper on BRDF. I've come across this formula : $$ f(\omega_i, \omega_o ) = \frac{FDG}{4(N.V)(N.L)}$$ The (N.L) term can be cancelled by the cosine term which appears in the rendering ...