Volumetric Rendering Bug

Hi All,

I started a thread here so I could attach some files.

You need this build of Blender to use the attacvhed BLEND file.

I have done a simple test using a single sphere as a point distribution object and using a cube for the volume.
One of the bugs I discovered is that the ALPHA channel is not “real”. I am attching an image to illustrate this. The alpha is of the cube, not the actual volume. I call this bug, because it inhibits usability but I do realize this feature is still in development.


ras_volumetric_shader.blend (218 KB)

I also have noticed, that there is no way to “scale” the volume internally. Part of the cloud always touches the edge of my cube. There needs to be a volumetric scale parameter somewhere.

I also could not find a way to animate the offset of the cloud over time. I tried MgOff for the PointDensity texture and that did not work.

I tried ofxX,Y andZ and that did work, but the volumetric texture is not infinite/tilable and after a short time the entire cloud has wandered out of my volume cube.

Also the sizeX,Y and Z parameters should scale the cloud, but they just seem to issue an erroneous kind of offset and the cloud difts off the bottom of my cube volume area.

Just playing with this build, the idea is great, but it does seem to have some usability issues.

I also offer up this image as well.

It seems volumetrics do not play well with shadows and or reflections. The image below depicts a single point volumetric being generated by a particle system in a volume of a cube. The cube is setting on a plane which has a color of red. but reflection is turned all the way on (i.e. 1.0). While we can see the reflection of the volumetric particle outside the cube, the parts inside the volume are getting traced using the diffuse color of the plane rather than the reflection color of the plane. This is probably related to the alpha problem I have mentioned as well.


ras_volumetric_particle_shader.blend (166 KB)

Heya, as I’m sure you know this is still under heavy development :slight_smile:

I’ve committed a new ‘Alpha’ button already which generates an alpha channel - it’s just a temporary measure for now, I’d rather have it working seamlessly but blender’s premul option is causing problems - needs more investigation to get it working seamlessly.

The offset/scale/etc should work ok, though I’ve been testing the particles option much better than object vertices. Keep in mind the point density caching source will have an effect here, and whether it’s mapped to local/global/etc. Yes this needs to be documented better, just haven’t had time yet and any offers of help are welcome :wink:

The other things involving reflections etc, i’ll take a look at eventually - thanks for the test file. I think it’s related to something else that’s been reported. BTW I don’t read this section of the forum that much these days, it would be a good idea to post bug reports in the thread in News & Discussion since I’m at least subscribed to that one.



The main reason I started a thread in this forum was so I could attach BLEND files. News & Discussion and even Python does not allow this.

I am going to revisit the offset/scale and keep in mind the local/global settings to see if I can put together a better demo file.

np, well I’m watching this thread now too anyway, so fire away :slight_smile:

I tried all the settings with global and object space and they all produce the same error. When the object offset is animated for the texture, it eventually wanders out of the volume.

I hope the attached file helps you debug.


ras_volumetric_single_vertex_particle.blend (169 KB)

On a whim, I reassigned the Point Density texture to a standard Marble texture. When I did this, the standard offset started working as expected. It is fairly close, but the marble texture looks like it is projected onto the surface of the sphere instead of being projected outwards from the vertex of the particle.


ras_volumetric_marble_texture.blend (254 KB)

I found a possible work around for the offset bug I am experiencing.

Set the volume to use an object for it’s vertex source.
Parent the camera and the vertex source objects to the volume.
Animate the xOffset of the point density material to move from 0-10 over time.
Then animate the volume to move from 0-10 along the same axis (x).

By synchronising these moves, you can prevent the cloud from wandering out of the volume.

This causes the point density to appear to evolve over time while remaining in the same location on the screen.

So it appears that the bug in the offset animation needs to take into account the position of the camera and the vertex source.

If you will render out the attached file for a few frames you will see a nice volumetric that evolves over time.


ras_volumetric_move_with_offset.blend (262 KB)