LATEST NEWS
Simplifies development of portable 3D visualization applications using state-of-the-art rendering; Multiple implementations and open-source SDK shipping
On August 2, 2023 the Khronos Group announced that the ANARI 1.0 open standard, cross-platform 3D rendering engine API has been finalized and that multiple implementations are shipping from AMD, Intel and NVIDIA, together with an open-source software development kit (SDK) from Khronos.
“Historically, visualization applications required custom-written renderers, but fast moving advances in rendering algorithms, hardware, and associated low-level GPU APIs have made it increasingly difficult for domain experts to keep pace with modern rendering methods. The result of a three year effort by industry-leading experts working together at Khronos, ANARI now simplifies the development of portable 3D visualization applications that use backend engines to access state-of-the-art rendering. We thank the scientific visualization community for their invaluable assistance in refining ANARI’s design, and now we are excited to see how other application domains take advantage of the industry’s first vendor- and ecosystem- independent rendering engine API.”
ANARI Resources
About ANARI
ANARI is a C99 API with C++ type-safe wrappers that is 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. ANARI provides rendering engines the semantics to expose innovation through extensions; access asynchronous scene updates and zero-copy data arrays for low frame latency; and ultimately create beautifully rendered state-of-the-art imagery without the need for proprietary APIs, all while enabling the interactivity necessary for exploratory visualization.
The ANARI 1.0 specification was developed with full public access to draft specifications and incorporates significant community feedback, including improvements to the object interface, better error handling through guaranteed API stream robustness, revamped runtime feature queries, directly mapped array parameters, improved volume shading, and compatibility with the Khronos glTF Physically-Based Rendering (PBR) materials.
ANARI Overview Presentation
Hover to pause the slideshow
ANARI Implementations Available Today
NVIDIA VisRTX rendering using ANARI. San Miguel
scene
© Guillermo M. Leal Llaguno
The Rendering engines below now support the ANARI device API and are expected to be officially conformant when the ANARI 1.0 Adopters Program is released.
- AMD: RadeonProRender
- Intel: OSPRay
- NVIDIA: VisRTX
ANARI Applications and Add-ons
VMD Rendering using ANARI. Image courtesy of the University of Illinois.
The following applications and add-ons support the ANARI API.
- VMD - Molecular Visualization Dynamics
- ParaView - Multi-platform data analysis and visualization (based on VTK)
- VTK - The Visualization Toolkit
- VisIt - Interactive, scalable, visualization, animation and analysis tool
- USD device for ANARI - ANARI USD output for NVIDIA Omniverse
- Blender Add-on - makes ANARI backends available as renderers in blender.
The ANARI Open Source SDK
The ANARI SDK streamlines developer’s’ exploration and use of the API and contains example applications, including a simple interactive viewer demonstrating various ANARI concepts, together with development tools including a debug layer for API stream validation, and a layer for API call tracing and replay. For ANARI implementers, the SDK includes backend layers that implement common functionality such as handling parameters or object lifetime, a Python-based Conformance Test Suite, and the ‘Helide’ ANARI sample implementation that demonstrates API implementation choices and shows how ANARI implementations can integrate with the SDK.
- Rendering Engine Backend Layers
- Adopters can fully implement the API or use convenience layers that implement common functionality such as handling parameters or object lifetime.
- Loadable Debug and Trace Layers
- Debugging layer for application API stream validation. Trace layer for API call tracing + replay.
- Conformance Test Suite
- Based on Python and used in ANARI Adopters Program
- ‘Helide’ Sample Implementation
- Demonstrates possible API implementation choices and shows how adopters can integrate with the SDK
- Example Applications
- Demonstrate the core ANARI concepts and includes a simple interactive viewer
Strong ANARI Industry Support
All layers in the scientific visualization stack are represented in the ANARI eco-system including GPU vendors, rendering engines, visualization libraries, tools and applications.
Industry Support for ANARI
Additional Resources
- Siggraph 2023 BOF: ANARI: The Industry’s First Portable Rendering Engine API
- Presentation: Portable and Scalable 3D Rendering Using ANARI NVIDIA GTC, 2023. (login required)
- Webinar: Khronos ANARI
Webinar, March 2022
- 'A Tour of the ANARI API' presented by Jefferson Amstutz, NVIDIA and ANARI Working Group Chair.
- 'Experiences with Adopting ANARI in Existing Visualization Applications' presented by John Stone, University of Illinois.
- 'How to Create an ANARI Implementation' presented by Johannes Günther, Intel.
- Journal Article: ANARI: A 3D Rendering API Standard . IEEE CiSe, 2022.
Join the ANARI Community
There are several ways to follow the latest ANARI developments, provide feedback on the specification, and get your questions answered.
- To provide feedback on the ANARI Specification, file an issue in the KhronosGroup/ANARI-Docs GitHub project.
- To provide feedback on the ANARI SDK, file an issue in the KhronosGroup/ANARI-SDK GitHub project.
- Share your feedback on Discord Khronos Discord
- Subscribe to the Khronos ANARI Newsletter
Join Khronos. If you would like to participate directly in the ongoing development of the ANARI standard please join Khronos and become a member of the ANARI Working Group.
Join the Khronos Group