見出し画像

Houdini19.0 Solaris/Karma(USD)   新機能紹介

はじめに

Youtubeにて動画を公開しておりますので、併せてご覧ください。

動画内と同じシーンファイルを配布いたします。
演習ファイルは合計約2GBほどありますのダウンロードの際には空き容量などに注意してしてご活用ください。URLは下記になります。
Solaris (下に注意書きあり):
https://drive.google.com/file/d/10aTSAxeZ7VuIQ8F7OxwqknufaCRkGzH8/view?usp=sharing
Karma:
https://drive.google.com/file/d/1rTU5FfCSie09_5KzwkgsAoylloP_W79e/view?usp=sharing

Solarisの演習ファイルについての注意:
権利上、当記事では配布できないデータがあり、上記ファイルにはそのデータは含まれておりません。お手数ですが、利用する際は個別にDLサイトからデータをダウンロードしていただくようお願いいたします。

ダウンロード先リンク
https://www.cgtrader.com/
こちらで「Lowpoly PBR Rocks And Foliage Free low-poly 3D model」と
検索し、データをダウンロードください。

Solarisのフォルダ内のシーンを開く際は、cgtraderよりダウンロード可能な
・「Soi_Foliage_OBJ.zip」
・「Soi_Foliage_Textures_MetallicRoughness.zip」
のデータをダウンロード後展開し、
配布しているデータの「Solaris>data」のディレクトリ内に保存してください。


※SideFX社さまより特別な許可をいただきHoudini 19.0に対応したデータを配布させていただいております。

スライド3

スライド2

-------------------------------------------------------

Solaris

Solaris_Cut_Only.00_00_25_13.静止画002

↓下のリンクから再生すると、該当箇所から再生されます↓

Houdini19.0ではSolarisを使用したレイアウトに対して大きな変更が加えられています。

Component Builder

新しく追加された「Component Builder」の機能により、SOPジオメトリからコンポーネントモデルを作成することが容易になりました。

ネットワークビュー上で「Component Builder」を作成すると、新しく4つのノードが作成されます。

Solaris_Cut_Only.00_00_45_10.静止画002

左上の「Component Geometry」からSOPジオメトリを作成または読み込みます。

Solaris_Cut_Only.00_00_52_20.静止画003

まずこのノード内では、作成、または読み込んだモデルを実際に出力(レンダリング)するための一番左側の「default」に接続します。

Solaris_Cut_Only.00_01_00_14.静止画004

次にジーンビュー上で表示する際の解像度を下げたモデルを2番目 の「proxy」に接続します。

Solaris_Cut_Only.00_01_09_14.静止画005

Edit等の物理ツールを使用する際のコリジョン用に設定したモデルを一番左の「simproxy」に接続します。

Solaris_Cut_Only.00_01_11_15.静止画006

Material Library」にてマテリアル(shader)を設定します。すると、「Component Material」によって、作成したSOPジオメトリに対して、マテリアルがアサインされます。

Solaris_Cut_Only.00_01_21_06.静止画007

Solaris_Cut_Only.00_01_28_20.静止画008

最後に、「Component Output」にて、作成したコンポーネントモデルをUSDデータとして書き出していきます。
書き出す際に、LOP上に読み込む際のサムネイルを出力することができる「Thumbnail」の項目があります。その中にある「Camera」の項目下側の「View Thumbnail Camera」のトグルを有効にします。
すると、シーンビューが変わり、「Component Builder」で作成したモデルが中心に表示された状態で正方形のエリアのカメラが作成されます。

Solaris_Cut_Only.00_01_47_15.静止画009

この状態で、「Generate Thumbnail」をクリックすることで、サムネイルを出力することができます。

Solaris_Cut_Only.00_01_58_11.静止画010

モデルの出力は、上側の「Save to Disk」をクリックすることで出力できます。

Solaris_Cut_Only.00_02_08_07.静止画011

出力結果を確認すると、3つの.usdcのデータと.usdのデータ、サムネイルの画像が出力されます。
ここで出力されたデータはまとめてSolaris内に読み込むことができます。

Solaris_Cut_Only.00_02_17_05.静止画012

Layout Asset Galley

Houdini19.0では新しく「Layout Asset Gallery」タブが追加されました。
ペイン上部のプラスマークをクリックし、
New Pane Tab Type>Solaris>Layout Asset Galleryを選択します。

Solaris_Cut_Only.00_02_31_03.静止画015

Solaris_Cut_Only.00_02_38_05.静止画013

そうすることで、新しく「Layout Asset Galleryタブ」を開くことができます。

Solaris_Cut_Only.00_02_42_00.静止画014

この中に、先ほど出力したデータを読み込んでいきます。
タブ内の左上にある熊のマークをクリックします。

Solaris_Cut_Only.00_02_50_08.静止画017

Fileに対して、前項で作成したUSDデータを選択、
Thumbnailに対して前項で出力した画像を選択、
Nameに任意の名前を入れてOKをクリックします。

Solaris_Cut_Only.00_03_02_01.静止画016

すると、先ほど作成したUSDデータがサムネイル付きで読み込まれます。
読み込まれたこのモデルを使用してレイアウト行うことができます。

画像19

さらに、ここでは出力したコンポーネントモデルを一括で読み込むことも可能です。
複数のモデルを読み込むには熊の横にあるフォルダのマークをクリックし、「Directory」にてモデルが格納されているディレクトリを選択し、OKをクリックします。

Solaris_Cut_Only.00_03_20_12.静止画019

Solaris_Cut_Only.00_03_26_08.静止画020

すると、ディレクトリ内にあるすべてのモデルを一括で読み込むことができます。

画像22

また、読み込まれた対象を色によって分別することもできます。
こちらを行うことで使用するモデルを分別することができ、使いたいモデルを探すのが容易になります。

Solaris_Cut_Only.00_03_42_21.静止画021

Layout LOP

前項のLayout Asset Galleryタブでモデルを読み込み、続いてレイアウトを行う際に使用する「Layout LOP」というものが新しく追加されました。
Layoutノードを作成し、パラメータビュー下側にある枠に対して先ほど読み込んだモデルをドラックアンドドロップします。

画像24

Solaris_Cut_Only.00_03_57_22.静止画023

すると、「Layout LOP」内にモデルを読み込むことができ、ここで読み込んだモデルを使用して任意の範囲に対してモデルを配置(レイアウト)することができます。
パラメータ上側にあるアイコン中から「Fill」のアイコンを選択し、シーンビュー上でエンターキーをクリックします。

Solaris_Cut_Only.00_04_13_06.静止画024

そして、任意の範囲を指定することで範囲内に読み込まれたモデルをランダムに配置することができます。

Solaris_Cut_Only.00_04_19_16.静止画025

また、こちらは読み込んだモデルの左上のトグルを有効にすることで、有効になったモデルのみを配置することもできます。

Solaris_Cut_Only.00_04_27_02.静止画026

Scatter」のタブ内にあるScaleのMin RadiusMax Radiusや、
Rotation Around NomalMin AngleMax Angleを変更し、サイズ、回転の最小値と最大値を決定することで、作成するモデルのサイズと、角度を範囲内でランダムで作成することもできます。

Solaris_Cut_Only.00_04_35_06.静止画027

Solaris_Cut_Only.00_04_43_09.静止画028

さらに、デフォルトでは、「Brush」のタブ内の「Brush Mode」が「Grid」になっているため、範囲はGridにて指定されますが、こちらは「Lasso」などに変更することで別の範囲指定方法でモデルを作成することもできます。

Solaris_Cut_Only.00_04_59_09.静止画029

Solaris_Cut_Only.00_05_02_21.静止画030

また、ここで配置されたものは、ブラシのタイプを「Delete」に変更し、指定範囲を消すことも可能です。

Solaris_Cut_Only.00_05_11_06.静止画031

Plase」を選択すると、任意の位置に、任意のサイズのモデルを作成することもできます。

Solaris_Cut_Only.00_05_14_16.静止画032

さらに、「Snap To Import」のトグルを有効にすることで、起伏のある地面などに対して接地するようにモデルを配置することができます。

Solaris_Cut_Only.00_05_21_10.静止画033

Solaris_Cut_Only.00_05_23_23.静止画034

Solaris_Cut_Only.00_05_37_04.静止画035

このように、Layout LOPを使用することで、Houdini18.5とは全く異なる方法でレイアウトをより直感的に行うことができるようになりました。

また、このレイアウト方法以外にも、「Restructure Scene Graph」を使用して入力されているシーングラフのプリム名やツリーの接ぎ木される場所を変更することも可能になりました。

そのほかにも「Scene Import LOP」が強化され、オブジェクトレベルのシーンをUSDに変換できるようになった他、USDのバージョンが「バージョン21.08」に更新されています。

またシーンビューにて選択されたプリムが全体に対して色がつくのではなく、アウトラインに対してのみ色がつくようになり、モデルが見やすくなりました。

Solaris_Cut_Only.00_06_09_03.静止画036

ほかにも、シーンビューの更新を一時的に停止し、シーンビューレンダリング中にシーンビューが動かないようにするボタンが追加されました。

Solaris_Cut_Only.00_06_18_15.静止画037

ここまで紹介したものが、主なSolarisの変更点となります。

Karma

Solaris_Cut_Only.00_06_31_21.静止画003

↓下のリンクから再生すると、該当箇所から再生されます↓

まず最初の変更点として、Houdini19.0のKarmaレンダラーでは、
Karma CPUレンダリングがベータから、プロダクションレンダラーとして
正式にリリースされました。
また新たにレンダリングモードとして、XPUエンジンがアルファ版として
リリース
されました。

現在Karmaレンダラーには、2つのレンダリングエンジンが搭載されています。

Solaris_Cut_Only.00_06_50_21.静止画038

CPU上のソフトウェアで実行されるKarmaCPUと、CPUとGPUのハードウェアアクセラレーションを利用する、KarmaXPUエンジンの2つです。

Solaris_Cut_Only.00_07_02_07.静止画039

上の画像は、XPUエンジンによってビューポートレンダリングを行った例になります。

またレンダリング時に、シーンビュー上の「Open Display Options」を押すか、シーンビュー上でキーボードのDキーを押してDisplay Optionsを開き、Guideタブから「Addtional Information」内の「Render Stats」オプションを有効にします。

Solaris_Cut_Only.00_07_11_10.静止画040

Solaris_Cut_Only.00_07_21_04.静止画041

そうすることで、シーン内のリアルタイムのレンダリング統計を確認することができます。

Solaris_Cut_Only.00_07_26_10.静止画042

Solaris_Cut_Only.00_07_29_09.静止画043

Back Ground Plate LOP

Houdini19で新機能として追加された、Back Ground Plate LOPノードを使用することで、ホールドアウトもしくはマットオブジェクトを作成することができます。

Back Ground Plate LOPノードを追加します。
ネットワーク内に、Karma Render Properties LOPノードが追加されていない場合は、Back Ground Plate LOPノードの下に追加する必要があります。

Solaris_Cut_Only.00_08_04_22.静止画044

Back Ground Plate LOPノードは、背景画像を読み込み、光の寄与をモデルに対して与えることで、映り込みなどを計算する機能になります。
光の寄与に使用したい背景画像をBack Ground Plate LOPノードのPlateパラメータの、Choose Imageから読み込みます。

この読み込んだ画像に関するデータは、Back Ground Plate LOPノードの2つ目のアウトプット、「Output Render Variables」から出力をされます。
そのため、Karma Render Properties LOPノード1の2番目の入力に接続をする必要があります。

Solaris_Cut_Only.00_08_44_22.静止画045

続いて、Karma Render Properties LOPノードの「Image Out」タブの中の、「AOVs(Render Vars)」タブを開きます。
その中にある、「Import Render Vars From Second Input 」という
オプションにチェックを付け有効にします。

Solaris_Cut_Only.00_09_03_16.静止画046

最後に、影を落として、かつファントムとして設定する床面のプリムを、Back Ground Plate LOPノードのPrimitivesパラメータに指定する必要があります。

Solaris_Cut_Only.00_09_15_08.静止画047

これで、シャドウと背景のプレートからの拡散反射をシーン内のオブジェクトに対して反映させることができます。

Solaris_Cut_Only.00_09_27_22.静止画048

また、シェーダー周りについて、MaterialXシェーダを用いてレンダリングが行えるようになりました。
MaterialXはオープンソースのシェーディング言語になります。
Karmaレンダラーに搭載されたXPUは、VEXベースのシェーダをサポートしておらず、将来的には、MaterialXでKarmaレンダラーで動作するシェーダーでを作成することになる予定です。

Houdini19では、バージョンアップに伴い、フル機能のPhysical Lens VOPが搭載されました。

ここまで紹介したものが、主なKarmaに関する変更点となります。

----------------------------------------------------------------

今回の記事はここまでとなります。
閲覧していただきありがとうございました。

この記事が気に入ったらサポートをしてみませんか?