visit-dav / visit

VisIt - Visualization and Data Analysis for Mesh-based Scientific Data
https://visit.llnl.gov
BSD 3-Clause "New" or "Revised" License
445 stars 117 forks source link

OSPRay volume rendering not available #18032

Closed demarle closed 4 months ago

demarle commented 2 years ago

Describe the bug

In VisIt develop today (just beyond the VTK 9 bump) OSPRay volume rendering does not seem to be choosable on the Volume plot page like it is in VisIt 3.3.0. OSPRay surface rendering works fine in my build and Allen did demonstrate volume rendering in his branch so I am thinking that it is likely something trivial like not exposing a new name for the GUI widget to show or something like that.

Helpful additional information

To Reproduce

Steps to reproduce the behavior. For example:

  1. Build develop branch and enable ospray
  2. load a .vti file
  3. add volume plot and draw
  4. PlotAtts->Renderer Options
  5. OSPRay is not available as it was in 3.3.0.

Desktop

biagas commented 2 years ago

Did you build with VTK 9 or VTK 8 ?

demarle commented 2 years ago

I built with VTK 9, and more specifically the VTK that was constructed via the build_visit script from the visit develop branch.

thanks

biagas commented 2 years ago

Here's what the Volume Plot window looks like when I build develop against VTK 9 and OSPRay 2.8 .

volumePlotAtts

Is your build of VisIt a completely new build? Are you using OSPRay 2.8? It should have been built automatically when vtk9 was chosen during build_visit. Did your host profile get updated to use this version?

demarle commented 2 years ago

Thanks again. The issue I think I see is that in the "Rendering Method" pulldown above I don't see "OSPRay in one of the alternative options to "Serial Rendering". In 3.3.0 there was. image

biagas commented 2 years ago

The OSPRay rendering for VTK 9 is now available in the Serial or Parallel method when you enable OSPray for either of those methods. You would have to ask @ARSanderson how they differ from the 'Ray casting: OSPRay' option.

demarle commented 2 years ago

Ah that is right. I do recall that OSPRay volumes are now funelled through the render pass.

However, with "Serial Rendering" selected above, when I enable OSPRay for the whole scene via Options->Rendering->Advanced->"OSPRay Rendering", and apply, the bounding box is OSPRay renderered, but the volume disappears.

Perhaps the bug is that VTK/Rendering/RayTracing/vtkOSPRayViewNodeFactory needs a new visit specific class name.

Alan please do advise, I could be doing something else wrong too of course.

biagas commented 2 years ago

This problem sounds like something Alan noticed, it was happening for him only with certain datasets. He tried to make note of everything and create issue tickets, but I'm not certain that everything made it in yet. VTK 9 support is still considered experimental and definitely not complete at this point in time. Feel free to document any problems you encounter so we don't lose track. Add VTK-9 to the title for easier searching.

ARSanderson commented 2 years ago

OSPRay volume is an option of the serial/parallel rendering. It is no longer a separate rendering type. OSPRay surface rendering is the same as before via the Options->Rendering->Advanced->"OSPRay Rendering."

I notice volumes not being rendered in certain circumstances with the serial rendering. I am not sure I made it an issue.

cyrush commented 4 months ago

resolved in 3.4.1