[Bf-committers] Cycles + Embree

Stefan Werner stewreo at gmail.com
Tue Nov 28 12:46:12 CET 2017


Pushed one more branch, cycles_texture_cache this time. Again, work in progress that has been developed for Tangent Animation. CPU only, it’s using OpenImageIO’s TextureSys directly. Unfortunately, it comes with a certain performance hit that I’m hoping to reduce further or maybe even eliminate. In exchange, it allows for rendering a large number of large sized textures in a pre-defined modest memory footprint.

This, the Embree branch and the Cryptomatte branch are features that I would hope to eventually merge into master (2.8?) once they’re stable, feature complete and reviewed.

-Stefan

> On 27. Nov 2017, at 15:43, Stefan Werner <stewreo at gmail.com> wrote:
> 
> Hi everyone,
> 
> I pushed a new branch to git.blender.org <http://git.blender.org/> yesterday, cycles_embree. As the name says, this is an integration of the Embree raytracing kernel into Cycles*. If you are interested in building it, you will need version 2.16.1 or newer of Embree, built with EMBREE_RAY_MASK=ON. To avoid self-shadowing with hair, a slightly patched version of Embree is necessary which you can find here: https://github.com/skwerner/embree/tree/cycles_compatible <https://github.com/skwerner/embree/tree/cycles_compatible>
> 
> For now, this is a CPU only feature, and the real benefits from using Embree come into play with scenes using deformation motion blur. Small or static scenes don’t benefit much. Be aware that that not everything renders 100% identical to regular Cycles when enabling Embree: Object motion blur in Embree does not do arc interpolation but only straight linear motion. Curve and line intersections use a different algorithm and therefore render to a slightly different shape.
> 
> This branch is still a work in progress - the last few (hopefully just a few) bugs are being ironed out, there are still some known instabilities and memory being wasted. I’m in touch with the Embree authors to see if/when we can use a version of Embree without Cycles specific patches and still get identical results to plain Cycles. It should certainly be possible to use Embree’s BVH data and traverse it in OpenCL and CUDA to get fast deformation blur on GPUs too, but that is still a task I haven’t tackled yet at all (volunteers are welcome).
> 
> -Stefan
> 
> * As announced in my BCONF17 talk: https://www.youtube.com/watch?v=_2Ia4h8q3xs <https://www.youtube.com/watch?v=_2Ia4h8q3xs>



More information about the Bf-committers mailing list