こんにちは。篠島です。NukeやFusionはテクスチャを入れ替えるノードが予め存在していますが、Houdiniにはそのようなノードは無いのでVOPによって自分で作る必要があります。
今回のサンプルファイルです。言葉だけで説明するのは非常に難しいので是非シーンを見ながら記事を読んでみてください。
UV_ReplaceTexture_2.zip
前回と同じようにVOP COP2 Filterを作り、レンダリングした画像に繋げます。
VOP COP2 Filter 内部のネットワークは下のようになります。
基本的には、UVパスの情報をColor Mapノードに繋げることでテクスチャを読み込んでいるだけです。前にも説明したとおり、VOP内でUVパスを読み込むのにCOP Inputノードを使っています。今回レンダリングしたファイルのUVのパスは0から数えて8番目に入っているので、Constantノードで整数の8を値を入れています。Constantは画面のスクリーンショットを分かりやすくするためだけに使っているので、実際はパラメーターを作り、値を簡単に変更できるようにします。
UとVにそれぞれ値を加算、乗算しています。Addの部分がUVのオフセット、Multiplyの方でUVのリピートの回数を設定します。AddとMultiplyのInput2をプロモートする事で、VOP COP2 Filter上にパラメーターインターフェースを作っています。これでUVのリピートやオフセットを簡単に調節することができます。
そしてColor Mapノードの結果とアルファを掛け合わせます。こうしないと、テクスチャの色がオブジェクトの外にはみ出てしまいます。
テクスチャの入れ替えができたので、次回はパスをそれぞれのパスを合成してみます。