Log into your account to keep track of your progress. You can work through the lessons without logging in but your progress will be lost when you refresh the page.

総再生時間: 3時間 7分 37秒

Solaris は Houdini 独自のレイアウト、ルックデブ、ライティング用環境です。PIXAR 制作のオープンソースの Universal Scene Description 形式、USD に準拠して構築された環境のため、USD のシーンやアセットの作業やオーサリングに最適です。USD はアセットを系統的に管理できるよう最適化されたシステムのため、チームや個人の作業で効率的なフローが実現します。

このコースでは引き続き USD とは何かを解説し、Solaris を使ったオーサリングの方法を見ていきます。取り上げる内容には、Solaris への USD ファイルの持ち込み、USD レイヤーによる作業の進め方、USD ファイル内で何が起きているかの分析などが含まれます。このコースでは、Solaris における USD の概念に関する強固な基礎を築き、皆さんが自身の手でシーンやワークフローの構築をできるようにすることを目指しています。

このコースでは、Solaris での USD のオーサリングの基礎を身につけ、USD がどのようにしてディスクに書き込まれるかを学び、Solaris 内での簡単なシーン構築の方法を見ていきます。
Sublayer LOP は、USD ファイルの最も簡単な読み込み方法で、入力ファイルの Scene Graph Tree が改変されることもありません。Reference LOP は USD ファイルの読み込みができるほか、読み込まれてくる Scene Graph Tree のルートを、ステージ上の現 Scene Graph Tree 内のどこに配置するかを指定できます。
Asset Reference LOP は、Reference LOP と似ていますが、ディスクからの読み込み時にバリアントの指定が可能です。この LOP にはトランスフォームのコントロールも含まれ、これによってシーン内に各アセットを配置できます。
リファレンスはプリミティブの「ペイロード」が可能です。これにより、ビューポートから大量のジオメトリをアンロードする際の選択肢が増え、複雑なシーンも扱いやすくなります。ペイロードは「アンロード」されている場合もレンダリングされることを覚えておくのは重要です。
Stage Manager LOP を使うと、アーティストにやりやすい方法で、ステージへの USD ファイルのインポート、ファイル階層の調整、シーン内の変更ができます。このノードを使用すれば、入力に接続されているステージの修正も可能です。
「Primitive」LOP を使うと、テキストパラメータでプリミティブのパスを指定することで大量のプリミティブを作成できます。ジオメトリを作る前に、シーンやショットの階層を設定しておきたい時に使うとよいでしょう。
「Transform」LOP は、Transform SOP に期待されるのと同様の働きをします。ただし、プリミティブのパスが指定されていないと、予期せぬ結果が起こることがあります。「XForm」LOP では「xform」タイプのプリミティブを作成できますが、Edit モードの時の機能は「Transform」LOP とほぼ同じです。
USD には「グループ」の概念がありません。代わりに、USD メッシュに GeomSubsets を作成し、インポートしたジオメトリの様々な箇所にマテリアルをバインドすることができます。これらの GeomSubsets は Scene Graph Tree 内に一覧されていますが、それ自体を選択したりトランスフォームすることはできません。
グループベースのサブセットと同様に、SOP からの入力アトリビュートに基づくサブセットの指定も可能です。この場合に GeomSubset をドライブするには、固有値 (整数、文字列) を持たせたアトリビュートを使うとよいでしょう。
スキーマは USD によって定義されるストラクチャで、データを持ち込み USD 用にフォーマットするのに使われます。スキーマの例の一部には、リネームされたアトリビュート、適切なプリミティブタイプの作成、アトリビュートのクラスのマッピング等があります。
SOP からのインポートジオメトリのアトリビュートが標準的なものでない場合、「Primvar」としてリファレンスされます。これらのアトリビュートは Scene Graph Details ペインで見つけることができ、そこに含まれる値も同ペインで確認できます。
SOP には、LOP Import と LOP Import Camera の2つの LOP 専用ノードがあります。「LOP Import」SOP は LOP からジオメトリをインポートするための Geometry ノードで、「LOP Import Camera」ノードは「/obj」コンテキストにカメラデータを持ち込むための Object ノードです。
レイヤーを使うと、USD を分割し、それぞれに Save Path を指定して整理できます。Solaris ではそれを自動で行うようにしていますが、新しくできたレイヤーは把握しておくのがよいでしょう。レイヤーは、Scene Graph Layers ペインと各 LOP ノードの色枠の2か所で視認できます。
「Layer Break」LOP は、最も確実なレイヤーの分割方法です。 Layer Break ノードより上で作成 / リファレンス / 読み込みがされたノードはすべて、下流の ROP によって保存されることはありません。
「Configure Layer」LOP は、 Layer Break LOP と似ていますが、 (USD ROP を使わずとも) ビルトインパラメータでレイヤーの Save Path を指定できます。最後に USD ROP を配置すると、これらのファイルの書き込みを強制的に実行し、個々のレイヤーをサブレイヤー化するマスターファイルを作成します。
同じ階層を持つプリミティブは、サブレイヤー化で上書きできます。その際、ネットワーク内で先に作られたプリミティブが上書きされます。この方法により、マテリアルのアサインを維持したままジオメトリを上書きできます。
USD における「Opinions (オピニオン)」は、重なり合うふたつの Scene Graph のうち、どちらの値をオーサリングするか決める際の解決策です。これは、LIVRPS Strength Ordering (LIVRPS 強度順番決め) によって決定されます。また、ツリー上のリーフ値の方が高優先度になります。Solaris には、レイヤー化の際に、オピニオン内の特定の強度を優先する方法も用意されています。
SOP の「Merge」を使い慣れているユーザでも、その LOP 版を使うと階層関連の問題に遭遇したり、プリミティブが複製されてしまうことがあります。ここでは Merge LOP と Merge SOP の違いを学び、ドキュメント内のサンプルを使って Merge LOP の様々なモードの働きについて理解していきましょう。
USD では、シーンを作成する際に、単一ファイルとサブレイヤー化した複数ファイルのどちらにするか選ぶことができます。複数レイヤーのファイルにすると、変更を加える時に、シーンが壊れたり、マスターシーン/ショットのファイルの再作成が必要になることがありません。
.usda は対人可読形式なので、ファイルをひとつ開いて中で何が起きているかを見てみましょう。ファイル内のコードに目を通し、最終シーン / アセットのコンプの際に、USD ソフトウェアが何を行っているかを理解していきます。
Duplicate LOP は、プリミティブのインスタンスを作成したい時の最も簡単な方法で、「Copy」モードに設定されている場合を除き、オリジナルをリファレンスして複製を作ります。複製したプリミティブには、オリジナルのプリミティブから累積的に変更を加えていくことができます。
「Instancer」LOP は「Copy to Points」SOP や「Instance」Object ノードに近い用途で使われます。このノードは「Prototype」プリミティブをコピーする際、ポイントを位置情報に使います。その際のポイントには、 Internal SOP ネットワーク、External SOP ネットワーク、LOP 入力プリミティブ、または LOP 入力ポイントから来るものがあります。
利用可能なタイプの異なるインスタンスを確認し、各々が持っている機能と持っていない機能を詳しく見ていきます。このチャプターでは、プロトタイプのプリミティブとひとつのインスタンスにマテリアルオーバーライドを作成し、コピーのシーンとリファレンスのシーンの反応の仕方を見ていきます。その後、.usda ファイルを開いて中のコードを見てみます。
Instanceable Reference は、USD でジオメトリを複製する際の、最も効率的な方法のひとつです。ただし、難点が幾つかあるため、このチャプターで詳しく見ていきます。再び .usda ファイルを開いてコードのオーサリングを見ていきます。
USD ファイルへのアニメーションの書き出しは注意を要するため、アニメートした USD ファイルを扱う時のベストプラクティスを幾つか確認しておきましょう。Houdini 全体と比べると直観性に欠けて見えるかもしれませんが、多くの場合、アニメーションを個別の USD ファイルに分けて保存するのが最善策になります。
大量のデータセットを USD に書き込もうとすると、メモリ等の理由で単一ファイルに書き出せないことがあります。このような場合、ステッチに切り替えると、USD ソフトウェアがファイルを読み込みやすくなります。実行するには USD Stitch Clips ROP に切り替えてください。

CREATED BY

PArcara09

コメント

  • traileverse 2 年 前  | 

    Truly awesome to see more USD/Solaris content. Looking forward to seeing advanced USD stuff as well.

    • lorsange 1 年, 12 ヶ月 前  | 

      Hi again Peter, get same problem here with #2 "Sublayer & Reference" section
      Get errors on the Reference node:
      Error Unable to find layer file: -
      Warning Fixed invalid USD path: /_
      Works only with previous "reference" node asset, and don't understand /`@soucename` variable, only with hardcoded /simple_scene

      • TamilAless 1 年, 10 ヶ月 前  | 

        I have exactly the same problem. Any advice? Thx.

        • derek_lindell 1 年, 10 ヶ月 前  | 

          could be an error with name spacing, I had a space in the name of the folder my hip file was in and it worked after I changed it?

          • derek_lindell 1 年, 10 ヶ月 前  | 

            or could be the fact you're using houdini non-commercial which means it generates .usdnc files instead of .usda files!

        • andy.nicholas 1 年, 7 ヶ月 前  | 

          The issue is that some of the output paths on the ROPs should be using $HIPNAME, but they're not.

          All paths should be starting with $HIP/usd/$HIPNAME/

        • Chassaigne Victor 1 年, 11 ヶ月 前  | 

          as said before , this is Truly awesome.

          • conomara 1 年, 8 ヶ月 前  | 

            this is a great intro, thanks for taking the time to create

            • andy.nicholas 1 年, 7 ヶ月 前  | 

              I re-downloaded this recently and it seems to work fine out of the box now, so it must have been fixed.

              • gustls2017 1 年, 6 ヶ月 前  | 

                Hello, I'm a beginner at Hoodini. Sublayer & Reference Import -> C:/Users/hskwak/Desktop/Houdini/Solaris_Tuto_preset/usd/USD_with_Solaris_Authoring/scenes/simple_scene.usd path, but no files are called in because the folder has been created up to screens. Do I need to export usd individually? - Automatic translation is being used

                • hanyilun2 1 年, 6 ヶ月 前  | 

                  the hip file link seems expired, can anyone share it THX

                  • norv2001 1 年 前  | 

                    Great tutorial, thanks!

                    Please log in to leave a comment.