diff options
author | Manuel Castilla <manzanillawork@gmail.com> | 2021-09-30 23:30:25 +0300 |
---|---|---|
committer | Manuel Castilla <manzanillawork@gmail.com> | 2021-10-01 00:56:53 +0300 |
commit | 66fe1c79f3ce225da5d237ac1371e26920c9cb56 (patch) | |
tree | a489835fe1592092ff617373ac5dc4eadcf4abd4 | |
parent | e2df5c8a56c06acde486d8a9094d41671ec09398 (diff) |
Compositor: Fix Composite node using alpha when "Use Alpha" is off
Alpha input was not receiving the final composite canvas
as preferred causing a Translate operation being inserted
for centering. This resulted in a transparent background.
The issue only affects Full Frame mode.
-rw-r--r-- | source/blender/compositor/operations/COM_CompositorOperation.cc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/source/blender/compositor/operations/COM_CompositorOperation.cc b/source/blender/compositor/operations/COM_CompositorOperation.cc index 52bc9ed6c2f..f7466b5db34 100644 --- a/source/blender/compositor/operations/COM_CompositorOperation.cc +++ b/source/blender/compositor/operations/COM_CompositorOperation.cc @@ -256,8 +256,16 @@ void CompositorOperation::determine_canvas(const rcti &UNUSED(preferred_area), r rcti local_preferred; BLI_rcti_init(&local_preferred, 0, width, 0, height); - NodeOperation::determine_canvas(local_preferred, r_area); - r_area = local_preferred; + switch (execution_model_) { + case eExecutionModel::Tiled: + NodeOperation::determine_canvas(local_preferred, r_area); + r_area = local_preferred; + break; + case eExecutionModel::FullFrame: + set_determined_canvas_modifier([&](rcti &canvas) { canvas = local_preferred; }); + NodeOperation::determine_canvas(local_preferred, r_area); + break; + } } } // namespace blender::compositor |