c++ - C++ 中基于前向的光线追踪器

标签 c++ graphics simulation raytracing

我正在用 C++ 制作光线追踪器,并且需要它是基于前向的(源到检测器)而不是基于后向的(检测器到源)。我需要它,因为我正在使用它来模拟特定 Material 及其与光交互时的属性。

有很多可用于向后方向的光线追踪教程,这是可以理解的,因为在为图形目的编写光线追踪时它更有意义,但我找不到任何用于前向追踪(光源到检测器。 )

有没有人知道任何好的基于前向的教程,或者有一个他们不介意我为非营利目的构建的基于前向的光线追踪器?

最佳答案

我写过一次光线追踪器,前向光线追踪器无法(或几乎肯定无法)编写的原因很简单。如果场景很复杂,您将无法知道从哪里射出光线来击中探测器上的每个像素。

您可能要做的是进行后向光线追踪,然后,当您已经知道光线将遵循的路径时,进行前向追踪以计算一些额外的数据。

关于c++ - C++ 中基于前向的光线追踪器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24550699/

相关文章:

python - 在给定到达和离开时间矩阵的情况下,想出给定时间排队的人数?

c++ - 尝试模拟重力时的奇怪行为

c++ - 如何为 C 和 C++ 文件中的右大括号配置 Vim 的缩进?

c++ - 将元素添加到现有结构会使函数因段错误而崩溃

c++ - 单击按钮时在 QFrame 中绘制。

java - 如何在Java中阻止网格单元重绘?

C++20 std::source_location 在自由函数和模板函数之间产生不同的列号

r - 2d 密度面尺度

c++ - 使用SFML绘制多个形状

c++ - 如何在C/C++中模拟中断?