Blender Git Loki
Git Commits -> Revision 78c50f7
September 26, 2008, 01:54 (GMT) |
Wheee! Initial commit for supporting rendering particles directly as volume density. It works by looking up how many particles are within a specified radius of the currently shaded point and using that to calculate density (which is used just as any other measure of density would be). http://mke3.net/blender/devel/rendering/volumetrics/smoke_test01.mov http://mke3.net/blender/devel/rendering/volumetrics/smoke_test01.blend Right now it's an early implementation, just to see that it can work - it may end up changing quite a bit. Currently, it's just a single switch on the volume material - it looks up all particles in the scene for density at the current shaded point in world space (so the volume region must enclose the particles in order to render them. This will probably change - one idea I have is to make the particle density estimation a procedural texture with options for: * the object and particle system to use * the origin of the co-ordinate system, i.e. object center, world space, etc. This would allow you in a sense, to instance particle systems for render - you only need to bake one particle system, but you can render it anywhere. Anyway, plenty of work to do here, firstly on getting a nice density evaluation with falloff etc... |
Commit Details:
Full Hash: 78c50f7af1d694252984885e0eac87682647e2d2
SVN Revision: 16734
Parent Commit: 707f2e3
Lines Changed: +82, -7
7 Modified Paths:
/source/blender/makesdna/DNA_material_types.h (+2, -1) (Diff)
/source/blender/render/intern/include/renderdatabase.h (+2, -0) (Diff)
/source/blender/render/intern/include/render_types.h (+12, -0) (Diff)
/source/blender/render/intern/source/convertblender.c (+11, -2) (Diff)
/source/blender/render/intern/source/renderdatabase.c (+15, -0) (Diff)
/source/blender/render/intern/source/volumetric.c (+31, -4) (Diff)
/source/blender/src/buttons_shading.c (+9, -0) (Diff)
/source/blender/render/intern/include/renderdatabase.h (+2, -0) (Diff)
/source/blender/render/intern/include/render_types.h (+12, -0) (Diff)
/source/blender/render/intern/source/convertblender.c (+11, -2) (Diff)
/source/blender/render/intern/source/renderdatabase.c (+15, -0) (Diff)
/source/blender/render/intern/source/volumetric.c (+31, -4) (Diff)
/source/blender/src/buttons_shading.c (+9, -0) (Diff)