<div dir="ltr"><div>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.</div><div><br></div><div>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.<br></div><div><a href="https://developer.blender.org/D3089" target="_blank">https://developer.blender.org/<wbr>D3089</a></div><div><br></div><div>The tricky part I think is providing a plugin loading system and stable API, which we don't really have any plans for currently.</div><div><br></div><div>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.<br></div><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 15, 2018 at 3:20 PM, Stefan Werner <span dir="ltr"><<a href="mailto:stewreo@gmail.com" target="_blank">stewreo@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space">Hello Nicolas,<div><br></div><div>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.</div><div><br></div><div>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. </div><div><br></div><div>-Stefan</div><div><div><br><blockquote type="cite"><div><div class="m_-1966056003783942397h5"><div>On 15. May 2018, at 15:05, Nicolas Chaverou <<a href="mailto:nicolas.chaverou@golaem.com" target="_blank">nicolas.chaverou@golaem.com</a>> wrote:</div><br class="m_-1966056003783942397m_-66760794466688786Apple-interchange-newline"></div></div><div><div><div class="m_-1966056003783942397h5"><div dir="ltr"><div>Hi there,</div><div><br></div><div>I looked over the Cycles documentation and its roadmap but could not found the answer;</div><div>
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 ?</div><div><br></div><div>Thanks,</div><div>N.<br></div><div><br></div><div><div class="m_-1966056003783942397m_-66760794466688786gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr">---<br><img alt="Nicolas Chaverou - Golaem Crowd Product Manager - Golaem SA" width="300" height="35"><br>
<font size="1px" face="Calibri"> </font><br>

<font size="2px" face="Calibri">+33 (0)2 99 27 21 44</font><br>
<font size="2px" face="Calibri"><a href="http://www.golaem.com/" target="_blank">http://www.golaem.com</a></font><br>

</div></div></div></div></div>
</div></div></div>
______________________________<wbr>_________________<br>Bf-cycles mailing list<br><a href="mailto:Bf-cycles@blender.org" target="_blank">Bf-cycles@blender.org</a><br><a href="https://lists.blender.org/mailman/listinfo/bf-cycles" target="_blank">https://lists.blender.org/mail<wbr>man/listinfo/bf-cycles</a><br></div></blockquote></div><br></div></div><br>______________________________<wbr>_________________<br>
Bf-cycles mailing list<br>
<a href="mailto:Bf-cycles@blender.org" target="_blank">Bf-cycles@blender.org</a><br>
<a href="https://lists.blender.org/mailman/listinfo/bf-cycles" rel="noreferrer" target="_blank">https://lists.blender.org/mail<wbr>man/listinfo/bf-cycles</a><br>
<br></blockquote></div><br></div></div>