[Bf-cycles] Cycles Standalone

John Haddon thehaddonyoof at gmail.com
Wed Aug 21 19:39:20 CEST 2013


Hello all,

I'm new to the list, having been lured here by the promise of a standalone
renderer with OSL support :) In the past I've written Maya->RenderMan
exporters and procedurals and shaders for various renderers. At the moment
I'm working on an open source node-graph-based scene assembly tool, which
is very much in its infancy but can already output simple scenes for
3delight and Arnold (https://github.com/ImageEngine/gaffer). I'd love for
it to also support one of the open source renderers, and I really want to
work with OSL, so the Cycles announcement was very interesting to me.

I'd like to suggest that rather than focus on what the file format should
be, a better focus would be on defining a simple API for describing scenes
to Cycles. That API could then be implemented in two modes - one for
writing a file in whatever file format is chosen, and another for talking
directly to an embedded renderer and sending updates to it for interactive
rerendering. Having the same API for both is very convenient for anyone
integrating Cycles, and the file format parser can then just be implemented
in terms of making calls to the API. Although I've worked a lot with the
RenderMan API, my feeling is that it doesn't lend itself very well to
introspection of the current scene and sending interactive updates.
Attributes stacks don't seem so handy these days, getting in the way of
instancing things on the fly and sharing shaders across locations - and
it's pretty easy to simulate a stack on top of a stackless system if you
need to.

My preference for an API would be something with direct access to a flat
list of geometry and shader nodes and the ability to introspect and set
their properties. Querying and setting the available properties through a
generic interface for all nodes could provide a layer of insulation from
the inevitable addition and removal of settings as the renderer develops,
rather than just exposing the internals directly. My apologies if any of
this exists already - I had a wander around the cycles code and couldn't
see a simple API aimed at renderer integration, but may just have been
blind.

Thanks for the renderer, and for the standalone initiative...

Cheers...
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/bf-cycles/attachments/20130821/084b978d/attachment.htm 


More information about the Bf-cycles mailing list