-
I'm working on a C++ BSDF plugin. My unit tests pass, both with scalar and LLVM variants. The rendering output I get with scalar variants is correct; it is different−and incorrect−when I use LLVM variants. The most straightforward way to debug this with scalar variants would be to simply add some logging output in the code and inspect variables during execution, but I can't do this with JIT-compiled variants. Is there an appropriate workflow you can recommend in such situation? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 5 replies
-
What I would suggest is to implement a chi^2 test first, as is done in many other BSDF plugins. Next, you can spot-check the value of the BSDF and result of the sampling algorithm for specific input arguments and compare variants. If discrepancies emerge, you can |
Beta Was this translation helpful? Give feedback.
What I would suggest is to implement a chi^2 test first, as is done in many other BSDF plugins. Next, you can spot-check the value of the BSDF and result of the sampling algorithm for specific input arguments and compare variants. If discrepancies emerge, you can
std::cout
variables within the implementation. The important thing is not to try to debug something like this within a rendering algorithm.