Navigation Basics in Virtual Reality with ParaView

Virtual reality (VR) in ParaView brings richer visualization for your data through more intuitive spatial interaction. Support for VR has been readily available in ParaView since several minor releases. A previous blog post provides more information on how to get VR running with ParaView, while this post introduces basic interaction using VR controllers.

Left: ParaView standard mode, right: ParaView VR mode.

Note that in the upcoming ParaView 5.11 release, the VR plugin (called “OpenVR” plugin, named after the OpenVR library) will be renamed to “XRInterface” to highlight the integration of the OpenXR standard. The name also stands for both VR and AR (Augmented Reality).

When both OpenVR and OpenXR are available, you can select which one to use with the corresponding option “Desired XR Runtime”.

XRInterface panel

Basic Interaction Overview

As with most VR environments, user movements in the physical world are tracked and reproduced in the virtual space containing your data. Additionally, it is possible to move inside the scene by using the controllers joystick/touchpad. This creates the feeling of flying through the virtual world, which is especially useful to explore spatially large datasets.

Apart from simply moving inside the scene, a variety of actions are available using the controllers to interact with your data. (Note that the controls described here may vary across different hardware.)

Grip Actions

Translation

Move both controllers in the same direction while pressing the grip buttons to translate the scene.

Scaling/Zoom

Move the controllers farther or closer to each other while pressing both grip buttons to zoom in or out of the scene.

Rotation

Move one controller around the other in a circular motion while pressing the grip buttons to rotate the scene around a vertical axis.

XR Menu

Press the menu button to open the XR menu. Navigate using the controller ray as a cursor and the right trigger to confirm your selections. Some of the usual ParaView tabs (Properties, Display, Information) as well as the pipeline browser are available, along with XR specific options. For instance, you can select different actions associated with the right trigger, add cropping planes, save user positions in the virtual scene, and more.

Trigger Actions

Cell Probing

Briefly press the right trigger while pointing at a cell to display information related to it.

Grabbing

Press the right trigger with the tip of the controller placed inside of an object bounding box to grab it and move it. Release the trigger to stop the interaction.

Picking

Similar to grabbing, press the right trigger (a line ray will appear) while pointing at an object to pick it and move it. Release the trigger to stop the interaction.

Interactive Crop

Press the right trigger to cut through objects with a plane placed at the tip of the controller.

Upcoming Improvements

Development is ongoing to improve the usage of VR and AR in ParaView. Notable items include:

  • The integration of the OpenXR standard. This enables support for more hardware devices, including the Microsoft HoloLens for AR. An early proof of concept can be found in this blog post to illustrate an example of AR visualization with VTK.
  • The addition of official ParaView documentation for the various XR tools and options.
Thresholded streamlines representing air flow inside of a kitchen.

Support from Kitware

Kitware Europe’s Scientific Visualization Department has extensive expertise in massive datasets processing and visualization, in-situ visualization of simulation data, as well as medical data volume rendering and point cloud optimized rendering. Notably, our engineers have in-depth expertise in HPC, visualization on the web and on mobile, medical imaging and virtual reality.

Our consulting services are flexible enough to meet the needs of both research organizations and commercial product companies. For more than 20 years, the Kitware team has adapted technology to a wide variety of customers and markets.

Our experts can answer technical questions, resolve issues, and develop custom prototypes. If specific needs go beyond general support, please reach out at kitware@kitware.fr so we can properly scope the effort and find the best solutions.

Acknowledgment

This work is funded by the CALM-AA European project (cofunded by the European fund for regional development), and the United States National Institute of Standards and Technology (NIST) under Kitware Contract 1333ND21PNB770285 “Modifications and Enhancements to the ParaView /VTK Software for Immersive Scientific Visualization”

2 comments to Navigation Basics in Virtual Reality with ParaView

  1. Is there a possibility of adding custom interaction technique in VR with Paraview? We might need additional interaction techniques to explore diverse datasets for scientific visualization. Any suggestion or helpful resources?

    1. Adding new types of interaction is definitely possible. If you are planning on implementing those yourself, you may start by checking the VTK classes “vtkVRInteractorStyle” and “vtkInteractorStyle3D”.

      Out of curiosity, what kind of interaction techniques would you like to see in ParaView ?

Leave a Reply