On this page

概要

RenderManのRISは、効率的なグローバルイルミネーション向けに設計されたレンダリングモードです。 RenderManノードにある RIS Mode チェックボックスを有効にすると、このモードを使うことができます。

このレンダリングモードは、C++プラグインとして実装されているBxDFシェーダを使用します。 これらのシェーダはHoudiniでは、RIS shading network内に配置可能なデジタルアセットノードとして表現されています。 (まさにサーフェスシェーダのように)ジオメトリに割り当てるBxDFシェーダだけでなく、RenderManノードIntegrator パラメータで参照可能なインテグレータシェーダもあります。 また、色々なパターンシェーダやユーティリティシェーダもあります。これらのシェーダは、メインシェーダパラメータを動的に計算するためのBxDFシェーダの入力として用意されていたり、シェーディンググループやレイヤを作成するために用意されております。

RISシェーダだけでなく、RIS shading networkではOSLシェーダも使用可能です。 OSLシェーダは、OSLシェーダノードを使って定義することができます。 また、OSLシェーダが.osoファイルとしてコンパイルされている場合には、RISシェーダ同様、デジタルアセットを使って定義することができます。 唯一の違いは Render Mask で、OSLシェーダに関してはOSL(RISシェーダに関してはRIB)に設定しなければなりません。 OSLシェーダは、RISパターンシェーダと同じ方法で使用されます。

RISの詳細は、RenderMan for Houdini (RfH)またはRenderMan Wikiのドキュメントを参照してください。

How to

To...Do this

対応するカスタムC++プラグインに対して新しいBxDF、インテグレータ、またはパターンシェーダノードを定義する

  1. メインメニューで、 File ▸ New Operator Type… を選択します。

  2. 新しいノードタイプの名前とラベルを指定します。

  3. オペレータスタイルとして VEX Builder Type を選択し、 Accept を押します。

  4. ポップアップ表示されたPropertiesダイアログの中で、 Input/Output タブへ進み、 External or Procedural Shader を有効にします。

  5. Node タブで、 Shader Name としてC++プラグイン名を指定します。

  6. ドロップダウンメニューから適切な Shader Type を選択します(例、BSDF Shader)。

  7. RenderManがシェーダを使用できるように、 Render Mask としてRIBを指定します。

  8. RIS shading network内でTabメニューに表示させるために、ノードに対してrisnetVopNet Mask として指定します。

    Tip

    レンダーマスクを確定するために Apply をクリックすると、次のステップでパラメータが RMan Type オプションを表示します。

  9. Parameters タブで、シェーダのパラメータを定義します。 RMan Type も必ず同時に指定してください。

  10. Input/Output でオプションとして入力や出力を定義します。

    Create Inputs from Parameters をクリックすると、入力を自動的に生成することができます。

OSLシェーダを作成する

  1. RIS shading networkでTabを押し、Tabメニューを開いて OSL Shader を作成します。

  2. OSLシェーダの中に入り、そのロジックを定義します。

  3. Parameter VOPを使ってシェーダ入力パラメータを定義します。

  4. Parameter VOPの Export パラメータを入力-出力シェーダパラメータにするために、 When Input is Connected に設定します。

マテリアル

マテリアルの使い方

テクスチャとUV

マテリアルの作成

導師レベル

他のレンダラー