Intel Embree (original) (raw)

None

Model Courtesy of Martin Lubich

None

Crunch Cup by Peter Ang rendered with Corona Renderer.

None

Interiour Room model by John Cedric Gomez Macabantad. Rendered by Khalid Abu Eid using SimLab Composer.

Previous Next

High Performance Ray Tracing

Intel® Embree is a high-performance ray tracing library developed at Intel which supports x86 CPUs under Linux, macOS, and Windows; ARM CPUs on macOS; as well as Intel® Arc™ GPUs under Linux and Windows. Embree targets graphics application developers to improve the performance of photo-realistic rendering applications and is optimized towards production rendering. Embree is released as open source under the Apache 2.0 License.

Current Release: v4.4

Why Embree?

Hardware accelerated GPU ray tracing

Embree supports hardware accelerated ray tracing on Intel GPUs through the SYCL programming language for excellent GPU rendering performance.

Highest Performance

Embree provides highest performance for your CPU renderer by using state of the art high quality data structures and algorithms, parallelized and optimized for modern instruction sets, such as AVX2. Integrating Embree can double the performance of your CPU renderer.

Easy to use

Embree provides an easy to use API and can get integrated into rendering applications by just replacing the ray tracing operation.

Feature rich

Embree provides all features required for professional rendering, including various primitive types (including advanced hair primitives), motion blur, multi-level instancing, etc.

Cross Platform

Embree supports Windows, Linux, and macOS, as well as support for x86 CPUs, ARM CPUs, and Intel GPUs

Embree Team receives Scientific & Technical Achievement Award!

The award recognizes Intel® Embree for its geometric rendering in contributing innovation in significant and lasting ways to the moviemaking process.

Award recipients are Sven Woop, Carsten Benthin, Attila Afra, Manfred Ernst and Ingo Wald.

Sr. Director of Intel® Advanced Rendering & Visualization Jim (James L.) Jeffers

See the Scientific & Technical Achievement Awards 2021 page

Embree Features

Advanced Hair Geometry

Various flavors of hair primitives are supported, including flat, round, and normal oriented curves, all supported with different basis functions, such as linear, Bézier, Hermite, Catmull-Rom, and B-Spline.

The flat curve type is designed to achieve highest rendering performance for distance hair, round curves can be used to render accurate hair closeups, and normal oriented curves are often used to render grass-type geometry.

Choosing a basis function that matches the application allows Embree to share vertex buffers for memory savings.

Motion Blur

Embree supports advanced motion blur to render dynamic content. Multi-segment motion blur can be used to render deforming meshes, transformation blur allows to blur entire geometry instances, and quaternion blur allows blurred instance rotations.

An advanced 4D data structure represents spatial and temporal aspects of motion and allows highest levels of performance.

Dynamic Scenes

Dynamic scene support allows previews to be rendered interactively. Embree uses morton code algorithms to rapidly rebuild data structures for highly dynamic content.

Multi-Level Instancing

Multi-level instancing allows rendering of highly complex outdoor scenes with moderate memory usage.

This example show a rendering of the complex Moana Island Scene using instancing accelerated by Embree.

SYCL support makes GPU programming easy

Embree builds on the SYCL cross platform abstraction layer to support hardware acclerated ray tracing on the GPU. Using Embree and SYCL you can write a single renderer in C++, that runs on the both the CPU and GPU with excellent performance. Using C++ as a language simplifies porting existing CPU rendering code and makes programming the GPU easy.

Intel® Embree is used by