NUKEでAfter Effectsのような反転操作を行う方法

こちらの記事では、NUKEとAfter Effectsで反転操作を行う時の結果の違いと、After Effectsと同様の反転操作をNUKE側で行う方法について、紹介致します。

04_invert

 

▼NUKEとAfter Effectsの色調反転操作の違いと理由

まず、それぞれのソフトウェアで、色調の反転操作を行った際の結果を確認します。

以下の画像が、After Effectsの[反転]エフェクトを使用して色調を反転させた場合の結果画像です。

00_invert

そして、以下の画像が同じ素材をNUKEで読み込み、反転させた場合の結果画像です。

01_invert

並べて比較すると、結果がかなり異なっていることがわかります。

04_invert

このように、結果に違いが生じる理由は、製品自体の仕様によるものです。After Effectsは、各合成操作をリニアでない空間で作業しています。それに対して、Nukeは、基本的な計算をリニアスペースで作業します。

そのため、同じような作業を行った場合でも、この反転操作のように、出力された結果が異なることがあります。

 

 

▼NUKE上の反転操作の計算

NUKEの中で、反転操作を行うノードは、Invertノードです。

06_invert

このノードは、1.0(RGB:1.0,1.0,1.0)から対象の素材の各ピクセルの色を減算し、白を黒に、黒を白に反転します。0以下、1以上の数値が含まれている場合でも、色の反転が行えます。

1.0-(ピクセルの色)=出力結果の計算例:
1.0-(2.0)=-1.0
1.0-(1.0)=0
1.0-(0.5)=0.5
1.0-(0.0)=1.0
1.0-(-1.0)=2.0

 

 

▼NUKE上でAfter Effectsの反転操作と同様の結果を出力する方法

NUKE上で、After Effectsのような反転を行いたい場合は、ColorSpaceノードを使用します。

ColorSpaceノードを使用して、sRGBへのカラースペースに一時的に変換すると、Invertノードの反転操作をsRGBカラースペースで行うことになるため、アプリケーション間で類似した結果を表示することができます。

  1. Invertノードを作成し、反転操作を行う素材を接続します。
     
    08_invert
     
  2. Invertノードのインプット側アウトプット側に、Colorspaceノードを1つずつ追加します。
     
    14_invert
     
  3. Invertノードのインプット側に接続したColorspaceノードのプロパティで、[in]Linear[out]sRGBに変更してください。
     
    16_invert
     
  4. Invertノードのアウトプット側に接続したColorspaceノードのプロパティで、[in]sRGB[out]Linearに変更してください。
     
    18_invert

以下の画像は、この操作を行ったNUKEの結果と、After Effectsの結果を比較した画像です。After Effectsの反転操作を行ったものと同様の見た目のものが、NUKE側で出力されています。

20_invert

 

尚、このような操作を複数回行う、またはノードとして使用できるようにしたいといった場合は、追加した3つのノードを選択して、ToolsetsGizmoを作成することをお勧め致します。概要や作成方法につきましては、こちらをご覧ください。