Skip to content
Discussion options

You must be logged in to vote

Hi @Mephisto405

Basically shapes.reduces.sample_position is a virtual function call. Unless you disable vcall recording with dr.set_flag(dr.JitFlag.VCallRecord, False), Dr.Jit will "trace/read" through every possible target function and then assemble a single optimized kernel which is finally executed.

In your case, even though some target function will not actually be executed, it is still recorded and during the recording an error happens. I've looked at the error myself, it seems that some of the meshes in the scene are "broken". For example Mesh432.obj is just a line of vertices.

You have 3 options:

  • Do a non-parallel evaluation as you suggest in snippet 2
  • Disable virtual function rec…

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by Mephisto405
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants