VTK::RenderingANARI#
ANARI - Rendering API compatible with multiple backends#
Introduction#
ANARI is an open standard 3D rendering API maintained by the Khronos ANARI:tm: Working Group. This API is used as a graphics front-end that supports multiple low level back-end rendering engines. The supported backends are listed in the ANARI-SDK repository. The front-end is a C99 API with C++ type-safe wrappers, used to build an in-memory hierarchical object tree that expresses the complete scene for a single frame, including 3D surface geometry and volumetric data.
Using ANARI with VTK#
ANARI can be enabled via the CMake variable VTK_MODULE_ENABLE_VTK_RenderingAnari=YES. VTK requires an installation of the ANARI-SDK library. The path to the ANARI-SDK installation directory has to be given with the following CMake variable anari_DIR=<path-to-anari-install-directory>. VTK requires a version of ANARI-SDK with a minimum version of v0.9.1. The repository can be found on GitHub.
Specific build instructions for your chosen platform are provided in Building ANARI-SDK from Source.
ANARI’s backend can be chosen at runtime by providing the following environment variable: ANARI_LIBRARY=<backend-name>.
Note: If the library is not installed system-wide, the LD_LIBRARY_PATH may also need to be specified with the path to the backend built library.
The following sections show some backends that were tested in VTK with their corresponding version and dependencies.
ANARI-VisRTX#
The required version for VisRTX is v0.11.0 with ANARI v0.14.1. The repository with the VisRTX sources can be found on GitHub.
To run an application using ANARI-VisRTX the name of the anari library is ANARI_LIBRARY=visrtx.
ANARI-OSPRay#
The OSPRay backend repository for ANARI can be found on GitHub. It is highly recommanded to use the internal superbuild for this repository.
With the changes applied in the superbuild CMake file, the build can be achieved by calling the follwing lines:
To run an application using ANARI-OSPRay the name of the anari library is ANARI_LIBRARY=ospray.