Add eval(), sample_direction() and pdf_direction() to distant sensor#12
Add eval(), sample_direction() and pdf_direction() to distant sensor#12leroyvn wants to merge 1 commit intomitsuba-renderer:masterfrom leroyvn:distant_eval_pdf
Conversation
|
Hi @Speierers, any news regarding that? I had a look at @merlinND's |
src/sensors/distant.cpp
Outdated
There was a problem hiding this comment.
Sorry, it's not SurfaceInteraction3f but DirectionSample3f. The emitter member is set to point to the sampled object e.g. upon call to DirectionalEmitter::sample_direction(), and nothing equivalent can happen here. So I was wondering if generalising this member to accept any EndPoint would make sense or if I should just ignore it.
There was a problem hiding this comment.
Oh right, this makes sense. And what prevents you from doing so? (e.g. something related to the ptrace PR?)
There was a problem hiding this comment.
Nothing, it's just out of the scope of mere plugin changes, so I just wanted to know if there was a reason not to do so :)
There was a problem hiding this comment.
I actually overlooked this: both SurfaceInteraction and DirectionSample would need some changes. I'll submit a separate PR for this.
|
Hi @leroyvn , Not sure to remember what was the issue with |
|
Hi @Speierers, see this other comment for details. |
|
I'm revisiting this PR. The issue we had back in July is still here. I started work on Wrapping it up:
|
|
Hi @leroyvn, I was just looking at the PRs you mention. It was actually not 100% clear what the issue with |
|
Hi @wjakob,
I think I do (see #19 (comment)). |
d43e297 to
8bc5ae2
Compare
Description
This PR implements the missing
eval(),sample_direction()andpdf_direction()methods for the distant sensor plugin.Notes:
SurfaceInteraction3f. Depending on the outcome, I might close this PR.Thecheckerboardtest segfaults when rebasing ontomaster, I still have to investigate that. EDIT: This appeared with 1372c60.Testing
I added a few unit tests to check if the implementation was correct.
Checklist:
cuda_*andllvm_*variants. If you can't test this, please leave belowTested with the LLVM backend only (no CUDA).