Questions tagged [pbrt]

For questions related to techniques described in the book *Physically Based Rendering: From Theory to Implementation*

Filter by
Sorted by
Tagged with
1 vote
1 answer
62 views

Confusion regarding incident direction in render equation

I am studying from pbrt-v3 and the rendering equation has just been introduced as $$ \underbrace{L_\mathrm{o}(\mathrm{p},\omega_\mathrm{o})}_\text{Outgoing radiance }=\underbrace{L_\mathrm{e}(\mathrm{...
Scene's user avatar
  • 111
1 vote
1 answer
118 views

Confusion about PDF defined in solid angle / area measure

When using MIS, we always want to express the PDF value in a unified measure in order not to render the ratio between them meaningless. Yet when I read through chapter 16 of PBR-book, I got confused ...
Enigmatisms's user avatar
1 vote
0 answers
27 views

PBRT: requests sample dimensions in the same order

PBRT 7.2.2 illustrates an example on requests sample dimensions in the same order: ...
Rahn's user avatar
  • 171
0 votes
0 answers
104 views

PBRT: why normalize ray's direction

In PBRT Chapter Camera Model, when describing Camera::GenerateRay(), it writes It is important that the direction component of the returned ray be normalized—many ...
Rahn's user avatar
  • 171
1 vote
0 answers
78 views

Sampling Quad Shape Light Using Spherical Rectangles in Local Space

The paper "An Area-Preserving Parametrization for Spherical Rectangles" describes an efficient approach for sampling solid angles for rectangle light sources. I am wondering if The light ...
ali's user avatar
  • 730
1 vote
1 answer
133 views

Conflicting definitions for the distribution of normals $D$ in microfacet BSDFs

Please do not confuse this question with this one. In Understanding the Masking-Shadowing Function in Microfacet-Based BRDFs, Eric Heitz defines the distribution of normals as. There, the footnote. ...
GroundGlassUnknown's user avatar
2 votes
1 answer
261 views

How is the maximum value for alpha (roughness == 1) decided for microfacet models?

Recently I have been looking at pbrt, and was looking at their remapping from roughness to $\alpha$ values: https://github.com/mmp/pbrt-v3/blob/master/src/core/microfacet.h#L86 I understand that it is ...
Shane Simms's user avatar
2 votes
1 answer
70 views

BTF Find Four Closest Sampling Directions

I am trying to use the techniques discussed in this paper to implement a BTF into PBRT. I am stuck on how to actually interpolate the weights of the four closest sampling directions. At the BTF, I ...
Dave's user avatar
  • 121
1 vote
1 answer
382 views

How to change a RGB value using a radiance value?

I am new to this awesome community, I am currently writing a ray tracer but I hit a problem... Let's say I have a surface(material doesn't matter) of colour [1, 0, 0] in RGB, and the radiance reaching ...
The Light's user avatar
0 votes
0 answers
135 views

Raytracing, divide by PDF neutralized the effect of D and G terms, what is the problem?

Following some documents on internet, I divide my ray tracing result by PDF. Then it seem the D and G terms disappeared. Only F term is still visible, it looks like Fresnel only. ...
iaomw's user avatar
  • 131
1 vote
1 answer
78 views

Is spectral response curve and spectral power distribution the same thing?

I'm reading section 5.2 of pbrt 3rd edition and came across the part where they explain the concept of RGB colors. When we display an RGB color on a display, the spectrum that is actually displayed ...
Peter's user avatar
  • 113
3 votes
1 answer
60 views

Plotting pbrt-v3 Gaussian filter

I want to plot the Gaussian filter of pbrt-v4 with a radius $(100,100)$ and a standard deviation ($\sigma$) of $0.5$. I would expect something like this: When I plot the pbrt-v4 Gaussian filter with ...
Vertexwahn's user avatar
1 vote
1 answer
92 views

How can I account for specular interactions in shadow rays?

I've been working through PBRT, implementing my own version of it in Rust. Right now I'm working on shadow rays, and it looks like pbrt doesn't do anything to account for specular behavior, and treats ...
Calvin Godfrey's user avatar
1 vote
0 answers
48 views

Why is there a T factor in the definition of Shah given in Matt Pharr's Physically Based Rendering?

The specific chapter about this is here - Sampling Theory Unlike what I read anywhere else, it defines Shah as: $$Ш_T(x)=T\sum\nolimits_i{\delta{(x-Ti)}}$$ And the T is still present in the ...
Eugene's user avatar
  • 111
0 votes
0 answers
59 views

An equation about PDFs and differentials in the book of pbrt-v3

Why does the equation at the bottom of the following page hold? http://www.pbr-book.org/3ed-2018/Monte_Carlo_Integration/Transforming_between_Distributions.html $p(\theta,\phi)d\theta d\phi=p(\omega)...
chaosink's user avatar
  • 591
2 votes
0 answers
64 views

Does the RGBSpectrum class in pbrt store RGB color values directly, not power?

I had a hard time to understand this. I thought *Spectrum classes (SampledSpectrum, specifically) store power (SI unit: W) in ...
Cu2S's user avatar
  • 167
0 votes
0 answers
85 views

Considering a path generated by bidirectional path tracing under a different strategy

Say I have constructed a path, using bidirectional path tracing (BDPT), consisting of a light subpath $y$ with $s=2$ vertices and a camera subpath $z$ with $t=3$ camera vertices. Now I want to ...
0xbadf00d's user avatar
  • 193
2 votes
0 answers
163 views

Scaling of the final image in Metropolis Light Transport

I don't understand why the PBR implementation of Metorpolis Light Transport scales the final image by b / mutationsPerPixel. The authors write: Each Metropolis ...
0xbadf00d's user avatar
  • 193
0 votes
0 answers
62 views

Is casting a shadow ray non-symmetric in pbrt?

According to the description in the book, Scene::IntersectP() "checks for the existence of intersections along the [passed] ray". This operatorion should be ...
0xbadf00d's user avatar
  • 193
2 votes
1 answer
73 views

How to decide which child of BVH to visit based on sign of ray's direction vector?

I'm reading about BVH from PBRT. According to the book, in the linear bvh part using morton encoding: An efficient way to perform a front-to-back traversal without incurring the expense of ...
Karthik's user avatar
  • 25
0 votes
1 answer
264 views

How to calculate the PDF of a multi-lobe BSDF

In PBRT, a BSDF is represented as an array of BxDF lobes. Each lobe sets a bitflag representing what kind of lobe it is. (Specular, Diffuse, Reflection, Transmission, etc.) I'm investigating how PBRT ...
RichieSams's user avatar
  • 3,732