47 votes
Accepted

Physically based shading - ambient/indirect lighting

Real-time graphics deploys a variety of approximations to deal with the computational expense of simulating indirect lighting, trading off between runtime performance and lighting fidelity. This is an ...
user avatar
  • 23.7k
30 votes
Accepted

How physically-based is the diffuse and specular distinction?

To start, I highly suggest reading Naty Hoffman's Siggraph presentation covering the physics of rendering. That said, I will try to answer your specific questions, borrowing images from his ...
user avatar
  • 3,552
23 votes

How physically-based is the diffuse and specular distinction?

I was actually wondering about exactly this a few days ago. Not finding any resources within the graphics community, I actually walked over to the Physics department at my university and asked. It ...
user avatar
  • 1,800
17 votes

What are Spherical Harmonics & Light Probes?

Spherical harmonics If you know what a Fourier transform is, you already almost know what spherical harmonics are: they're just a Fourier transform but on a spherical instead of a linear basis. That ...
user avatar
  • 6,490
14 votes
Accepted

How to build a decent lens/camera objective model for path tracing?

The next step up from a pinhole camera model is a thin lens model, where we model the lens as being an infinitely thin disc. This is still an idealization that pretty far from modeling a real camera, ...
user avatar
  • 23.7k
14 votes
Accepted

What are Spherical Harmonics & Light Probes?

Basics of Spherical Harmonics Spherical Harmonics is a way to represent a 2D function on a surface of a sphere. Instead of spatial domain (like cubemap), SH is defined in frequency domain with some ...
user avatar
  • 3,566
13 votes

Correct Specular Term of the Cook-Torrance / Torrance-Sparrow Model

I would trust Pharr and Humphreys on this. Equation 2 also agrees with the SIGGRAPH Physically Based Rendering course notes, as well as with equation 20 in the Walter et al paper that introduced the ...
user avatar
  • 23.7k
13 votes
Accepted

For shader math, why should linear RGB keep the gamut of sRGB?

Talking about Linear RGB must be avoided because it does not tell you anything about the RGB colourspace intrinsics, i.e., Primaries, Whitepoint and Colour Component Transfer Functions. A few years ...
user avatar
10 votes

What are the current open problems in Computer Graphics?

There is a vast amount of open problems in real-time graphics: shadows, aliasing, reflections, global illumination, transparencies (blending order and lighting) etc. SIGGRAPH annually hosts a course ...
user avatar
9 votes
Accepted

Physically Based Area Lights

When I implemented real-time area lighting, there were two documents I kept referring to: "Moving Frostbite to PBR" by Sebastien Lagarde and "Real Shading in Unreal Engine 4" by ...
user avatar
  • 3,566
9 votes
Accepted

16bit half-float linear HDR images as (diffuse/albedo) textures?

In film production, we almost never use 8-bit textures for color/albedo, because of banding, etc. (JPEG is especially problematic since by spec, it's sRGB rather than linear values.) We either use '...
user avatar
9 votes
Accepted

Modelling Young's double slit experiment

It is in fact possible to augment a ray tracer to make it capable of simulating wave effects. The paper Rendering Wave Effects with Augmented Light Field describes one way to do it. In summary, they ...
user avatar
9 votes
Accepted

Polarising reflection and refraction for a wrap around water surface

The most commonly suggested method seems to be Mueller calculus, which boils down to tracking the Stokes parameters of a light ray to represent the polarization of light transmitted along that ray. A ...
user avatar
8 votes
Accepted

Does PBR incur a performance penalty by design?

As mentioned in this answer, Physically-Based Rendering isn't a set number of things. It's a concept. It's akin to saying something is 'Environmentally Friendly'. There are many different techniques ...
user avatar
  • 3,552
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 ...
user avatar
8 votes

16bit half-float linear HDR images as (diffuse/albedo) textures?

Yes, it's possible in some extreme cases for HDR lighting and tonemapping to expose banding issues in color textures. In those cases, having a higher bit depth for the textures could be useful. ...
user avatar
  • 23.7k
8 votes
Accepted

Area Lights in Path Tracing

I'm going to provide the simple/naive/brute force answer to this question, which does work, and gives accurate results. There are better answers however, which make the rendering converge faster with ...
user avatar
  • 7,361
7 votes
Accepted

Alternatives to Ambient Occlusion

Ambient occlusion cannot be physically based no matter what algorithm you use to calculate it. It's a simplification of global illumination that assumes all occluders only block light and are ...
user avatar
6 votes

What are Spherical Harmonics & Light Probes?

Spherical harmonics Let's say you have some data in an array but you want to represent that data with a fewer number of bytes. One way to do that could be to express the data as a function instead ...
user avatar
  • 7,361
6 votes

Physically based shading - ambient/indirect lighting

This is the main 'hard' problem remaining in real-time CG, and there is a lot of research ongoing into solving it. The biggest hurdle is that in raster graphics, each component of the scene is ...
user avatar
  • 2,302
6 votes
Accepted

What are some new Real-Time Graphics Rendering Techniques to get closer to real life?

PBR isn't just a feature you "add to a rendering engine" but an entire philosophy how to approach solving rendering problems. This seems to be a common prevailing misconception when people talk about ...
user avatar
  • 3,566
6 votes
Accepted

The reciprocity of BRDF

You probably know that the BRDF is to calculate the reflected light, from a light source to a camera (In examples a light source and a camera is used, but it does not need to be just that). The ...
user avatar
  • 1,575
6 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 ...
user avatar
  • 23.7k
5 votes

16bit half-float linear HDR images as (diffuse/albedo) textures?

I'd like to invite readers to read this article about Quake 2 engine rasterization technology explained in details, if they have the time. If TLDR, please pay attention to this image: What we see is ...
user avatar
  • 613
5 votes

What are the current open problems in Computer Graphics?

Computer Graphics can be divided in multiple subdomains of which I will only talk about physically-based rendering (the one I am the most familiar with and probably the one you are referring to based ...
user avatar
  • 1,024
5 votes

Resulting Probabilty Density in Path Tracer for paths using Next Event Estimation

I don't have any experience with Gradient Domain Path Tracing, but here are my thoughts: There seems to be a different problem If you look carefully at the little spikes of distortion in the final ...
user avatar
  • 5,902
5 votes
Accepted

Better Shadow Mapping Techniques

For light sources with larger solid angle and where the shadow caster is relatively closer to the light than the receiver, you get notable soft shadowing effect. So if you render larger light sources ...
user avatar
  • 3,566
5 votes

Books to learn Ray Tracing

For an introduction, you can give a look at: Ray Tracing from the Ground Up (Amazon link here). It starts really from the basics, and provides simple implementations for the concepts that are ...
user avatar
  • 1,689
5 votes
Accepted

Depth of Field in Path Tracing: What do I do with the secondary ray?

The missing step If you already understand how to generate a secondary ray, then you have already grasped the difficult part. All you need to do now is find the colour that this secondary ray results ...
user avatar
  • 5,902
5 votes
Accepted

Trying to understand environmental cubemaps

Your confusion comes from fact that in some basic tutorials like one you point cubemap which is used for applying lighting is global and static - it does not come from actual geometry but from infite ...
user avatar
  • 2,047

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