Cleanup offscreen support
Cleanup ParaView offscreen support.
This updates ParaView to incorporate changes to VTK to support EGL and GLX in the same build. We also take this opportunity to clean up a few things:
-
ParaView processes (i.e. pvpython, pvserver, pvbatch etc) can now decide if they need to be off-screen or on-screen on their own. This is based on the process type and configuration ParaView is running in.
-
Users can override this by passing new command line arguments to the process:
--force-onscreen-rendering
or--force-offscreen-rendering
. The old--use-offscreen-rendering
flag is now deprecated and is interpreted as--force-offscreen-rendering
. -
UseOffscreenRendering
andUseOffscreenRenderingForScreenshots
properties on views have been removed.UseOffscreenRendering
conflicts with2
whileUseOffscreenRenderingForScreenshots
was not used in OpenGL2. -
Deprecated
vtkPVDisplayInformation
and replaced it withvtkPVRenderingCapabilitiesInformation
. This provides more information that just DISPLAY. -
vtkPVOpenGLExtensionsInformation
is deprecated since it not useful anymore. Client applications don't need such exhaustive extension query. -
vtkPVOpenGLInformation
was cleaned up to avoid making OpenGL calls itself. Instead, it queries thevtkRenderWindow
. It also provides full extension list, a semi-replacement for vtkPVOpenGLExtensionsInformation.
This has exposed a host of issues in the rendering code:
-
ExodusIIReader is busted in parallel: bug introduced by vtk/vtk!3025 (merged) -
OsX doesn't resize offscreen bufferss correctly: vtk/vtk#17093 (closed) -
ProjectedTetraHedra mapper fails when using offscreen rendering: #17620 (closed) -
Glyph3DMapper doesn't work correct when using offscreen rendering: #17619 (closed)