2.7 Volume scatter and HDRI

I’ve been experimenting with the cycles 2.7 volumeterics, and I can get decent godrays working, but my environment lighting seems to have no effect and I’m losing all my range in glossy reflections. Is it just getting absorbed? Itried cranking it up, but it seems to have zero effect.

Does anyone know any methods to get less of a washed out desaturated look from the scattering, while still having a well defined godray?

I have the same problem here… have you found a way around it yet?

Environment obviously go black, as distance is infinity, and any volume density > 0 at infinity absorb all light.

You can make some big closed low poly object around scene to get limit to athmosphere.

To get less washed you must decrease volume density. It will make rays less visible, so increase light intensity same time. Look at real photo with god rays, it have very little density and very light sun.

There is a Homogenous setting under the Volume Sampling rollout. Try Disatance or Equi-Angular. It may make a difference?

Although volumes in cycles don’t use the domain paradigm as fluid and smoke do, it still helps to think of it in those terms, as in establishing a large box in which you want to see volume effects, if you want to use it with environment lighting. You can alternatively create a half dome emission surface textured to simulate environment lighting as well, and volume scatter seems to work okay with that too.

I have exactly the same issue as the topic starter and by much searching, this is the only thread anywhere I have found on this matter, so I would be extremely thankful for any help…

So the enviroment texture is turning black every time a volymetric light is switched on. It is suggested here, that creating a large sphere around the scene would fix this…but nothing changes. What kind of material should the sphere have for this to work? Or is there something special that needs to be inserted into the nodes? of the sphere? And how do you plug the nodes for the environment texture and the volumetric light to funtion simultaneously?

Same problem here.

I don’t have a solution I’m totally happy with yet, but I do have a starting point.

Turn off volume in your world settings. Instead of using world volume make a big cube and put it right in front of your camera. Scale down the side closest to the camera so it is just a little bigger than the camera itself. The angled lines of the cube should “extend” from the angles of your camera. Note - the camera must NOT be inside the cube, but just outside it. Now parent the cube to the camera so it moves and rotates with it. Attach your volume shader to the cube.

Like I said, not ideal, but it’s better than nothing. I’d like to see some sort of fudge factor added for world volume that is basically: “if the light ray hits the environment, treat it as if the length of the ray is X rather than infinity”. You could set it to some large number and it would solve the problem.

This is covered pretty clearly in the documentation for volume shading. Environments and sun lamps are all at infinity. If you put volume scatter on your environment you are essentially telling Blender “my world is an infinite amount of fog.” An environment texture would be on the outside of that volume. I could barely see through a quarter mile of fog on my way to work this morning. I expect an infinite distance of fog would be rather more difficult to penetrate. http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Materials/Volume

Right on the ball. Any light attenuated by an unlimited disance of fog = 0 = black.

Right, but the point is not whether it is mathematically correct but if it is reasonable for 3D graphics. Attenuating ALL atmospheric light does not make sense for Cycles. That’s why I suggested the “distance” value for environment lighting. I don’t think it would be terribly complicated to impliment either :slight_smile:

By the way, I have tried nodes using LightPath, testing if the ray length is greater than some large number - then switching logic based on that condition. It seemed like a reasonable work around, but it didn’t work.

I’ve suggested a distance parameter to the ENV light as well in the past, it’s more difficult than you’d think. I’ll bug someone about it at the next meeting though.

Awesome, thanks!