← Blender.Today
  • Published 29 Jun 2020

Embree for realtime raytracing?

Can Embree be extended to Eevee for realtime raytracing?

Blenderon
29 Jun 2020

8 Comments

Embree is for CPU and it is not as performant as the GPU rendering (CUDA/OPENCL)

Blenderon Author

* @Kdaf * Update will come to use it with GPU devtalk.blender.org/t/embree-for-gpu/7639

After, could it be extended to Eevee?

* @Blenderon * I dont think so, cause Eevee is rasterized, a totally different technology. The best (performance) will be to have the rasterization and the raytracing in the same render.

christianclavet

* @Blenderon * It could be possibly be done (assign a renderer per pass). You would use EEVEE for the diffuse pass, and Cycles (using Embree) for the reflection and shadow passes. But this approach (Hybrid rendering) is not even proposed now. Perhaps in Blender 5.0? 😉

Also the proposed patch, will REQUIRE that your card support CUDA to have BVH building done on the GPU. So NVIDIA only. If another patch would use NVidia RT cores, it would make it even faster, but you would need to have the hardware.

1
Blenderon Author

I was thinking realtime raytracing like in Unreal. It's only on Nvidia device but hopefully in future it will run on any.

Blenderon Author

* @Kdaf * Unreal is raster render I believe yet it has solution for realtime raytracing.

christianclavet

* @Blenderon * "realtime" raytracing in Unreal use RTcores in NVidia and for the moment will almost only run on this type of hardware (GeForce RTX 2XXX). For the others it's not supported. Some work some to be in progress to make RTX functions work on older card, but but slow down a lot since the RTCore are not present.

For this to work, they rasterize the scene, and their renderer can do passes using the raytracing features of the card. Standardization is on the way...

christianclavet

* @Blenderon * Unreal uses an hybrid renderer. It use rasterisation and combine it with raytraced passes.