New Features in v2.5

Home / New Features in v2.5

OptiX/RTX Acceleration

The CUDA backend now can utilize RTX hardware raytracing through the OptiX library. The benefit in rendering speed depends on scene complexity (the more triangles in the scene, the bigger the speedup).

It also has the benefit of building the BVH on the GPU, and using less memory on GPUs (around 40%):

In the Blender addon, OptiX is automatically used on compatible RTX GPUs when the CUDA backend is selected.

Non-Uniform Camera Bokeh

Depth of field now has support for non-uniform bokeh distributions, including custom images. In addition, bokehs can now be squashed and stretched anisotropically to simulate anamorphic lenses.

New Materials


The holdout option can be used to make the parts of the film covered by the material transparent.

Holdout material example


The Two-Sided material makes it possible to put different materials on the front- and backfaces of a mesh.

New Textures



The Distort texture is basically a simplified texture mapping, which only allows to translate an input texture. However, the translation offset can be textured (which isn’t possible in the regular texture mapping). So it can be used to perturb one texture with another.

In Blender, it can be found under Add Node > Utils > Distort.

Brick texure now with pseudo-random coloring per brick

Texture Bombing

The new “Bombing” texture can be used to distribute a stencil map over a background, with various randomization options.

Randomized Tiling for Imagemaps

Image textures now have support for Brent Burley’s “Histogram-preserving Blending for Randomized Texture Tiling” (paper). When enabled, the image will be tiled in a randomized fashion instead of in a grid, which can help break up repeating patterns.

Note that it works better with some textures and worse with others. The texture should be very uniform, without outstanding details. On textures that require precise alignment, like the bricks below, it might not work at all:

More information

Randomized 2D and 3D mapping

Texture mappings now have a randomized mode, where rotation, translation and scale can be set to vary between objects. The seed for the variation can either be the object ID (which is randomly assigned by default) or the mesh island ID.

New AOVs

More Fine-Grained AOVs for Diffuse/Glossy/Specular Reflections

Direct/indirect diffuse/glossy/specular AOVs now have variants that only combine the reflected or the transmitted light. Before, it was for example only possible to get an “indirect specular” AOV that contained both reflected and transmitted light – now it’s split into two, so you can adjust e.g. the reflection brightness separately in compositing, without affecting transmitted light.

The scene below shows spheres with the following materials: matte translucent (left), glossy translucent (middle), glass (right) and matte (floor/walls).

Caustic AOV

Caustics that were rendered with light tracing in the Path engine can now be accessed in a separate AOV. Note that this AOV does not contain caustics rendered via the PhotonGI caustics cache.

180° and 360° Stereo Cameras

More information

New Features in the Blender Addon

OptiX Viewport Denoising

Our viewport now has support for the fast OptiX denoiser. When enabled, it is applied to the rendered preview continuously.

New Light Group Editor

Light group brightness and color are now editable in a compositor node group. This makes it possible to easily create multiple lighting moods from one render, and save them automatically after each render iteration with file output nodes.

You can see what’s possible with LuxCore lightgroups in this video by Sharlybg:

Smaller Quality of Life Features

  • A warning is shown if a subdivision modifier is enabled in viewport, but disabled in final render, or if the subdivision level in the viewport is higher than in the final render
  • Added a stop button, to stop a render and run compositing (can be found in the LuxCore section of the N-panel in the image editor)
  • Samples from light tracing are now separate from camera-traced samples, which makes it much easier to set a samples halt condition correctly with light tracing enabled
  • It is now possible again to use different compute devices for viewport and final render (default for viewport: CPU), because users might prefer the lower latency of CPU preview renders even when using the GPU for final rendering

Cycles Node Reader

  • The normal input of material nodes can now be used
  • Basic support for the bump node was added
  • Holdout shaders are now supported

Temperature Setting for Lights

The light properties now offer a temperature slider.

Support for custom normals in any Blender version

A slower fallback for custom normals was added, which is used if they aren’t supported through C++ for a Blender version. A warning is shown if this adds more than 0.3 seconds to the export time of a mesh, so the user can disable custom normals for the mesh if they drive up export time too much and are not needed.

This makes the custom normal support in our Blender addon more future-proof and reliable.

More Example Scenes

Check out the recent additions to our example scenes, “Lynx Spider” and “Oil Puddle”:

New Packs for the LuxCore Online Library

Draviastudio has created more model packs with furniture, plants and other assets, ready to be rendered with LuxCore. They are available on CGTrader.


More than 40 bugs have been fixed in LuxCore and in the Blender addon.

Full Changelog :: Download v2.5

If you earn money using LuxCoreRender, please consider making a donation.