2010-03-18

Nuke アルファチャンネルについて2

またまた、アルファチャンネルについてですが、今回はマスクに関して。

たとえばある画像の一部をベジェマスクで切って、別の画像にレイアウトする場合、Nuke6ならRotoPaintNodeを使います。ショートカットは[v]キーでマスクを描きはじめる。

© The Foundry

とりあえず描いただけだと、こんな感じで塗りつぶされる・・・
これはRotoPaintNodeのチャンネルの扱いが



こんな感じでRGBAになっているためで、

 ↓

© The Foundry

 
こんな感じでベタ塗りはなくなる。ついでにアルファを確認すると、

© The Foundry

 
こんな感じで、ちゃんとアルファをもててます。
そこでMergeNodeで適当な背景と合成してみると・・・

© The Foundry

 
やっぱり緑の部分がスクリーン合成したみたいにのってしまう。これはマスクで抜けた部分はアルファが無いのに、RGB情報が残っているためで、いわゆるPremultiplyをしてやる必要がある。
この場合はRotoPaintNodeで指定が出来る。


© The Foundry
これで問題なくmergeできる。
別の手法としては、MergeNodeにマスクを指定してoverさせる領域をRotoPaintNodeで指定することが出来る。


© The Foundry

 
© The Foundry

 
注意したいのはForeの演者さんの画にはアルファはついてないため、ShuffleNodeで全オンのアルファを一旦指定している。



このやり方でも出来るけど、どう考えても前者の方がスマートで楽チン。ただ、このやり方がわかれば、例えば、画像の一部だけをカラコレとか、同じ要領で出来ます。
でMergeNodeやColorCorrectNodeにはマスクを関連付けれるのだけど、非常に分かり辛い・・・



こいつを引っ張り出すと




こんな感じで「mask」の文字がでてきますw

なんにしても、正直、AEとかなら全く考えなくても出来る部分が、全部指定してやら無いといけないのがNuke!非常にメンドクサイですが、逆に色々と意識付けられるし気づかされるのも事実。

まぁ、もっとペロって出来ちゃえばいいのにって思うのも事実・・・

2 comments:

  1. 今まで普通に後者のやり方でやってたorz
    RotoにPremultiplyの設定がある事に気づいてなかったです。

    たしかにAEと比べると面倒なのが多いですね。
    そのかわりNukeでのノードの組み方と映像合成基礎講座の本を組み合わせると内部でどんな処理してるのか分かるので地力が付くんじゃないかと思います。

    ReplyDelete
  2. Yasu_Tashiさん! 
    コメントありがとうございます!

    いや、ほんと色々な方法があります。NodeでPremultiplyを入れてもできますしね。
    AEはサクっと出来てしまうため、なんとなく使ってる場合がありありますが、Nukeはある程度の理解を求められているような気がして・・・w なんでこの歳になって色々と勉強しないといけないんだろうとも思ってますw
    まぁ好きでやってるから苦痛ではないですけど。
    いくつになっても勉強ですね。

    Yasu_Tashiさんとはやってる分野も被ってるところが多いので、twitterなどでは非常に勉強させてもらってます。

    今後ともよろしくおねがいしますー

    ReplyDelete