Holographic displays from LGF are a unique type of display that allows for holographic images to be viewed in real-time. The displays use lightfield technology to create immersive, headset-free, multi-user holographic visualizations that are visible across a wide range of viewing angles. With vtk.js now supporting LGF displays, users can leverage vtk.js’s GPU-accelerated processing and rendering pipelines to create immersive and engaging 3D holographic visualizations. Adding holographic display support is now on the roadmap for several of our vtk.js end-users applications, including Glance and VolView.
Support for web-based holographic rendering using vtk.js builds upon our previous vtk.js work to support cinematic volume rendering as well as the our support for holographic rendering in Python and C++ applications using the VTK.
Users can follow these steps to get started with vtk.js holographic rendering:
- Connect an LGF display to the computer that will be running the web browser and visiting the vtk.js-enhanced web pages. LGF displays range from low-cost 5” displays to immersive 65” 8K monitors.
- Download and install LGF’s Bridge service on the computer. This service is essential for streaming holograms from any application to an LGF display.
- Open a supported web browser and run one of our vtk.js holographic examples, simply by visiting the example web page and clicking “Send to Looking Glass”. This will open a popup window that can be dragged to the connected LGF display. Once on the LGF display, double-clicking the window will maximize the window to the display for proper holographic viewing.
Holographic rendering with vtk.js relies on LGF’s WebXR polyfill module. Users creating holographic scenes with vtk.js should reference the LGF WebXR Library installation instructions for fetching or installing the polyfill module in their project. The vtk.js holographic examples fetch the LGF WebXR polyfill module automatically.
How It Works
Vtk.js holographic integration with the LGF WebXR Library extends rendering techniques from existing WebXR integration to apply to LGF displays:
- The LGF WebXR Library requests a set of views for each holographic frame. These views specify how the camera should be positioned in a 3D scene. LGF displays create holograms by simultaneously displaying multiple view perspectives of a scene.
- The vtk.js GPU-accelerated rendering pipeline executes once per view and draws its results to a framebuffer provided by the LGF WebXR Library. The result is a tiled image that LGF calls a “quilt” that represents one frame of the scene across all requested views.
- The LGF WebXR Library and Bridge service process the quilt to display the holographic scene.
Due to the demands of creating multiple renderings per frame, users may observe a tradeoff between the level of detail and the frame rate (e.g., interactivity) of a hologram. Vtk.js provides filters and rendering parameters that enable users to dynamically adjust the level of detail rendered for a scene, enabling users to switch between interactive animations and high-quality static renderings. These capabilities also allow LGF displays and vtk.js to run on a wide range of computer systems, from portable laptops and tablets to powerful workstations.
Partnering with Kitware
Kitware is dedicated to advancing cutting-edge scientific computing and visualization technologies. Our team is composed of computer scientists, software engineers, and scientific computing experts. They have the knowledge and expertise to support your pursuit of AR and VR technology and can help you practically incorporate these XR experiences into your work. Whether you’re a research center, university, or commercial company, partnering with Kitware will ensure you effectively leverage this technology. For more information, please contact us or visit our commercial projects webpage.
Research reported in this publication was supported, in part, by the National Institute Of Biomedical Imaging And Bioengineering and the National Institute of Neurological Disorders and Stroke, at the National Institutes of Health, under Award Numbers R01EB028283, R01EB014955, and R42NS086295. The content is solely the responsibility of the authors and does not necessarily represent the official views of the National Institutes of Health.