Guerilla 2.3 now available!

Home / Uncategorized / Guerilla 2.3 now available!


New in Guerilla 2.3


Support of Intel' Embree raytracing kernels!

Guerilla now supports Intel' Embree, which delivers vast improvement in raytracing performances, espacially for hair and curves raytracing.
Up to 2x speedup on curves and 40% on triangles.
Embree can be enabled on a per object basis using theAttributes > Raytracing > Embree  checkbox.

Volumetric objects such as voxel grids can be turned into lights to improve incandescence sampling.

This allows turning incandescence on any volumetric object, check the LightAttributes node Light > Enabled (or use the MeshLight node) to allow the volumetric to be importance sampled as a light.
Use the Light > Volume Resolution to adjust the emission grid resolution, and Light > Volume Super Sampling to improve the sampler accuracy.

Many performance improvements in pure rendering performance and in rendering startup

New Volume > Detect Empty Spaces attribute allow culling empty voxel grid spaces and
improve raymarching efficency

New light sampling mode in Render Settings > Shading > Light Sampling named Many Lights.

This sampling mode allows rendering with millions of light in the same scene.

Render farm Checkpoints, Preview and Extended Sampling Target.

Use checkpoints to take advantage of prehemptible could instances. During
rendering, checkpoints are regularly saved. In the event a render is stopped mid
course, the rendering can be restarted from the last checkpoint.
Use Preview to save the current state of the render at a fixed time.
Use Extented Sampling Target to allow restarting a finished render to an
increased rendering quality.

Improved opacity culling, for semi transparent geometries such as hair or leaves with
alpha maps

USD improvements

Point-instancer prototypes shading improved.
Instanced prototypes can now be fullly shaded and will be instanced with their
"instanceId" attribute on USD point-instancer created primitives
The instanceId attribute can be retrived directly in the prototypes shaders to
allow for color variation control, etc.

Motion Blur Amount now also controls particles motion blur and shape vertices
motion blur

Camera and MayaCamera Focus Orientation and Tilt to allow changing the focus
plane orientation. This allows keeping the focus plane aligned on objects which
are not aligned with the screen plane.


New in Guerilla 2.2



  • "Hair2" brute force hair/fur shader, using dual scattering for faster evaluation
  • Continuous level of detail transition from bump-mapping to roughness
  • Layering of shaders input parameters
  • RenderGraphs and RenderGraphNodes Active Contexts expressions
  • Parametric Bokeh shape
  • Experimental support of looks
  • Improved sampling noise quality
Color Management
  • Full OCIO color management
  • Intel Image Denoiser
  • Experimental support of LPEs in OpenEXR/Id
  • EYE_SWITCH environment variable defined for stereoscopy to be used in the RenderPass File Pattern
  • CircleOfConfusion AOV
  • USD Import
  • Reference Options allows layering of Alembic files
  • Per SubPrimitive Visibility
  • Texture paths now support the token, and the ### token for animated textures
  • ST Mode to switch texture coordinates from other coordinate systems such as Maya, Golaem ...
  • Texture differentials controls
  • General Light Color, Intensity and Exponent per RenderPass
  • Simple light shader, without clipping information, to allow for altering the final look of any light
Plugins and Procedurals
  • API for shading operators
  • API for bsdfs, using Intel ispc
  • RibGen SDK class documentation
  • GuerillaTags metadata in OpenVDB is supported
  • XGen Interactive Groom Splines procedural
  • hash1, hash3 and hashu24 SL hashing functions
  • Procedurals parameters are now instanciable, instead of always instanciated
  • Procedurals can now use the RxGenerateAttributes function to assign attributes using RenderGraphs
Internals & Tweaks
  • Render engine deeply refactored for massively improved performances
  • The whole compilation toolchain was rebuilt
  • Dynamic scenes evaluation
  • RenderView is less laggy
  • Added caching policy to keep the number of geometry files open low
  • GUERILLA_SAMPLES environment variable to override the default Guerilla Samples location (e.g. for network installations)
  • When adding an asset to your project, a dialog offers to rewrite the filename with an environment variable (e.g. "$(Workspace)/images/a.jpg")
  • File attributes file dialog opens at the same location
  • Documentation on error codes in guerilla --help and render --help
  • Many bugfixes, better error management

New in Guerilla 2.1


Besides a huge work on Optimization and Stability, Guerilla 2.1 comes with a great number of new features.

The Key Features of this new production-proven release (Minuscule 2: Mandibles from Far Away, Playmobil: The Movie, Ford v. Ferrari) are:

New Procedural System
Give more power to creativity with the new procedural system which now counts 4 depth levels of instantiation

Memory Footprint
Reduce the memory footprint of your instances composed of several objects with the Group Instance Prims options of the instances procedural

OCIO management
OCIO management is fully supported with looks and input LUTs, color picker and color boxes

Asynchronous OpenGL View
New Asynchronous OpenGL View to prevent UI freezes and to load geometries as you work

Particles Cache
Particles cache can use multiple attributes to change scale, colors, ...

Add & merge geometry on the fly
Add & merge geometry on the fly at the ultimate step of your lighting with the new node ArchRef. Using the intuitive parenting, you can easily generate instances

Bayesian Collaborative Denoiser
The new Bayesian Collaborative Denoiser is now available (BCD paper  from Malik Boughida and Tamy Boubekeur )

Lights with Multiple Steps of Motion Blur
Lights now have multiple steps of motion blur instead of just 2

Dynamically Add Tags from a Rendergraph
New SetTags RenderGraph node to dynamically add Tags from a Rendergraph

Volume Displacement shader

You can now use TriPlanar with a reference Position and Normal on animated shapes

Video Tutorials
A set of video tutorials, related to Bidirectional Path tracing, Lookdev, Lighting, LPE, Fur and Procedural Instances in Guerilla 2.0+ / 2.1+ is now available

New in Guerilla 2.0


Render Engine redesigned!

The Path Tracing Engine was entirely redesigned to provide more features, simpler setup and ultimately gain performances from new computer architectures.

Adaptive Sampling

The Engine now integrates Adaptive Sampling, which allows to keep on sampling pixels that haven't reached the required quality.

This results in:

  • final renders have a uniform noise which is better for frame to frame consistency
  • parts of the image that are easier to sample will stop sampling earlier, which allows the renderer to focus on more difficult parts of the image.

Interactive Rendering

The Render View and the Viewports can be switched to Interactive Raytracing.

Then, changing the scene automatically restarts the rendering and let you play interactively with the lighting, and all shading parameters.

Also, this allows you to navigate through scenes that couldn't be rendered in OpenGL, such as forests of millions of trees, crowds of furry creatures and more!

Bidirectional Path Tracing

Bidirectional is super helpful to render complex illumination setups, such as indoors lit by exterior lights, wall lamps, and even caustics.

Just increase the Light Max depth to enable the Bidirectional Engine!

Improved materials

We've rewritten the Surface and Volume shaders, as Surface2 and Volume2.

Surface2 now features the widely used GGX specular lobe, with emphasize on energy conservation in all situations. Less edge artefacts and more natural look and feel.

Light Path Expressions

AOVs now use OpenShadingLanguage Light Path Expressions.

This offers a much wider range of possible AOVs to render, and we've kept this easy artist friendly if you don't care about that level of control.

For instance, you can render color ids or diffuse color after many mirror bounces in a finger snap!

Russian Roulette

The Russian Roulette enables rendering without worrying about the bounces depth.

Setup your indoor scene to maximum bounces, and let the Russian Roulette take care of cutting the ray depth where it is useful.

Deeper RenderGraph

The RenderGraph is now even more powerful!

Use the RenderGraph to generate instances, to add lights procedurally, and to setup Procedurals such as Hair and Fur on characters or creatures and use them on shots without the classic integration burden.

And so much more...





Guerilla Render supports OpenEXR/Id, an innovative extension over OpenEXR to store masks and colors on a per object basis. The provided OpenFX plugins read OpenEXR/Id images in compositing softwares and allow you to select invidual objects using straight names, and even regular expressions.

The original poster, contribution of Mercenaries Engineering to SIGGRAPH 2016, is available for download.


Guerilla Render Surface shader for The Foundry Mari


The Surface shader is available for Mari, allowing you to paint all Surface maps directly in Mari and view the result in realtime!



With and without denoiser. Credit: Lee Perry Smith scan

Guerilla Render includes an experimental denoiser and supports the InnoBright Altus denoiser

Learn more



Golaem 4.3.2 is now available and compatible with Guerilla Render 1.4. Its new procedural rendering plugin for Guerilla Render is available on demand on Golaem website

Integrated in Autodesk Maya, Golaem makes it easy and affordable to populate worlds with directable digital characters, from a few to thousands. Artists from all over the globe use Golaem to bring life to commercials, episodic productions, feature films and games

Learn more

New displacement + bump mode


Without and with vector displacement. The model is rendered with only two steps of subdivision

Credit : Cedric Lepiller

Achieve the displacement or the vector displacement and the bump with a single texture.

Learn more



The Archives sample renders instances of an archive which contain a teapot and its shading and subdivison setup

An archive is a .rib file filled with static, ready to render, set of objects, lights and shaders. The objects include the overrides set by the RenderGraph at the time of the archive creation.

This workflow can be used to pack a large set of objects (like a large static set) in a single file and continue to work with a lightweight Guerilla project.

Learn more

Shader inspection



Click the Eye widget to see in render the shader in action!
For instance, inspect the st node to sneak peek the geo UVs instead of the texture

Learn more

New Hair shader


A new physically based yet artist controllable hair shader
Fast multiple scattering to simulate diffuse in light colored hair

Learn more

Flakes normal shading node

Antialiased flakes shader for car paints

Toon shader

Easily render outlines and cells

Better instances



Pick instances in the viewport and in the render view
Override specific instances with the RenderGraph
Improved performances to fit even more objects in the scene

Massive number of lights


More than hundred of thousands of lights!
Cutoff threshold to reduce rendering time

Reduced memory footprint

Better geometry compression ratios
Less memory means more polys in your scenes!

XGen support for curves, instances and spheres

Support of the new Autodesk Maya' XGen procedural

Golaem Crowd


Support of the Golaem Crowd procedural


Support of OpenColorIO
New display LUTs

Motion blurred voxel fluids

Voxel velocity is now used to properly motion blur voxel fluids



Super fast opacity for transparent leaves, hairs, particles..
Global performances enhancement : faster, smaller, nicer.

Raytrace all kind of volumetrics (Maya Fluid, OpenVDB, FumeFX, objects filled with volume, infinit volumes) using our easy to use Volume shader, including a black body model.

Render all point cache file formats, (abc, bgeo, bin..) with any shape (points, streaks, blobbies, spheres, sprites..).
Introduce a dedicacted Particle shader.

Improve the render quality for indoor scenes.

Procedural geometry
Generate million of hairs, fur, grass.. using our new Procedural.
Use your Yeti(R) fur files directly in Guerilla.

Python scripting
All the Guerilla API is now scriptable in Python.

Checkout the nice and up-to-date documentation.

Deep Image
Render OpenEXR 2.0 deep images.

New powerful shaders
Rough glass, Eye shader, Volume and Particles. As usual, versatile, ready and easy to use.

Image picker
Select, inspect, drag’n drop geometry directly in the Render View.

Lens shader
Introduce new programmable camera lens shaders (lens distortion, fisheye, latlong projection).

HTTP monitor
Monitor your render nodes in your web browser. Watch the rendering live. Use the JSON api.