Intel oneAPI Rendering Training Modules
Learn the Essentials of Intel® OSPRay
This foundational learning path introduces Intel® oneAPI, the Intel® oneAPI Rendering Toolkit components, and explores Intel® OSPRay, an industry-leading, ray-tracing rendering library. At a high level, see how to use the Intel OSPRay API to create high-fidelity photorealistic images. Step-by-step instructions begin with creating scenes using simple geometries, and then progress through samples to demonstrate how you can import more complicated geometries into your target scene.
After you complete the four modules, you will be able to:
- Explain how Intel® oneAPI aligns with the rendering capabilities of the Intel® oneAPI Rendering Toolkit, including ray-surface hit testing, volumetric space iteration, and image denoise.
- Initialize the renderer, render a single frame, and release system resources.
- Set up scivis and pathtracer rendering modes within the code and via the command line of the executable run script, run.sh.
- Use a basic OBJ asset file loader inside a loadObj() wrapper function to transfer data for geometry, materials, and lighting effects from the file and into the appropriate Intel OSPRay API function calls.

Module 0
Introduction to JupyterLab* and Notebooks
An introduction to the JupyterLab* computation environment where coding, compilation, and running of the programs will take place. Note If you are already familiar with JupyterLab*, you may skip this module.

Module 1
Introduction to the oneAPI Programming Model and Intel® oneAPI Rendering Toolkit
- Learn how oneAPI can help solve the challenges of programming in a heterogeneous world.
- Understand how the Intel oneAPI Rendering Toolkit enables rapid development of performant visualization applications.
- Get an orientation to key rendering capabilities such as ray-surface hit testing, volumetric space iteration, and denoising images.

Module 2
Introduction to Intel® OSPRay
- Familiarize yourself with the Intel® OSPRay renderer and API.
- Initialize the renderer and other supporting resources.
- Add simplified geometry data and render a single frame using instructions within the ospTutorial sample.
- Shutdown the renderer and free supporting resources.

Module 3
ospExamples - Practice Intel® OSPRay Techniques with Procedural Scenes
- Practice rendering mode setup techniques using provided code and detailed code comments.
- Set up OSPRay rendering of procedural scenes using the scivis and pathtracer rendering modes.
- Switch rendering modes within the code and use a command-line option in the sample executable run script, run.sh.
- Select a different scene with a command-line option passed to the sample executable run script, run.sh.

Module 4
Asset Loading Using an OBJ/MTL File and the loadObj() Function
- Understand OSPRay constructs related to loading objects, and then manipulate data to achieve various effects.
- Modify command line options of the executable run script, run.sh, to load different OBJ files.
- Use the loadObj() wrapper function to transfer data for geometry, materials, and lighting effects from the OBJ file and into the appropriate OSPRay API function calls.
- Modify command line options of the executable run script, run.sh, to change the camera position to account for the different object sizes in the OBJ file.