[Bf-cycles] Volume Rendering for GSoC

Rafael Campos rafaelcdn at gmail.com
Tue Apr 30 05:03:31 CEST 2013

Hi Brecht,

Thanks for the heads up.

On Mon, Apr 29, 2013 at 5:15 PM, Brecht Van Lommel <
brechtvanlommel at pandora.be> wrote:

> Hi Rafael,
> I left volume rendering off the summer of code ideas list because it's
> a big project, and because I'm already planning to work on it this
> summer myself. However there are two quite separate things to be done,
> the shading and texturing parts.
> The shading part is something I'd prefer to tackle myself, to make
> sure it all integrates well with the nodes and closure system, render
> passes, transparency, etc. This gets quite complex if you're not
> familiar with rendering and I want to make sure we get this right from
> the start. There's also already an experimental patch which contains
> volume rendering.
> http://lists.blender.org/pipermail/bf-cycles/2013-April/001266.html
That sounds pretty reasonable - besides, the learning curve to get up to
speed with the entirety of volume rendering might have proven to be overly
steep for GSoC's time frame.

> The other part is texturing, which can be developed independently.
> Basically we need equivalents of the blender internal point density
> and voxel data textures in cycles. For the point density texture the
> points come from particle systems or object vertices, and for the
> voxel data they come either from smoke or some voxel file format.
This is very interesting too - really like the idea. I'm thinking that
simply coding blender internal counterparts on cycles won't cut it - are we
looking for improvements, or are there any known problems or limitations
with the existing code that we would like to address?

> Field3D, OpenVDB and Partio are all interesting libraries to look into
> as this would give us some support for more standard file formats than
> just Blender specific ones. Also interesting would be adding support
> for smoke to export to such file formats, as we can then add support
> for rendering such volume data without the entire thing being in
> memory at once.
This alone is very cool by itself, but a more in-depth survey of the pros
and cons of supporting each of these might be needed (or not?). I'm just
not sure how open ended I should leave this, ie, how much of each I should
evaluate prior to submitting the proposal, or if evaluating each of these
might be part of the summer activities.

> The nice part is that this can be developed even if volume shading is
> not implemented, surfaces can also do lookups in 3D textures. Just
> create a stack of transparent planes and you can test if the texture
> works correctly. So maybe implementing support for volume textures
> could be an interesting project?
> Brecht.

Being an independent project is a great thing, since it has to stand on its
own. Besides, if this is developed alongside the shading part, even better.

Since this is a significant course correction, I have more homework to do,
especially checking out what we currently have on blender internal.

Again, thanks for the tips.


> On Mon, Apr 29, 2013 at 6:56 PM, Rafael Campos <rafaelcdn at gmail.com>
> wrote:
> > I'm in my last year as a Computer Engineering undergraduate, and not as
> > experienced with rendering engines as I had hoped I'd be by now.
> >
> > Nonetheless, I'd really like to tackle Volume Rendering in Cycles for the
> > upcoming GSoC.
> >
> > I believe I understand the challenges - it might be the case that the
> entire
> > project will be too much for one summer, but perhaps there's a good
> enough
> > subset of the problem that can serve as basis for future work, even my
> own.
> >
> > Working out the details of such a proposal is proving to be a challenge,
> > since it isn't trivial to anticipate what the best approaches will be for
> > Cycles - I'm trying to keep interactivity and responsiveness in mind.
> >
> > For now, I'm going over volume data structures (in the lines of field3d
> > (code.google.com/p/field3d/, but probably less general and simpler) and
> > different models for light scattering.
> >
> > Resources I've been using are both code and books for pbrt and pvr, and
> the
> > volume rendering course notes of Siggraph '11
> > (http://magnuswrenninge.com/productionvolumerendering).
> >
> > Any ideas to help me along the way?
> _______________________________________________
> Bf-cycles mailing list
> Bf-cycles at blender.org
> http://lists.blender.org/mailman/listinfo/bf-cycles
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/bf-cycles/attachments/20130430/9a3930f2/attachment.htm 

More information about the Bf-cycles mailing list