-
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 2 replies
-
Although I have completed the BSSRDF implementation, there are still strange diagonal lines visible on the cube in the final rendering results. Does anyone know what might be causing this issue? |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
It seems I've solved the problems: ray2 = mi.Ray3f(offsetRay);
ray2.o = so1.p;
ray2.maxt = dr.maximum(0, l - dr.norm(so1.p - offsetRay.o)) was incorrect as it didn't account for ray self-intersection; a small offset should be added. I still have another question: since I don't fully understand how to implement nested loops in DrJit under |
Beta Was this translation helpful? Give feedback.
It seems I've solved the problems:
1.
si.sh_frame.n
is not equivalent tosi.n
, and because of this issue, diagonal lines appeared on the cube surface when rendering.2.
was incorrect as it didn't account for ray self-intersection; a small offset should be added.
I still have another question: since I don't fully understand how to implement nested loops in DrJit under
cuda_ad_rgb
, especially how while loops should be implemented, I'm currently implementing transmittance through multiple collisions. Could anyone explain how to implementwhile()
loop logic in DrJit?