[Bf-cycles] Dso api in Cycles

Brecht Van Lommel brechtvanlommel at gmail.com
Tue May 15 15:42:05 CEST 2018


I don't think bounding boxes and expanding on the first ray hit are so
important anymore. With global illumination you quickly hit objects in all
directions, so there is often no point delaying it, in fact unless the work
scheduling is really good it can be slower overall.

In this Alembic patch a very simple procedural system is included, where
basically a node can expand into as many other nodes as it needs.
https://developer.blender.org/D3089

The tricky part I think is providing a plugin loading system and stable
API, which we don't really have any plans for currently.

The other part is that if this is for integration in Blender, hooking into
Cycles is not necessarily the best solution. If you want to do viewport and
Eevee integration as well, then integrating it into Blender means you don't
need to implement it twice. Further for things like material linking or
other integration with Blender data it's not so obvious how to map between
them.


On Tue, May 15, 2018 at 3:20 PM, Stefan Werner <stewreo at gmail.com> wrote:

> Hello Nicolas,
>
> other than OSL support, there is no customisation API for Cycles. At the
> moment, there is no support for procedural primitives of any kind. Cycles
> supports triangles and hair curves/ribbons. The built-in support of
> subdivision surfaces and displacement is a view-dependent tessellation that
> is performed prior to the actual rendering process.
>
> In theory, it should be possible to extend Cycles with any kind of
> ray/procedural intersection. Procedural objects would need to be able to
> return bounding boxes, respond to ray hit queries and be able to fill out a
> data structure with intersection point, UV coordinates, derivatives, object
> ID etc after an intersection. A full integration would include CUDA and
> OpenCL code paths, which may be hard when your procedural relies on disk
> caches or dynamic memory allocations.
>
> -Stefan
>
> On 15. May 2018, at 15:05, Nicolas Chaverou <nicolas.chaverou at golaem.com>
> wrote:
>
> Hi there,
>
> I looked over the Cycles documentation and its roadmap but could not found
> the answer;
> We'd like to check the feasibility of creating a DSO plugin for Cycles
> which could create delayed geometry at render time; Does anyone know what
> if Cycles has such an API for this ?
>
> Thanks,
> N.
>
> ---
> [image: Nicolas Chaverou - Golaem Crowd Product Manager - Golaem SA]
>
> +33 (0)2 99 27 21 44
> http://www.golaem.com
> _______________________________________________
> Bf-cycles mailing list
> Bf-cycles at blender.org
> https://lists.blender.org/mailman/listinfo/bf-cycles
>
>
>
> _______________________________________________
> Bf-cycles mailing list
> Bf-cycles at blender.org
> https://lists.blender.org/mailman/listinfo/bf-cycles
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.blender.org/pipermail/bf-cycles/attachments/20180515/1bb20a52/attachment.html>


More information about the Bf-cycles mailing list