記事の目次

    Nukeは非常に優れたコンポジットアプリケーションだ。目立ったところでは、3Dコンポジットや立体映像への対応などがあるのだが、実際に使用したことがある人となると、日本では割と少ないのではないだろうか。そこでまずは、基本的なコンポジットに主眼を置いて解説していこう。

    ノードベースのコンポジットとは

    今回からスタートした本連載。近頃、注目を集めるNukeによるコンポジットワークについて、実践的な解説をしていきたいと思う。

    Nukeはいわゆる、ノードベースのコンポジットシステム/Node-based Compositing System である。それに対して、レイヤーベースのコンポジットシステム/Layer-based Compositing Systemの代表格と言えるのが、日本国内で最も用いられているであろう、After Effectsだ。

    元々、映像合成というものは、フォアグラウンドとバックグラウンドという2ソースが考え方のベースである。例えば、古くからのテープベースでの合成編集は、フォアとバックを合成して一旦新たな画像を生成し、それをバックグラウンドに置きつつ、さらに、新しい画像をフォアグラウンドとして合成してまた新たな画像を作り出す......といった手順である。
    ノードベースのコンポジットでは、概ねこの手法を踏襲しており、ステップ・バイ・ステップで出来上がっているため、ひとつひとつのノードがどの素材に適用されているかが判りやすく、パラメータにもアクセスしやすく、それゆえにコントロールしやすい。
     またNukeの場合、そうしたノードを汲み上げた「ノードグラフ/NodeGraph」は一見複雑そうに見えるのだが、実は何をやってるのか非常に判りやすいのだ。しかもNodeGraph は AEの同じようなアイコンのレイヤーを上下にのみ重ねていくわけではなく、NodeGraphの全体像を地図のような感覚で、把握しやすい(方向音痴の人には申し訳ないが......)。

    一方、レイヤーベースのシステムを見てみると、Photoshop的な思考で時間軸を取り込んだタイムラインを持っているUIが特徴的だ。複数のソースの合成だけに止まらず、エフェクトなどを組み合わせたワイプなどの凝ったトランジションを作成できるし、編集ソフトのような使い方もできる。
     逆にノードベースではタイムラインという考え方が薄いため、カットとカットを繋ぐような使い方が困難だ。加えて、NodeGraphが、"一見、複雑"なので取っ付き辛い。

    とは言え、レイヤーベースが万能ということでは決してなく、素材が多くなりレイヤーが"深い(積み上がった)"複雑なコンポジットになると、影響範囲が判り辛い。"レイヤー"という考え方は、ぱっと見では整理されているように感じるが、実は全体像が把握し辛いのだ。

    NodeGraphは一見複雑だが、地図のように認識できるので把握しやすい。

    Node Graphは一見複雑だが、あの「Blur」は右上(ハイライトさせた箇所)・・・といった具合にアクセスしたい Node Operator の場所を、さながら地図のように認識できるので把握しやすい。

    レイヤーベースのコンポジットでは、偏執的な使い方も可能であり、合成しながら編集していくことが可能。

    一方、AEに代表される時間軸を持ったレイヤーベースのコンポジットでは、編集的な使い方も可能であり、合成しながら編集していくことが可能。そうした作業を行いたい場合には重宝する

    ノードベースとレイヤーベース、どちらも一長一短である。

    ノードベースとレイヤーベース、どちらも一長一短である。一般的に、ノードベースは1カットずつを複雑に作りこむコンポジット作業に向いており(タテに強い)、レイヤーベースは時間軸に沿ってコンポジットするのに長けている(ヨコに強い)。

    [[SplitPage]]

    Nukeの基本操作1:素材の読み込みとノードの呼び出し

    AEに慣れ親しんだ人が、いきなりNukeのようなノードベースのコンポジットソフトを使うのには、ちょっとしたコツや作法がある。そこで、Nukeの初歩的な使い方を解説しつつ、AEとの使い方の違いを比べてみよう。

    まずは、素材がなければコンポジットを進めれないので素材をNuke内にインポート。手っ取り早くインポートする手順は、OSのウィンドウから直接的にドラッグ&ドロップすると、[Read]というノード・オペレータ/NodeOperatorが作成され、素材を持ち込むことができる<A>。

    フォルダごとドラッグアンドドロップするとその中にあるファイルはすべて読み込まれる。

    <A> フォルダごとドラッグアンドドロップするとその中にある読み取れるファイルはすべて読み込まれる。連番の場合は、名前から自動で判定され、連番として読み込まれる。

    あるいは[Read]を呼び出し、ファイルパスで指定する方法もある<B>。
    各ノード・オペレータを呼び出すには、ノーズ・ペーン/NodesPaneと呼ばれるツールバーから指定する<C>、カーソルがNodeGraph上にある状態で右クリックから呼び出す、同じくNodeGraph上で Tabキーを押して直接そのノード・オペレータの名前をキーボードで打ち込んで呼び出す<D>という3種類がある。

    フォルダの形をしたアイコンを押すと、ファイルリクエスタが立ち上がり、読み込むファイルを指定できる。

    <B> [Read] のプロパティのフォルダの形をしたアイコンを押すと、ファイルリクエスタが立ち上がり、読み込むファイルを指定できる。

    ノーズ・ベーン/NodesPaneでは、各Node Operatorがジャンル分されアイコン表示と共に格納されている。

    <C> ノーズ・ペーン/NodesPane では、各NodeOperatorがジャンル分けされアイコン表示とともに格納されている。

    Houdiniと同じようにTabキーでノード・オペレータの検索が出来る。

    <D> 3DCGアプリケーションのHoudiniと同じようにTabキーでノード・オペレータの検索ができる。慣れてしまうと非常に便利だ。

    Nukeの基本操作2:素材を合成する

    素材を持ち込んだら、それらを合成してみよう。一番オーソドックスな手順は[Merge]を用いる手法だが、その前に、AEのケース(レイヤーベースのコンポジット)を考えてみたい。AEは各素材をタイムライン上に配置して、上に重ねていくことで合成する<A>。

    これをNukeでやると、[Merge]を使い、AEで言うところの下のレイヤーに相当する素材をBチャンネルにコネクト、さらにその上のレイヤーに相当する素材をAチャンネルにコネクトする。必要に応じてマスクもコネクトする<B>。

    AEではタイムラインとともに、レイヤーが重なっている。 AEではモードを変更することで各レイヤー(素材)の「乗せ方」を調整することができる。

    <A> 画像のようにAEではタイムラインとともに、レイヤーが重なっており、モードを変更することで各レイヤー(素材)のいわゆる「乗せ方」を調整することができる。マスクを適用する場合は基本的にはトラックマットを利用する。

    マスクが使用できるノード・オペレータは、コネクトできるラインがノードの右側から引き出せるようになっている。

    <B> AEにおける「レイヤー」の積み重ね回数分だけ[Merge]が必要となり、基本的にフォアグラウンドとバックグラウンドの2ソースづつを合わせていく。マスクが使用できるノード・オペレータは、コネクトできるラインがノードの右側から引き出せるようになっている。

    [[SplitPage]]

    Nukeの基本操作3:エフェクトを適用する

    次に、エフェクトの適用について見てみよう。例えばマスクとぼかしを併用するために、トラックマットでマスクを掛けている状態で、ブラーを適用すると、ボケがマスクの形状でパキっと出てしまう<A>。

    AEの場合、トラックマットは一番最後に適用される。 AEのの場合、ブラーエフェクトのかかった画に対してトラックマットによる、マスク処理が行われる。

    <A> AEの場合、トラックマットは一番最後に適用されるので、ブラー・エフェクトのかかった画に対してトラックマットによる、マスク処理が行われる。

    これを避けるには、いったんマスクを掛けてプリコンポーズさせ、1枚の「画」として確定させた上で、ブラーを適用することになる<B>。このプリコンポーズという処理が、「Nuke的なコンポジット思考」だと言える。つまり、ひとつひとつのノード・オペレータがプリコンみたいなものと考えれば、Nukeをぐっと身近なものに思えるようになるはずだ。
    整理すると、ノードベースでは「順序」が非常に分かりやすく、それゆえタテに深いワンカットを作り込むコンポジットワークに適している。したがい、分業を行うにも最適のコンポジットソフトと言えるだろう。

    いったんマスクを掛けてプリコンポーズさせ、1枚の「画」として確定させて上で、ブラーを適用することになる。 プリコンポーズを行うと、その時点でマスク処理が行われた画に対してブラーが施されるので、イメージ通りの画になる(エッヂが不自然にならない)。

    <B> いったんプリコンポーズを行うと、その時点でマスク処理が行われた画に対してブラーが施されるので、イメージ通りの画になる(エッヂが不自然にならない)。

    レイヤーベースでは、プリコンポーズすると内部の処理が把握しずらいが、Nukeでは一目瞭然だ。

    <C> Nukeでは、ノード・オペレータごとにプリコンポーズされて画として、その都度確定していると捉えるとNukeの設計思想が分かりやすい。レイヤーベースでは、プリコンポーズすると内部の処理が把握しづらいが、Nukeでは一目瞭然だ。

    さて、今回はノードベースとレイヤーベースにおける合成作業に対する考え方やアプローチの違いについて解説したが、いかがだっただろうか?

    筆者の個人ブログ「TIRAOKAN.」では、実践的な解説を目指す本連載の補足を兼ねて、Nukeの基本的な操作法について綴っているので併せて確認してもらえると幸いだ。次回も引き続きAEとの違いに重点を置きながら、Nukeの具体的な操作方法について解説していく予定である。

    TEXT_テラオカマサヒロ(Galaxy of Terror)

    株式会社ギャラクシーオブテラーにてヴィジュアル・エフェクツ・ディレクターとして活躍中。
    実写合成からフルCGまで、幅広いVFX制作に携わっている。
    tiraoka.blogspot.com