Jump to content

Talk:Path tracing

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

Issues with the Description Section

[edit]

The final part of the Description section discusses phenomena that simple Path Tracing can have a hard time reproducing. It claims that all three of these phenomena are hard because they are violations of the three principles described earlier, but only one of them (subsurface scattering) is.

Caustics are difficult to render with unidirectional path tracing because they involve sampling a spiky unknown pdf, but a unidirectional path tracer will converge on a scene with caustics eventually. This is fundamentally an issue with unidirectional path tracing as a method of evaluating the rendering equation, not with the equation itself or the principles it is derived from.

The last bullet contains several wavelength-dependent effects. All of these require a spectral path tracer to model accurately, but only one violates one of the principles. The first, chromatic aberration, is a part of the camera model and doesn't really have much to do with the rendering equation or path tracing as a method of evaluating it. Chromatic aberration, as well as other camera effects are absolutely a thing in path tracing renderers. Fluorescence is actually something that standard path tracers have a problem with, because it violates principle III. Specifically, the standard formulation of BRDFs assumes that light never enters with one wavelength and leaves with another. I believe it also violates assumptions for many rendering techniques because it is not reversible, but I'm not 100% certain on that one. Iridescence is caused by thin-film interference (or sometimes other structural coloration effects), and is captured by the rendering equation easily as long as you don't actually model the microscopic details with real scene geometry. I think the thing the article was trying to get at is that wavelength-dependent effects cannot be reproduced accurately by a path tracer representing colors with tristimulus vaules (usually RGB), but this has nothing to do with the rendering equation or the three principles described above, and is not a fundamental limitation. Many production path tracers represent color as spectral power distributions, usually by making wavelength a dimension of sample space. This approach is slower to converge (because of the added dimension), but there are well known techniques to improve this such as Hero Wavelength Sampling.

I'm new to wikipedia editing, and I'm not sure what the best way to go about fixing this is, but here is what I think should happen:

  • There needs to be a better distinction between path tracing as an algorithm to evaluate the rendering equation and the rendering equation itself
  • Discussion of limitations of the rendering equation should probably just point to Rendering equation#Limitations.
  • Mentioning radiosity as an alternative is good, but some other non-path-tracing approaches (photon mapping at the very least) should probably be mentioned as well.
  • If photon mapping is mentioned here, there should probably be a discussion about bias.
  • Maybe a discussion about the path integral formulation from Veach's thesis, since this is important to understanding BDPT. I'm not sure about whether it belongs on this page.

Benjamin-f-lee (talk) — Preceding undated comment added 12:48, 9 February 2021 (UTC)[reply]

I think the above is addressed (Description section was rewritten). Kajiya's paper discussed limitations/extensions and I don't think it leaves any doubt that path tracing (and similar rendering equations) can be used for a wider variety of optical phenomena. Glassner's book covers extending the rendering equation to things like fluorescence, in great detail, if anyone thinks we need to mention/reference this.
Photon mapping now has its own section.
I would still like to add subsections under Description covering the integration domains (including path integral) and "next event estimation" (which is mentioned in many places, without a proper explanation/definition). KaiaVintr (talk) 19:54, 27 May 2026 (UTC)[reply]

Wrong BRDF calculation in pseudocode?

[edit]

Why is there a multiplication by 2 when calculating the BRDF in the pseudocode? According to the [Lambertian reflectance] article, shouldn't it be a simple reflectance * cos_theta?
— Preceding unsigned comment added by Noname030919 (talkcontribs) 7 July 2017

The pseudocode has been replaced. KaiaVintr (talk) 20:11, 27 May 2026 (UTC)[reply]

Ray tracing VS Path Tracing features

[edit]

It's not at all clear from the article what the difference is (or if there is one) One line says

>"Path tracing naturally simulates many effects that have to be specifically added to other methods (conventional ray tracing or scanline rendering), such as soft shadows, depth of field, motion blur, caustics, ambient occlusion, and indirect lighting."<

The wiki page for ray tracing touts most of these features as a seller for ray tracing. Is it just harder to implement in ray tracing? There are no citations for this 167.32.2.2 (talk) 13:21, 2 October 2024 (UTC)[reply]

I think this is addressed now in the lead, History, and Description sections. KaiaVintr (talk) 19:57, 27 May 2026 (UTC)[reply]

v Ray tracing section

[edit]

This section is needed. Essentially, simply put PT is RT ([1]: "The equations for modeling the behavior of light are the same, the use of data structures to accelerate the searching for ray-triangle interactions are the same, too, and modern GPUs use the same units to accelerate the process." ), but PT is less computationally intensive than RT because it uses approximations. 37.205.110.124 (talk) 14:59, 3 February 2025 (UTC)[reply]

Just in case there is any uncertainty about whether PT is "a kind of RT"...
From Kajiya's 1986 paper (first citation for this article) page 148:
"This diagram also points out an alternative algorithm for conventional distributed ray tracing. Rather than shooting a branching tree, just shoot a path with the rays chosen probabilistically. For scenes with much reflection and refraction, this cuts down vastly on the number of ray object intersections to be computed for a given plxel and performs a remarkable speed up of ray tracing for very little programming work. However, for this new fast form of ray tracing--called path tracing--we have found that it is very important to maintain the correct proportion of reflection, refraction, and shadow ray types contributing to each pixel."
I think it's more obvious that path tracing is a form of Distributed ray tracing. For someone who is only familiar with Whitted-style recursive ray tracing, path tracing might seem like a very different algorithm, hence the confusion (and occasional arguments online, it seems).
Part of the problem is that "ray tracing" has been used as a marketing term by Nvidia and Microsoft (and others). Games are doing ad-hoc combinations of ray casting, recursive ray tracing, distributed ray tracing and (occasionally) proper path tracing, and it's all called RT for marketing. KaiaVintr (talk) 20:27, 3 February 2025 (UTC)[reply]
I think this is addressed now in the lead, History, and Description sections. KaiaVintr (talk) 19:57, 27 May 2026 (UTC)[reply]