NatronGitHub / Natron

Open-source video compositing software. Node-graph based. Similar in functionalities to Adobe After Effects and Nuke by The Foundry.
http://NatronGitHub.github.io
GNU General Public License v2.0
4.7k stars 343 forks source link

Glow node changed behavior in 2.4.1 because of #647 #671

Closed devernay closed 3 years ago

devernay commented 3 years ago

This issue cause the following unit tests to fail in 2.4.1:

The reason is that Glow uses a Merge(multiply) which multiplies with the optional mask (highlighted):

image

Problem:

The behavior introduced in #647 is the right one, and is consistent with Nuke.

How do we fix Glow so that it defaults to a solid mask if it's not connected? We probably need to insert another node here.

devernay commented 3 years ago

Solution:

  1. set an expression on the "disable" parameter of the Merge(multiply) node above: "thisGroup.getInput(1) is None": this disables the node if the mask input is not connected. Implemented in https://github.com/NatronGitHub/Natron/commit/3ac7b02f305241d6802e387bdc6b281e96b9992c - this is also necessary on Nuke, see https://benmcewan.com/blog/2019/10/21/back-to-basics-common-errors-when-creating-a-gizmo/
  2. increment the Merge node version number so that old projects still work. Implemented in https://github.com/NatronGitHub/openfx-misc/commit/82f5f5d4100c6735f3efbe957b768cd085701ed5