u/RolandVyens

Deep EXR for cycles, Layering CG Elements Without Holdouts (custom blender branch)
▲ 11 r/NukeVFX+2 crossposts

Deep EXR for cycles, Layering CG Elements Without Holdouts (custom blender branch)

Deep compositing has been a standard tool in high-end VFX pipelines for years, especially for shots where characters, environments, volumes and FX are rendered separately and need to intersect correctly in comp.

I have been working on Deep EXR output for Cycles as part of Industrial CG Platform, a Blender-based project focused on bringing more film/VFX-oriented rendering and compositing workflows into Blender.

deep compositing using exrs rendered by Industrial CG Platform

In a normal 2D workflow, characters, environments, smoke, particles, hair, and FX can be rendered separately, but their foreground/background relationships usually need to be decided before rendering. This creates a growing network of holdouts and mattes.

A small change — such as adding smoke behind a character — can require several existing layers to be rendered again.

With Deep EXR, each pixel can contain multiple color, alpha, and depth samples. The Cycles renders can therefore be loaded into Nuke with DeepRead, combined using DeepMerge, and flattened only after their spatial relationships have been resolved.

Deep Character ───┐
Deep Environment ─┤
Deep Volume ──────┼─ DeepMerge ─ DeepToImage
Deep Particles ───┘

https://preview.redd.it/90t7vk0q5qjh1.png?width=1035&format=png&auto=webp&s=84e187aec8f15f04ced93f7e5ba0b56ba437309c

The practical result is that separately rendered elements can be recombined without permanently locking their depth order into holdouts.

For example, smoke can pass both behind and in front of a character, particles can intersect other CG elements at different depths, and new elements can be inserted without rebuilding all the surrounding holdouts.

There is also a DeepRecolor workflow, where the Deep render provides the spatial information while a separate 2D render provides the final image data.

This is mainly aimed at complex shots involving hair, fur, volumes, particles, destruction, crowds, or heavily layered environments.

But for the right shots, render layers can be separated around production needs — departments, sampling and revisions — instead of being dictated entirely by foreground/background order.

The implementation is part of Industrial CG Platform. Visit the official Industrial CG Platform homepage, download the current build or grab the source code from GitHub, and integrate Blender into a more precise, low-re-render-cost Nuke deep composite workflow.

reddit.com
u/RolandVyens — 5 days ago
▲ 18 r/NukeVFX+2 crossposts

Upgrading Cycles Light Groups for Feature-Film Compositing

I’m Roland Vyens, a Lighting TD working at VFX 3 years now. My recent work includes Thunderbolts, The Fantastic 4: First Step, Ironheart, BEEF season 2…

Blender is my door opener for my career, and I always dreamed about using blender in day to day work, so I’ve been itching to add indispensable features to blender.

below are my demonstration on what I’ve done so far for light group, and why this is needed.

https://preview.redd.it/bbdzdmdpj5fh1.png?width=1600&format=png&auto=webp&s=2306df405a858029b6a99b87695734848c9ac320

While Blender Lightgroups can output Cycles render passes by light group, obtaining the combined color of a single light is still insufficient in feature-film Nuke compositing. What compositors truly need are Direct and Indirect Lobe passes: the ability to explicitly know how much energy a specific light contributes to Diffuse, Glossy, Transmission, and Volume, and to correct these components without re-rendering the entire frame.

Lightgroups Still Flatten Material Responses

Traditional Lightgroups are suitable for overall adjustments to a light’s exposure or color temperature, but they fail to address more specific issues.

A single Key Light might simultaneously generate the Diffuse on a character’s skin, the Glossy on eyeballs and sweat, and the Transmission through ears and hair. When a compositor only wants to darken the highlights on the face, grading the entire Lightgroup will inadvertently alter the diffuse and transmission, destroying an already approved lighting balance.

Automotive shots are even more sensitive. The softbox reflections, metallic base color, and glass transmission on car paint might originate from the same group of lights, but all three require completely different compositing treatments. A traditional Combined pass cannot provide this level of granularity.

Ultimately, a localized highlight issue is often kicked back to the Lighting department to adjust the lights, re-render, re-transfer the EXR, and then have Comp re-check it. High-sample, hair, volume, and complex reflection shots can subsequently burn through hours or even days of rendering resources.

Splitting Every Light Path Inside the Cycles Kernel

Industrial CG Platform’s Lightgroup Lobe Passes embed the splitting logic directly into Cycles’ integration and pass-writing stages, eliminating the reliance on Material AOVs or post-render color separation.

Each light group can output:

Diffuse_Direct
Diffuse_Indirect
Glossy_Direct
Glossy_Indirect
Transmission_Direct
Transmission_Indirect
Volume_Direct
Volume_Indirect

Once these passes are written into a Multilayer EXR, they can be extracted, adjusted, and additively reconstructed in Nuke using Shuffle nodes. Compositors can precisely modify a single lobe of a specific light while keeping all other material responses untouched.

Keeping Modifications in the Compositing Stage

Lightgroup Lobe Passes keep a massive amount of modifications—which would otherwise require re-renders—firmly in Nuke:

  • Removing a specific light’s Glossy contribution on car paint while preserving the car body’s Diffuse;
  • Dimming the direct highlights on a character’s face without affecting the indirect bounces;
  • Tweaking glass Transmission while keeping surface reflections intact;
  • Suppressing Volume contribution in smoke without touching solid assets;
  • Modifying individual light components after client reviews without launching costly renders.

This drastically reduces the round-trips between Lighting and Comp. Lighters can focus on addressing issues that truly affect light paths, shadows, or sampling quality, while compositors can finalize exposure, color, and local energy balancing.

For shots containing hair, volumes, motion blur, and highly reflective materials, the return on investment of avoiding a single full re-render far outweighs the minor storage cost generated by adding a few EXR passes.

Retain Enough Data to Reduce Meaningless Re-Renders

Lightgroup Lobe Passes prevent critical light transport information from being prematurely flattened during the rendering phase. More controllable passes mean less rework, shorter review loops, and a more stable final delivery.

reddit.com
u/RolandVyens — 28 days ago
▲ 49 r/vfx+1 crossposts

I spent 5 months building a Blender branch for VFX workflows — Deep EXR, Light AOVs, and more

Hi everyone,

I’m Roland, a lighting artist and Blender pipeline tool developer. I’m also the creator of the Industrial-series Blender add-ons, including Industrial AOV Connector.

After around five months of spare-time development, I’m finally ready to share a project I’ve been working on:

Industrial CG Platform

It’s a production-oriented Blender branch focused on advanced VFX pipeline workflows.

The project continues the same direction as my previous Industrial-series tools: making Blender more practical for real shot production, especially around AOVs, lighting, rendering, compositing output, and pipeline workflows.

Industrial AOV Connector helped organize Blender’s existing render data.

But some VFX workflows need more than better output organization — they need source-level control over how render data is generated, structured, and written.

That’s why Industrial CG Platform exists as a Blender-based branch.

Current features include:

  • Deep EXR output
  • Lightgroup split and Light AOV workflows in Cycles
  • Cycles light and world shadow color controls
  • Bundled bQt runtime integration
  • More features under active development

The goal is simple:

Make Blender more practical for VFX shot production.

This is not about replacing Blender. Blender is the foundation.

Industrial CG Platform is built for lighting artists, compositors, TDs, and small studios who want to push Blender deeper into real production workflows.

GitHub:
https://github.com/RolandVyens/industrial-cg-platform

Temporary website:
https://rolandvyens.github.io/industrial-cg-platform-docs/

Discord:
https://discord.com/invite/qGyYXUNTnm

Industrial CG Platform is an independent project derived from Blender.

I’d love to hear feedback from Blender users working in lighting, compositing, rendering, and pipeline development.

u/RolandVyens — 3 months ago