jjzjj

Unrolling

全部标签

python - "Unrolling"递归函数?

我正在用C++编写路径跟踪器,我想尝试将资源最密集的代码实现到CUDA或OpenCL中(我不确定该选择哪个)。我听说我的显卡的CUDA版本不支持递归,这是我的路径追踪器大量使用的东西。因为我用Python和C++编写了代码,所以我将发布一些简化的Python代码以提高可读性:defTrace(ray):hit=what_object_is_hit(ray)ifnothit:returnColor(0,0,0)newRay=hit.bouceChildRayOffSurface(ray)returnhit.diffuse*(Trace(newRay)+hit.emittance)我尝试手