RenderKit / ospray

An Open, Scalable, Portable, Ray Tracing Based Rendering Engine for High-Fidelity Visualization
http://ospray.org
Apache License 2.0
985 stars 180 forks source link

Path tracer does not work with non right rectangular prism cells #443

Closed StasJ closed 3 years ago

StasJ commented 4 years ago

The bounding boxes of the cells are rendered rather than the cells themselves:

jsmall pathtracing

johguenther commented 3 years ago

Just to be sure: this is with unstructured volumes, consisting of cells of type OSP_HEXAHEDRON?

johguenther commented 3 years ago

If this is the case, a shot into the blue is to try enabling hexIterative on the volume.

StasJ commented 3 years ago

This happens with all types of cells, except in the case when the cell geometry equals its bounding box. In this case, the cells are hexahedron but OSP_HEXAHEDRON did not make a difference.

StasJ commented 3 years ago

Attempting to render the dataset in the screenshot results in OSPRay hanging. The dataset renders correctly using the SCIVIS renderer and when rendered with the Pathtracer before, it would result in the original blocky image. Attempting to render it now results in OSPRay hanging indefinitely.

johguenther commented 3 years ago

Might be related to #343 (although here it's volume rendering and in #343 isosurfaces). What we found so far is that hangs are not reproducible anymore with a fresh build using ISPC 1.14.1 (minimum required version in OSPRay v2.3) and TBB 2020.2, Embree v3.11.0.

Additionally, we "recreated" your above scene, i.e. an unstructured volume with many hexahedral cells, axis aligned or not, but could not reproduce a hang so far. Thus, is it possible to get more details on your test scenes, or even the scene / the volume itself + transferfunction (if you prefer also offline via mail)?