It happens every time with METROPOLIS for me, if I add additional checks for PDF being zero there to skip, it'll fail a few iterations later in the TraceLightPath IsAllValid assert with more Inf floats. If I run the RANDOM test instead it occasionally makes it past this point which is what leads me to think it's some sort of Floating Point behavior that's causing the issue.
Code: Select all
...
if(lightEmitPdfW == 0.f && lightDirectPdfW == 0.f)
{
fprintf(stdout, "lightEmitPdfW=%1.20f, lightDirectPdfW=%1.20f\n", lightEmitPdfW, lightDirectPdfW);
lightVertex.throughput = 0.0;
}
if (!lightVertex.throughput.Black()) {
...
I only get the fprintf with PDF at zero twice for METROPOLIS and about the same for RANDOM.
Manually running the rendering through luxcoreui yields the same result.
Currently trying to get clang to work on my linux box isn't going too smoothly, zlib fails right away. Using the precompiled gcc libs shows LuxCore
cmake failing with "LLVMgold.so: error loading plugin:" so still working on that front.