ParaView now comes with a built in ray traced rendering capability. Hit the Enable OSPRay checkbox at the bottom of the Properties tab to switch back and forth between OpenGL rasterization and Intel® OSPRay ray tracing. The new capability improves upon LANL’s earlier pvManta plugin and TACC’s pvOSPRay plugin in that it is easier to use (no really – just hit the button), is more compliant with VTK’s full complement of drawing and coloring modes, is better tested, and is available on Linux, Mac and Windows operating systems. Like its predecessors the new interface draws implicit spheres and cylinders for points and lines but these can now be scaled individually by point aligned scalar values. This is especially effective when used in concert with ambient occlusion shading. The renderer is quite fast because it is optimized to put the parallel capabilities of modern CPUs to use. Being a ray tracer it naturally exhibits frame rates upon camera motion that are largely insensitive to geometric complexity for ray cast quality rendering.
Interpolating Point Clouds
New in this release is a collection of filters under the “Point Interpolation” category that can be used to interpolate point clouds to various types of meshes such as a line, a plane or a regular volume. A wide array of interpolation kernels are supported including Voronoi, Shepard and SPH (smoothed particle hydrodynamics).
The zero-copy infrastructure to pass data arrays with arbitrary memory layouts to Catalyst has been refactored to minimize runtime overhead when accessing such arrays in filters. This new mechanism is called “generic arrays”. For those interested in knowing more, please refer to this page.
X-Ray View (aka Interactive View Link)
This new feature allows users to render picture-in-picture visualizations, where contents from one view can be shown in another view within an interactable box. To use this, simply use the same mechanism as linking cameras between two views, just make sure you check the Interactive View Link checkbox.
Resampling to Image
For large unstructured grids, it is often faster to resample the whole unstructured grid to a regular grid and then use that for doing operations like contouring, volume rendering, etc. This release includes a new Resample to Image filter that can do this resampling to image operation efficiently, even when data is distributed among several ranks. Under the covers, this filter uses DIY2, a parallel block-parallel library for implementing scalable algorithms.
On starting ParaView, users will now be greeted with a welcome screen that offers quick links to resources that are helpful for getting started with ParaView. This includes links to a new brief two-page Getting Started Guide and an example visualizations dialog.
As with any release, several little tweaks have gone into this release to improve Catalyst. Including
- Disabling compression of PNG output images. For scaling tests with Catalyst we found that most of the in situ processing time was spent in compressing the PNG output file on Mira at Argonne National Laboratory, an IBM BG/Q.
- Improving Catalyst initialization times through using the newly created vtkPSystemTools and vtkPDirectory classes to efficiently do file system introspection in parallel. See this blog for more details.
- Reducing empty files generated by parallel VTK XML writers. Parallel VTK XML writers no longer writer out any files on ranks with empty datasets. This can drastically reduce the files written out when saving extracts from filters such as contour, or slice since often a large number of ranks end up being empty.
ParaView’s Cinema export capabilities continue to improve. The Cinema export dialog now gives you better control over what datasets to export and lets you choose the arrays on those datasets to export. Also, Cinema’s naming conventions were made more readable and changed from values to indexes to eliminate precision problems.
Here are some of the nifty little features that went in this release:
- You can rename views. Just right click on any view’s title bar and select Rename to rename a view. The new name of course gets saved in state files, accessible through Python API, and all that jazz!
- 3D Widgets (or interactive widgets) were refactored to be nothing more than custom panel widgets. This makes it a whole lot easier for plugins to use interactive widgets to change properties on their filters or even add new types of their own.
- Performance when using data tooltips is now improved. We now cache information picking data structures until the view is interacted with this making the tool useful for larger datasets.
- Axes Grid now replaces Cube Axes which is no longer available. We’ve also cleaned up miscellaneous issues with the Axes Grid e.g. not working well in parallel projection or when volume rendering was being used.
- When showing composite datasets including multiblock datasets in spreadsheet view, traditionally, we only showed one block at a time. Now you can select multiple blocks or show all blocks at one time if you choose.
- A new Catalyst edition named HostTools is now available. This edition is useful when cross compiling either ParaView or any other Catalyst edition. Simply build this edition instead of the whole ParaView source to build the build tools or host tools needed to cross compile ParaView.
- PLY writer now supports exporting color information in addition to the geometry. This will make it easier to export geometries from ParaView to be imported into other stylistic rendering tools.
- Issues with rendering molecular datasets with OpenGL2 backend are now fixed.
- Plot3D reader now supports reading Overflow files that use record delimiters and where data blocks were split between multiple sub-records.
- The Open File dialog on Mac has more useful user directories listed in the special directories listed, including the home, Desktop, Documents, and Downloads directories.
- Color map-specific presets are restored when color maps are reset to the default.
Binaries on paraview.org are now compiled with C++11. It is possible that externally developed plugins will now need to be compiled with C++11 as well to be compatible with Kitware’s binary packages.
This will be the very last release with pqProxyPanel and subclasses (for real this time). This release already prints out a visible warning message as soon as such a panel is encountered.