NVIDIA / VisRTX

NVIDIA OptiX based implementation of ANARI
Other
242 stars 24 forks source link

Cylinder rendering issue #73

Open stukowski opened 10 months ago

stukowski commented 10 months ago

I am observing a visual artifact when rendering a single cylinder with VisRTX (current head of branch next_release). The issue only occurs under very specific circumstances:

Orthographic camera, viewing direction: (0, 0.827878, 0.560908) Cylinder geometry from (-30.005, -77.1061, -16.8721) to (-30.005, -27.301, 16.8721)

The camera viewing direction is parallel to the cylinder axis in this case. The resulting picture look like this:

visrtx_test_c

If I rotate the camera just slightly, I start seeing a single black circle (the cylinder cap) instead of the black bar and the white circle - like it is supposed to be.

I tried to use ANARI's traceMode=code to generate a reproducible test case. I haven't verified it, but I hope it helps you to debug the problem. Let me know if you need anything else. Thanks!

trace_mode_files.zip

jeffamstutz commented 8 months ago

I did an iteration of the cylinder intersection code on the next_release branch that at least now properly respects "none" for the caps mode on the geometry. I think the caps are mostly the problematic piece here, but your provided cylinder body intersector is helping it be more robust. The test case was indeed helpful, and now matches helide. Please let me know if the new version helps on your side.