Archive republication: This technical review originally appeared in Digital Production 05:2019 and was republished online in September 2021. Software behaviour, hardware support and workflow details reflect those historical versions.
This article originally appeared in DP 05 : 2019.
The path tracing render engine Cycles can now be found in many programmes or, as in the case of Cinema 4D, is available as Cycles 4D in the form of a plug-in. However, the main development is still taking place in the Blender environment, which is why a new Blender version is exactly the right time to take a look at the new features and optimisations.
In addition to preview builds for Blender 2.8, versions of Blender 2.79 that incorporated the Cycles improvements could also be downloaded via the build bot. Professionals have therefore been able to benefit from the new features and faster rendering for a long time. With Blender 2.8, the new version of Cycles is now available to a wider audience for the first time.
More power
As usual, Cycles has worked on performance and resource consumption. There have been improvements for both CPU and GPU rendering with OpenCL or CUDA. For example, the graphics card and main processor can now also render an image together with CUDA, whereby a small tile size of 16 x 16 or 32 x 32 pixels, for example, should be optimal for both types of hardware. These settings could therefore disappear in future Blender versions, a fate that has already befallen the Transparent Shadows option, as it is no longer expected to result in a loss of performance on any architecture.
Anyone rendering with CUDA no longer has to worry about an out-of-memory error, as Cycles can now swap data that no longer fits into the graphics memory into the computer’s normal working memory. However, this comes with a performance penalty.
Hardware support decreases
Unfortunately, CUDA rendering can no longer be used with cards from the 4xx and 5xx series, nor on 32-bit systems. OpenCL rendering can no longer be used on Apple systems due to compiler problems and the fact that Apple no longer wishes to support OpenCL in the long term.
Motion Blur
Motion blur is a major issue with path tracing engines. Cycles is able to sample the movement of objects and the camera as finely as desired, which makes simulated long exposure shots possible, for example. Another new feature is that motion blur is also possible with animated scaling.


Cryptomat
Cycles can now output a cryptomat, which allows a rendered image to be segmented. This is much more effective than the previous ID passes for objects and materials and also supports motion blur, depth of field, transparency and anti-aliasing. And as this is an open standard, this information can be used not only with the Blender Compositor, but also in all programmes that support Cryptomatte.
Ambient Occlusion
Instead of a pure shader, Cycles can now also output ambient occlusion (AO) as a colour or float. This means that the feature can finally be used for texturing and in combination with other shaders. Previously, AO either had to be baked or was only available as a pure shader.
Vector Displacement
Cycles supports vector displacement in three dimensions in Blender 2.8. Previously, displacement in Cycles only worked in the direction of the normal using greyscale images, similar to bump maps. Now the three spatial dimensions can be saved separately in the colour channels of an image. This also makes it possible to save entire objects in images (for example, relative to the default cube). This is best done in Object Space, which renders somewhat faster than Tangent Space, which is suitable for animated objects where the displacement must follow the deformation of the surface.
The previous grey displacement input of the output node has been removed and replaced by a blue vector input. There is a separate node for converting the previous one-dimensional displacement to the new vector version.



Dicing Cam
Adaptive subdivisions now subdivide objects less the further they are from the camera’s field of view. This saves computing time and memory, but can lead to a popping effect or flickering shadows in animations. This can be remedied by a separate dicing cam, which covers the entire area of the animation and thus ensures constant tessellation.
Bevel in the shader
Anyone who frequently works with data imported from CAD programmes will know that the bevel modifier cannot generate an accurate edge for every geometry. The bevel shader, on the other hand, does not care about the topology of the model, which is why it can achieve better results in such cases. However, this independence can easily cost 20% render time, which is why you should continue to use the bevel modifier if possible.
Random Walk SSS
The Subsurface Scattering (SSS) shader now supports the random walk method. This is also available for SSS in the Principled BSDF.
It simulates real volume scattering in the object and is particularly suitable for thin objects. Geometry is also displayed more finely.
However, the objects must be closed for this. Overlapping surfaces and holes lead to artefacts with random walk SSS. In addition, more noise can occur in flat areas than with other SSS methods.


Principled, principled, principled
The Principled BSDF has now integrated transparency or alpha and emission, and there are now two more Principled shaders. The Principled Hair BSDF is a hair shader in which the colour of the hair can be specified either directly or via properties of the hair such as the melanin concentration or the absorption coefficient. So on the one hand, you can use it in a more artistic way, but on the other hand you can also use values measured in the real world. Some of you may have already seen the results of this shader, as it was first used by Disney in the film “Zootopia”.
Another new shader in the Principled journey is the Principled Volume BSDF, which simplifies the visualisation of fire and smoke. Previously, volume scatter and volume absorption had to be combined for smoke, and an emission node was added for fire. The Principled BSDF combines all these shaders in one and automatically retrieves the volume data if the object to which the material is assigned is the domain of a fire or smoke simulation.
Conclusion
Cycles has become faster, more resource-efficient and more compatible with common workflows in Blender 2.8. The new Principled Shaders save working time and enable even less technically experienced users to achieve good results. If you also consider the many other new features, it becomes clear that Cycles is on the right track.
