Scriptを開いてみると、あまりにも自由なノードの組み方に出会う事もしばしばです。
最近の仕事で出会ったScriptが、あまりにも...だったので、復習もかねて基本的な部分をまとめたいと思います。
NukeはAfterEffectsに比べるとプリコンポジションをしない分、全体が把握しやすいと言われますが、それはNukeなりのルールに従って組まれた、画像処理を意識したScriptの場合だと思います。
以下、自分が参加したプロジェクトで見たり聞いたり、教えてもらったことなどなど、あくまでも作業者目線で、Nukeで意識していることについて。
気ままに更新予定です。
その1 B PIPE
上流から下流への縦軸をBラインに。
MergeノードをDisableしても下流への流れは引き継がれます。
Bラインがストレートに伸びていることで、ショットの素材間の構成・設計が把握しやすくなります。
作業環境設定として、Edit>PreferencesのNode Graphタブから[show grid]をオンでグリッドの表示、[snap to grid]をオンでグリッドにスナップします。
キーボードの<バックスラッシュ>で自動的にグリッドにスナップ、<L>で整列です。
[new Merge nodes connect A input]をオフにすることで、Bラインを基準に新規Mergeノードが作られます。
その2 Read
インポートパスの同じフッテージは一つのReadノードで管理します。
インポートパスの同じフッテージのReadノードがScript内に複数存在すると、各々のReadノードがそのファイルにアクセスするため処理が重くなります。
その3 BBOX
Save Regionでレンダリングされたexr素材はAuto Cropされています。
もしくは、Script Editorで以下を実行するとAuto Cropされます。
nukescripts.autocrop(nuke.selectedNode)
以下は、[black outside]ノードの説明です。
bboxの外側にbalck borderが1pixel追加されます。
Add a balack outside edges to the bounding (if need).
This will remove "stripes" caused by replicating the edge pixels of the bounding box.
VectorBlurを追加するとモーションブラーでピクセルがBboxより外側に伸びるため[grow bbox]でBboxを拡張します。AdjBBoxノードでも可能です。
その4 Channel
極力、余計なチャンネルは処理しないようにします。
各ノードの処理は、デフォルトだと[all]になっているものが殆どですが、menu.pyの記述によってあらかじめ[rgba]や[alpha]などに設定しておくことが可能です。マルチパスのexrなど、チャンネル[all]のままだと、全てのチャンネルを処理することになります。実際、[all]で処理することは、あまりない気がします。
たとえば、、
nuke.knobDefault("RotoPaint.output", "alpha")
nuke.knobDefault("Blur.channels", "alpha")
nuke.knobDefault("EdgeBlur.channels", "rgba")
nuke.knobDefault("Defocus.channels", "rgba")
nuke.knobDefault("ZDefocus.channels", "rgba")
nuke.knobDefault("Sharpen.channels", "rgba")
nuke.knobDefault("VectorBlur.channels", "rgba")
nuke.knobDefault("Multiply.channels", "rgba")
[motion vector channels]を使用しない場合、チャンネルは[none]にします。
つづく
0 件のコメント:
コメントを投稿