Blender 2.70: Cycles
Initial support for volume rendering is available, though this is a work in progress.
Volume rendering can be used to render effects like fire, smoke, mist, absorption in glass, and many other effects that can't be represented by surface meshes alone.
To set up a volume, you create a mesh that defines the bounds within which the volume exists. In the material you typically remove the surface nodes and instead connect volume nodes to define the shading inside the volume. For effects such as absorption in glass you can use both a surface and volume shader. The world can also use a volume shader to create effects such as mist.
There are currently three shader nodes for rendering volumes:
- Volume Absorption: Absorbs light as it passes through the volume, can be used for colored glass absorption.
- Volume Scatter: Used for smoke, mist, etc. (when creating colored smoke, add to an Absoption shader of the same color)
- Emission: The old shader plugged into the Volume socket of the output node can be used to emit light.
See the full Volume Documentation for more information.
CPU render performance was improved by optimizing several parts with SSE code :
- Noise, Voronoi and Image textures. (a92abf5089e1, 96903508bc3f, 47c5898fa15b)
- Hair rendering (BVH Traversal and Curve primitives). (b886c26d1f70, bd438de8c6be)
Open Shading Language
OSL has been updated to version 1.4.x. This gives a 10-30% performance improvement and new features such as Simplex noise.
- Direct and Indirect samples can now be clamped individually, to reduce fireflies (indirect), while keeping direct highlights. (e29a45b396cc)
- Added an "Alpha Threshold" value for render layers. Z, Index, normal, UV and vector passes are only affected by surfaces with alpha transparency equal to or higher than this threshold. With value 0.0 the first surface hit will always write to these passes, regardless of transparency. With higher values surfaces that are mostly transparent can be skipped until an opaque surface is encountered. (a41648c1dc58f)