Cycles: add a Pass Node

The Pass struct is now a Node and the passes are moved from the Film
class to the Scene class.

The Pass Node only has `type` and `name` as sockets as those seem to be
the only properties settable by exporters (other properties are implicit
and depend on the pass type).

This is part of T79131.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D8591
This commit is contained in:
Kévin Dietrich
2020-08-18 12:15:46 +02:00
parent 673b1930d8
commit 1da0685076
9 changed files with 101 additions and 28 deletions

View File

@@ -152,7 +152,7 @@ void Integrator::device_update(Device *device, DeviceScene *dscene, Scene *scene
kintegrator->seed = hash_uint2(seed, 0);
kintegrator->use_ambient_occlusion = ((Pass::contains(scene->film->passes, PASS_AO)) ||
kintegrator->use_ambient_occlusion = ((Pass::contains(scene->passes, PASS_AO)) ||
dscene->data.background.ao_factor != 0.0f);
kintegrator->sample_clamp_direct = (sample_clamp_direct == 0.0f) ? FLT_MAX :