Page MenuHome

Cycles: Implement render passes that contain all lighting from lights in a specified group
Needs ReviewPublic

Authored by Lukas Stockner (lukasstockner97) on Aug 15 2018, 2:33 AM.

Details

Summary

This can currently be done using renderlayers, but doing it in one render can be faster.

These passes are useful because they make it easy to tweak the lighting in scenes after rendering has finished.

There still are some ToDos left - the biggest limitation is the maximum of 8 light groups, but this is a tradeoff between number of passes and kernel memory usage.

Another question is how to handle denoising for these layers.

Depends on D3538 since it also has multiple named passes of the same type.

Diff Detail

Repository
rB Blender
Branch
lightgroups (branched from master)
Build Status
Buildable 4199
Build 4199: arc lint + arc unit

Event Timeline

Update to current master and changed from Groups to Collections.

Also adds some features, e.g. including the world background in a group.

Juan Gea (juang3d) added a comment.EditedAug 24 2019, 4:07 PM

Great feature.

I've been testing it, right now I find two things:

1.- It does not work well with adaptive sampling (I imagine AS needs some kind of tuning to support this)

2.- Clamping does not affect light group passes, so I'm getting fireflies out of it.

3.- Less important for a first implementation in master IMO, but somewhat important, it does not recognise emitter shaders as lights in the light groups

It seems also that this patch introduced a bug that when a light is inside a collection, and you enable compositing and save the file the collection with the light looses their users and disappears from the scene, the light it's still in the blend file, but since there is no collection it's not instanced in the scene.

@Martin Felke (scorpion81) did a small workwround for the time being for our build, but the problem seems to be bigger, he can explain what he did to fix this for the time being.

Also I assume this was introduced by this patch because we did not had this problem before, but maybe it's was a coincidence with a bug in master?

@Lukas Stockner (lukasstockner97) can you try to fix this and the clamping thing when you have some time please?