On 27 January 2011 22:59, Matt Ebb <m...@mke3.net> wrote: > First, let me clarify, you are talking about the existing light cache > functionality inside blender right, not anything new you've coded? Yes, basically the light cache, but "radiance cache" is just the proper term, to what it is. I currently have a separate radiance cache for single and multiple scattering and build on top of this some artistic control, like blending between both caches and scaling single and multiple scattering radiance independently in a post process. More advanced radiance caching, as for e.g. in [Jarosz08] would be nice at some point, but also hard to do. I guess the trivial method, which I have implemented is a better starting point for now.
> To be clear, it doesn't just cache per object, it caches independently > per object instance in the render - if you've got multiple instances > you want them to be lit differently. I suppose it may be an acceptable > limitation if you want to bake and save lighting that it doesn't work > with instances, but it's not too elegant. Yeah, that was also an issue, why I had no idea how to do this elegant. I guess it really should work for instances, tho it would be possible to just create copies, but then things start to get confusing. > Some alternatives could be: > a) baking radiance to a format that can be loaded back up in the voxel > data texture and rendered using that. That would at least reduce and > make clearer any non-standard behaviour like not being able to share > materials among objects, since it would then be explicit. Hm, I haven't thought of this, just baking to a texture and then doing volume ray casting without shading. That would work, but I also don't know if it is the best workflow. Another side effect is, that this would only work for the current isotropic radiance cache, but rules out any anisotropic caching, which could be implemented in the future. > b) perhaps you have an option to bake selected objects, and their > shaded grids get saved to a nominated folder, by name. Once it's > flagged as being baked (perhaps stored in the material), in a > pre-process per frame, the renderer looks in that folder for the right > files per object/objectinstance and loads up the data directly into > each objectinstance's light cache before rendering if the bake files > exist. If they don't exist, the light cache can remain null, and then > either get cached per frame as is done now, or left un-shaded, or > whatever. I guess this would be the most practical approach,... so I would just create files per object instance with an auto generated filename in the same directory, as the blendfile. And create those in a baking render pass. > I would also recommend that any kind of baking be done consistently > with other types of baking in blender, using the existing render > baking interface. It shouldn't have to introduce yet another > UI/workflow. That's the main thing I am concerned with. So to keep this consistent, I would need to introduce a new bake mode, "volume radiance"? And a special bake render pass for volumes, which then shades selected objects, saves the caches to those files and sets a flag in the material/object. I will try to come up with something, after I have finished multiple scattering. aurel _______________________________________________ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers