Solaris Essentials:
LOPs, Karma, MaterialX

Adam Swaab によるこのビデオシリーズでは、アニメートしたシーンを OBJ/SOPs コンテクストから LOPs に持ち込み、Karma と MaterialX でレンダリングする方法を解説していきます。このシリーズの狙いは、USD やその概念の専門的なブレークダウンではありません。厳選した内容によって、Houdini でのレンダリングを簡素化することと、個人や少人数のパイプラインで作業するアーティストの皆さんに、わかりやすい解説を提供することを目指しています。

プロジェクトファイルのダウンロードが終わったら、キャラクタ (メカ) と複数の山の地形で構成される背景を使って、LOPs でのモーションブラーの設定、マテリアルの割り当て、ライトの配置、レンズシェーダの追加の各手順を学んでいきましょう。さらに、マテリアルのバリアントの作成方法や TOPs によるレンダリングのセットアップ、マテリアルの BSDF など盛沢山の内容です。さらに、レンダリングには Karma CPU を使います。では始めましょう!

1

00 | メカ プロジェクトの導入
シリーズ全体の概要を説明します。上のオレンジボタンのリンクからプロジェクトファイル (3.7GB) を忘れずダウンロードしてください。

01 | LOPs へのシーンのインポート
Solaris デスクトップ上で見るべき情報と、USD に固有の注意点を説明します。

02 | アニメーションのサブレイヤー
「オピニオン」の概念と、LOPs の Sublayer ノードによる設定のオーバーライド方法を視覚的に解説します。

03 | マテリアルの割り当て
実制作のワークフローを想定し、Material Library LOP、Karma Material Subnet、そして最後に Material X Standard Surface を使って、静止ポーズのメカにテクスチャマップを割り当てていきます。次に、メカのジオメトリにマテリアルを繋げます。背景の地形にも同じ操作をしていきます。

04 | ライトの配置 & レンダーセッティング
環境光を大いに活用していきます。シーングラフはきれいに整理しておきましょう。複数の方法がありますが、ここではシンプルに進めます。さらに、Karma Render Settings LOP によって、全体の見た目も確認します。

05 | 前景用の地形マテリアル
Triplanar Projection によってカメラに近い地形のシェーディングをしていきます。また、OCIO Color Transform の *.jpg テクスチャ処理により、Linear - sRGB から ACES - ACEScg に変換する方法を見ていきます。こうしてできたマテリアルを活用し、後景の地形ジオメトリにも適用します。

06 | 空気感のマテリアル & レンズシェーダ
Volume シェーダを使って地形に空気感を出します。出来た絵に、追加ディテールとして Lens シェーダによる歪みやわずかなヴィネットも加えていきます。色味を足すためのオプションもあります。

07 | シーンのレンダリング
Primary Samples を上げてモーションブラー領域の粒子の粗さを解消します。デノイザも使います。HDRI でレンダリングする際は Render Light Geometry を有効にするのを忘れないでください。その後、USD Render ROP で全てのフレームをレンダリングします。

知っておくべき USD の重要な概念

08 | SOP アトリビュート & LOPS
LOPs からでも SOP ジオメトリのアトリビュートへのアクセスは可能です。ただし、これらのアトリビュートを出力し、USD 環境へインポートする方法を把握しておく必要があります。ここではごく簡単な方法を幾つか紹介します。

09 | パックプリミティブ & LOPS
パックプリミティブの効率的な扱い方を紹介し、Xforms、ポイントインスタンサー、ネイティブインスタンス、アンパックされた完全なジオメトリの違いについて説明していきます。それぞれのオプションを理解し、状況に合わせて使い分けてください。

10 |マテリアルのバリアント
メカに異なるマテリアルを割り当てるにはどうすればよいでしょうか。Reference LOP、Variant Block、Set Variant LOP を使いながら見ていきましょう。3つの USD ファイルに書き出して(マテリアルを)切り替えていきます。

11 | Component Builder
USDファイルの書き出しの際に、手動でネットワークを構築する手間を省くには、既存ツールの Component Builder を使ってディスクの書き出しを実行するとよいでしょう。前チャプターで見たのと同じ結果を得るには、各ノードにどのような情報を流し込めばよいか解説します。

12 | マテリアルの編集 & ジオメトリのプロパティ
USD ファイルのベイク後に編集作業をする時は、Edit Material Properties LOP を使うとよいでしょう。Edit Material Network LOP や Attribute Wrangle LOP の使用も可能です。最後に、オーバーライドには Render Geometry Settings LOP か Edit Properties LOP を使うとよいでしょう。

その他の LOP 向けツールとワークフロー

13 | Light Linking & 編集
特定のライトをシーン内の特定のオブジェクトのみに当てる方法を見ていきます。その際、Light Linker LOP を使ってライトとジオメトリ間のルールを指定していきます。全てのライトを一度に表示でき、制御しやすい Light Mixer も紹介します。必要に応じて Light Edit LOP による最終調整も可能です。

14 | SOP Modify & SOP Create
ライトの設定後に修正をしたりシーングラフにオブジェクトを追加するには、SOP Modify LOP と SOP Create LOP を使います。これにより、主に (OBJ/SOP コンテクストに移動することなく)LOPs 内にいたままジオメトリの修正が可能です。つまり、シミュレーションもその場で直接適用できます。

15 | TOPs によるレンダリング
TOPs による処理の自動化は、ぜひとも実践してください。TOPNET に入り、ボタンをひとつ押すだけで複数のターンテーブルを書き出し、フレーム数やシェーダ等の異なるレンダリングを同時に行えます。

16 | Motion Blur
Karma のモーションブラー生成には特定の手順が必要ですが、それを実行するのが Motion Blur LOP です。結果がおかしい時のデバッグの方法も見ていきます。また、ブラーの種類は (Velocity か Acceleration から) 選びます。

17 | MaterialX BSDFs
ユーザ向けに用意された BSDF 系のノードを見ていきます。ディフューズや反射、ガラス、金属の質感を作り、レイヤーでそれを掛け合わせます。ここでは基本事項のみを扱いますので、詳細は MaterialX のドキュメントを参照してください。