こちらの記事では、Renderman for Houdiniインストール時に使用可能となるRendermanのライトについて、Houdiniのデフォルトライトとの比較と、いくつかの特有の設定について紹介致します。
RenderMan for Houdiniのインストール方法に関して
RenderMan for Houdini(非商用版)のダウンロード方法につきましては、こちらをご覧ください。
ライトの比較
今回はHoudiniのデフォルトライトとRenderManのライトの違いについて解説していきたいと思います。
RenderManのライトとHoudiniのデフォルトのライトは、基本的な構成は同じですが、非常に異なったものだとご理解ください。
RenderManのレンダリングにはRenderMan ROPを用います。こちらは専用レンダラであるため、Houdiniのデフォルトライトなど、RenderMan ROPに対応していないものは使用することができません。(レンダリングに反映させることが出来ません。)
また、その逆(RenderMan用のライト等をMantraでレンダリング)も行うことが出来ません。
RenderManとHoudiniのライトには、それぞれ以下のものがあります。
RenderMan用ライト |
Houdiniデフォルトライト |
比較して分かるように、共通している(同じ働きをする)ライトが多数あります。
ライトの機能紹介とレンダリング結果について
Rect Light(RenderMan)とArea Light(Houdini)の違い
ここでは同じ機能をもつライトの1組を例として、その設定項目の違いをご紹介致します。
RenderManのRect Lightと、HoudiniのArea Lightはどちらも四角形のライトです。パラメータは以下の通りです。
- Transformタブ
RenderMan:Rect Light |
Houdini:Area Light |
ご覧の通り、Rect LightにはArea Lightの要素が全て入っています。
- Lightタブ
RenderMan:Rect Light |
Houdini:Area Light |
こちらもご覧の通り、ほとんどの要素はRect Lightに含まれています。Rect Lightは、さらに細かな設定も可能となっています。例えば、コースティクスを用いない光の透過の設定等が可能です。詳細は後程紹介致します。
- Shadowタブ
影に関する設定は、Rect LightではLightタブに含まれています。
RenderMan:Rect Light |
Houdini:Area Light |
Area LightのLightタブで設定可能なパラメータがRect LightのShadowタブに含まれており、含まれるパラメータの要素としてはほとんど同じことが確認できます。
Rect LightにはRenderというタブがあり、そこではライトに対してmat内で作成可能なフィルターを適用する事が出来ます。(Shaderも適用できます。)
- Miscタブ
RenderMan:Rect Light |
Houdini:Area Light |
Rect LightでRenderの中に入っているパラメータがArea Lightの中に入っており、Miscタブに関しましても、要素としてはほぼ同じになっていることが確認できます。
以上で比較した通り、Houdiniのデフォルトライトで設定できるパラメータ等はRenderMan用のライトにも入っています。その中で、RenderMan用のライトには設定できる要素がさらに追加されています。
それでは、Rect LightとArea Lightのレンダリング結果を比べてみましょう。
RenderMan:Rect Light(見やすくなるようにパラメータを一部のみ変更しています。) |
Houdini:Area Light |
※Rect LightはRenderMan ROP、Area LightはMantra ROPでレンダリングしています。
ご覧の通り、同じ形状のライトでも特性が異なり、ほぼデフォルトの状態で比較しても、このような大きな差が生まれます。
RenderManのライトの設定項目の紹介
RenderManのライトの設定項目に関して、ジオメトリの形状によるライトを設置できるMesh Lightを使用して、詳しく説明していきたいと思います。
ライトにするオブジェクトの指定
Mesh Lightを使用する場合は、まずはじめにライトにするオブジェクトを選択する必要があります。
上の画像のように、「Light Geometry」パラメータでライトにしたいオブジェクトを選択してください。
具体的なパラメータの説明
- 影の設定
影の設定はShadowsタブで設定することが出来ます。
※ライトのAdvenced > Trace Light Pathsが有効になっている場合、すべてのshadowパラメータは無視されます。
Shadow Color
影の色を設定することが出来ます。
下の画像が、Shadow Colorをデフォルトの白色に設定しているときと、赤色に指定したときの結果の比較になります。
Shadow Max Distance
影の最大距離を設定することが出来ます。デフォルトでは -1.0となっています。
シェーディングされているポイントとライト上のポイント間の距離が使用され、このコントロールを使用して影を落とす距離を意図的に減らすことができます。
0の場合は影が落ちないようになります。
以下の画像は、最初の画像がShadow Max Distanceの値が0,次の画像が0.5の状態のものです。
Shadow Falloff
影の減衰が始まるライトからの距離の設定を行います。 デフォルトの-1.0では無効になります。こちらのパラメータはShadow Max Distanceと同時に使用することが出来、Shadow Max Distanceパラメータによって減少またはカットされたシャドウに対してのフェイクのフェードを作成することが出来ます。
Shadow Falloff Gamma
Falloffゾーンの影の強度のガンマ設定です。このパラメータを使うにはShadow Max DistanceとShadow Falloffの使用が必須になります。
- 詳細設定
詳細設定はAdvancedタブで設定することが出来ます。
Trace Light Paths
このライトからライトとフォトントレースを有効にします。
こちらが有効になっている間は、Shadowsタブの設定の全てを無効にします。この機能を使用して、PxrVCMまたはPxrUnified インテグレータを使用するときに、どのライトがフォトンを放出するかを選択することが出来ます。
Thin Shadow
Thin Shadowを有効にすると、このライトのリフラクションコースティクスを無効にします。Trace Light Pathsが有効な場合、このパラメータは無視されます。こちらは、コースティクス用のフォトンを生成せずに、透過オブジェクトにフェイクの色付きの影を作成する非物理的なコントロールです。
以下の画像は、青色のガラスのマテリアルを適用したモデルでThin Shadowを無効にしているものと有効にしているものの比較画像です。
Thin Shadowを無効にしているとき |
Thin Shadowを有効にしているとき(デフォルト) |
ご覧のように、有効になっている場合は影の色がマテリアルの色に即した色に変化します。
Visible in Refraction
こちらを有効にすると、ガラスや窓のような透過効果を通してライトが見えるように設定できます。
Manifold Walk
PxrUnifiedインテグレータと合わせて使用し、Enable Manifold Walkを有効にしてコースティクスを作成する事が出来ます。
※こちらを使用する場合は、Thin Shadowsを無効にする必要があります。
以下の画像は、Thin Shadowを有効にした際の結果と、このManifold Walkを有効にした際のそれぞれの結果画像です。
Thin Shadowを有効にしているとき |
Manifold Walkを有効にしているとき |
Manifold Walkを有効にしてPxrUnified VOP(インテグレータ)で設定することにより、さらに細かいコースティクス設定が行えます。インテグレータの設定手順につきまして、次の項目で紹介致します。
Manifold Walkを使用する際のインテグレータの設定
インテグレータとは
インテグレータは、光源からオブジェクトを通って(またはオブジェクトとボリュームを通って)カメラに到達するまでに通過する光を計算し、それをレンダラに返します。インテグレータは選択可能なレンダリングアルゴリズムのようなもので、複数用意されています。
主要なインテグレータとしては、双方向追跡型パストレーサー(PxrVCM VOP)とManiford Walkを扱うことのできるPxrUnified VOPがあり、品質確認で用いることのできるインテグレータとして、PxrDebugShadingContext・PxrValidateBxdf・PxrVisualizerがあります。
今回は上記の中のPxrUnifiedを使用して説明をしていきます。他のインテグレータの詳細につきましては、以下をご覧ください。
- RenderMan 22 Docs(英語記事)
- Pixar RenderMan 物理ベースのレンダリングに最適化された最先端のフレームワーク(RenderMan for Mayaの記事ですが、同様のインテグレータが使用可能です。)
インテグレータの設定方法
- Pxr Unified VOP
Pxr Unifiedは、Manifold Walkを使用して、より速いコースティクスと共にフォワードパストレースアルゴリズムと双方向選択の両方を実装しているインテグレータです。また 、シーンのより明るい部分やより重要な部分からサンプリングすることで、間接照明を向上させる間接誘導のオプションも含まれています。
それではManifold Walkを使用するために必要な設定方法を説明していきます。
shop > RIS Shader NetWorkの中にPxr Unified VOPを作成します。
パラメータは以下の画像のように表示されます。
Manifold Walkタブの中のEnable Manifold Walkを有効にします。
今回の記事では、Manifold Walkを使用するための設定のみ行っています。Pxr Unified VOPのその他のパラメータの詳細に関しましては、こちら(英語)をご覧ください。
次に、/out 内のRenderMan ROPのタブの中のIntegratorでPxr Unified VOPを指定します。
指定する際には、Operater TreeからPxr Unified VOPをRerderMan ROPのIntegraterにドラッグアンドドロップすると、簡単に指定することができます。
以上で設定は終了です。レンダリング結果にManifold Walkが反映されるようになります。
下の画像は、こちらの設定を行った後のレンダリング結果になります。
|
この画像とThin Shadowを有効にした画像を改めて比較してみます。
Thin Shadowを有効にしたもの |
ご覧の通り、Thin Shadowでは表現できていないコースティクスを表現することができます。
簡易的に影を作りたい場合はThin Shadowを有効にし、質感をある程度詰めたい場合はManifold Walkを使うといったように、状況によって使い分けることができます。
RenderMan for Houdiniのマニュアルについて
最後に、RenderMan for Houdiniの日本語マニュアルについて紹介致します。
こちらの記事では、RenderMan for Houdiniで使用できるライトに関する機能の一部を紹介致しました。日本語マニュアルでは、ライティング以外のその他の機能の設定方法や概要についても紹介されております。
日本語マニュアルはこちらよりご覧いただけます。ぜひご活用ください。