[Bf-cycles] Future of the non-progressive renderer and Cycles strand rendering

Brecht Van Lommel brechtvanlommel at pandora.be
Fri Jan 4 14:28:27 CET 2013


The non-progressive integrator indeed needs more work, I got a bit
stuck working on that, need to analyze that from the ground up again.
This is not a simple job, but I'll get back to it at some point this

Regarding the hair features, the short answer is that we want all of
those things. But we have quite some work still to get the basics in
place as well.

If anyone is interested in implementing a good hair BSDF, I'd suggest
following this paper which is used in production and includes good
pseudocode. Implementing a BSDF is fairly isolated change (especially
if done for OSL only to start), so it doesn't require much experience
with Cycles code to work on that.


On Fri, Jan 4, 2013 at 1:34 PM, Matthew Heimlich
<matt.heimlich at gmail.com> wrote:
> Brecht (and others),
> Just wondering what the status is on non-progressive rendering in
> Cycles, and if there are any plans to optimize in the future. In other
> path tracers, most notably Arnold, there are huge gains to be had by
> decentralizing diffuse, AA, glossy, etc. samples. I know it's an
> option right now, but it's currently slower in every case I've thrown
> at it.
> Also I wanted to know if there are any plans to implement a dedicated
> hair shader alongside the upcoming commit for Cycles strand rendering.
> The Kajiya-Kay method would be good. The Marschner method would be
> even better (http://www.cs.cornell.edu/~srm/publications/SG03-hair.pdf).
> I posted a couple of features from Arnold in the Cycles hair thread
> over on Blender Artist that would benefit Cycles rendering greatly if
> implemented. I'll repost them here for the mailing list as well.
> First is a minimum pixel width value. Instead of relying on AA passes
> to clear up hairs, which can take hundreds of passes for thin
> furs/hairs, you set a minimum pixel value. As long as hairs are larger
> than this value, nothing special happens. But as soon as the camera
> zooms out or something else changes automatic alpha transparency kicks
> in along the length of the hair to automatically blend the tips. In
> practice, this more than cuts render times in half. Transparency
> values are linked to auto-transparency, which would be the equivalent
> of max transparency in Cycles.
> Second, the diffuse cache. This is a toggleable option in the
> specialized hair shader that bakes indirect illumination values into
> the hair control points, which are then the only points sampled during
> rendering rather than sampling the entire length of the hair geometry.
> They are then interpolated between. In scenes with more than one
> diffuse bounce, this again results in render times being cut by nearly
> 50%.
> I'd like to hear developer thoughts on these topics, as hair is a huge
> boon to Cycles and I think we can all agree that it should be as fast
> and feature full as we can possibly make it.
> _______________________________________________
> Bf-cycles mailing list
> Bf-cycles at blender.org
> http://lists.blender.org/mailman/listinfo/bf-cycles

More information about the Bf-cycles mailing list