The latest OSPRay sources are always available at the OSPRay GitHub
repository. The default master
branch should always point to the latest bugfix release.
OSPRay currently supports Linux, Mac OS\ X, and Windows. In addition, before you can build OSPRay you need the following prerequisites:
-
You can clone the latest OSPRay sources via:
git clone https://github.com/RenderKit/ospray.git
-
To build OSPRay you need CMake, any form of C++11 compiler (we recommend using GCC, but also support Clang, MSVC, and Intel® C++ Compiler (icc)), and standard Linux development tools.
-
Additionally you require a copy of the Intel® Implicit SPMD Program Compiler (ISPC), version 1.25.2 or later. Please obtain a release of ISPC from the ISPC downloads page. If ISPC is not found by CMake its location can be hinted with the variable
ISPC_EXECUTABLE
. -
OSPRay builds on top of the Intel Rendering Toolkit (Render Kit) common library (rkcommon). The library provides abstractions for tasking, aligned memory allocation, vector math types, among others. For users who also need to build rkcommon, we recommend the default the Intel Threading Building Blocks (TBB) as tasking system for performance and flexibility reasons. TBB must be built from source when targeting ARM CPUs, or can be built from source as part of the superbuild. Alternatively you can set CMake variable
RKCOMMON_TASKING_SYSTEM
toOpenMP
orInternal
. -
OSPRay also heavily uses Intel [Embree], installing version 4.3.3 or newer is required. If Embree is not found by CMake its location can be hinted with the variable
embree_DIR
. -
OSPRay supports volume rendering (enabled by default via
OSPRAY_ENABLE_VOLUMES
), which heavily uses Intel [Open VKL], version 2.0.1 or newer is required. If Open VKL is not found by CMake its location can be hinted with the variableopenvkl_DIR
, or disableOSPRAY_ENABLE_VOLUMES
. -
OSPRay also provides an optional module implementing the
denoiser
image operation, which is enabled byOSPRAY_MODULE_DENOISER
. This module requires Intel [Open Image Denoise] in version 2.3.0 or newer. You may need to hint the location of the library with the CMake variableOpenImageDenoise_DIR
. -
For the optional MPI modules (enabled by
OSPRAY_MODULE_MPI
), which provide thempiOffload
andmpiDistributed
devices, you need an MPI library and Google Snappy. -
The optional example application, the test suit and benchmarks need some version of OpenGL and GLFW as well as GoogleTest and Google Benchmark
Depending on your Linux distribution you can install these dependencies
using yum
or apt-get
. Some of these packages might already be
installed or might have slightly different names.
Type the following to install the dependencies using yum
:
sudo yum install cmake.x86_64
sudo yum install tbb.x86_64 tbb-devel.x86_64
Type the following to install the dependencies using apt-get
:
sudo apt-get install cmake-curses-gui
sudo apt-get install libtbb-dev
Under Mac OS\ X these dependencies can be installed using MacPorts:
sudo port install cmake tbb
Under Windows please directly use the appropriate installers for CMake, TBB, ISPC (for your Visual Studio version) and Embree.
To build OSPRay's GPU module you need
- a SYCL compiler, either the open source oneAPI DPC++ Compiler 2023-10-26 or the latest Intel oneAPI DPC++/C++ Compiler
- a recent CMake, version 3.25.3 or higher