Houdini 21.0 SolarisとKarma

ポータルライト

ドームライトをポータルを使って最適化します。

On this page

ポータルライトは、実際の光源ではなく、ドームライトによるレンダリング処理を高速化する手法です。 ドームライトは、シーン全体を覆って、あらゆる方向に光線を放射します。 典型的な例を挙げると、窓から室内へ差し込む光がそうです。 そのようなシーンでは、光線の大部分が室外の照明に寄与します。 ポータルライトを用いることで、実際に室内照明に寄与する光線のみを考慮するようにKarmaに指示することができます。

ポータルライトと窓の類似性は非常に近いです。 ポータルは常に長方形ですが、縦横比を定義することができます。

セットアップ

まず最初に、Portal Light LOPが必要です。現時点で最も重要なパラメータは Primitive Path です。 このパスは、ポータルノードがScene Graph Tree上のどこに作成するかを定義します。 このパスは後ほど光源で必要になります。 一般的なパスは/lights/portallight1です。

次に、Dome Light LOPを配置します。 Portal Light LOPは、このDome Light LOPの上流または下流のどちらにも配置することができます。 とはいえ、パスを参照しやすくするために、通常はPortal Light LOPをLight系LOP(s)の上流に配置する方が便利です。 Dome Light LOPの入力をPortal Light LOPの出力に接続します。 Dome Light LOPの Base Properties タブを開きます。 Portals パラメータで、ポータルライトのパス(この例では、/lights/portallight1)を入力します。

ポータルのトランスフォーム

Light Portal SOPはオブジェクトと同様に動作し、他のジオメトリと同様にトランスフォームさせることができます。 光源の光線を建物の窓に制限したいとします。 これを行なうには、ポータルライトを窓の位置まで移動させる必要があります。 Portal Light LOPを選択して、 Transform タブを開きます。 そこで、正確な数値を入力することができます。

ビューポートハンドルを使用したい場合は、ビューポート上にマウスカーソルを置いてEnterを押すと、編集モードに入ります。 ハンドルを使用してギズモをスケール、回転、位置を調整することができます。 準備ができたら ⎋ Escを押して編集モードから抜けます。

Scale 値またはハンドルを使用することで、ポータルライトの実際のサイズを変更することができます。 別の方法として、 Base Properties を開いて、 WidthHeight を使用してポータルライトのアスペクト比を定義することができます。 しかし、 ScaleWidth/Height は互いに影響し合うため、どちらか 1つ の方法だけを使用することを推奨します。 例えば、 Height0.1Scale.Y0.1に設定すると、最終的な縦方向のサイズが0.1 x 0.1 = 0.01ユニットになってしまいます。

ポータルライトの向きも重要です。 向きが間違っていると、通常ではオブジェクトの外側を照らしてしまいます。 Portal Light LOPの Rotate パラメータを使用することで、向きを変更することができます。

複数のポータル

必要なだけポータルノードを追加することができますが、別のドームライトにもそれらのポータルノードを割り当てることができます。 ポータルライトは、ドームライトの上流または下流のどちらにも配置することができます。 例えば、3つの窓がある部屋で、各ポータルが別のドームライトに接続されているような構成(1つ目のライトは赤、2つ目は黄色、3つ目はHDRを保持)にすることができます。 もちろん、異なる強度やシャドウの設定で作業することもできます。 これによって、複雑なライトパターンや照明環境を表現することができます。 Portals パラメータに複数のポータルを追加したいのであれば、以下のようにスペース区切りのリストを指定します:

  • /lights/portallight1 /lights/portallight2 /lights/portallight3

以下の画像は、窓付きの立方体を示しています。 屋内を確認しやすくするために、1面が完全に除去されています。 また、このレンダリングはポータルなしの状態を示しています。 立方体の外壁が均一に照明されていることが分かります。

次のスクリーンショットは、3つの窓それぞれに呼応したポータルが接続された単一ドームライトを設置した場合の部屋の様子を示しています。 外側の壁が照明されなくなり、屋内が正しく照明されていることが分かります。

次の例は、前述の状況を3つのドームライトで再現したものです。各光源は別々のポータルに紐付けられています。

SolarisとKarma

SolarisとUSD

  • USDの基本

    いくつかUSDの概念について取り上げ、それらの概念とHoudini USD対応との関係性について説明します。

  • LOPの挙動

    Solaris LOP(Lighting Operator)がUSDを生成/変更する際の挙動について説明します。

  • Solarisユーザインターフェース

    LOPネットワークとUSDデータを操作するためのユーザインターフェースの使い方を案内します。

  • プリミティブマッチングパターン

    USDプリミティブマッチング構文の使い方。

  • LOPとUSDの用語集

    USDわかりますか?

  • Solarisシーンビューア

    Houdiniオブジェクト/SOPビューアと比較したSolarisビューアの違い/拡張について説明します。

  • USDでのVEXの使い方

    スクリプトによってSolaris/USDをカスタマイズする。

  • USDへ書き出す方法

    USDデータをディスクに保存します。

  • SOP Geometry I/O

    HoudiniがSOPジオメトリをUSDに変換する方法、その工程を制御する方法の詳細。

  • Component Builder

    Component Builderツールは、マテリアル、バリアント、ペイロード、レイヤをサポートし、SOPからUSDモデルを作成するためのネットワークスニペットを配置します。

  • パフォーマンスTips

    Solarisのインタラクティブなワークフローを向上させます。

  • サンプルシーン

    SolarisとUSDを学習するのに役立つシーンとアセットを紹介します。

Karma

  • Karma

    Houdiniの物理ベースのUSDレンダラー。

  • Karma XPU

    Houdiniの高速でモダンなXPUレンダーエンジン。

  • カラーマネージメント

    OCIO、カラー空間、ガンマ、トーンマッピングについて詳しく学習します。

  • レンダリング統計

    進行中のレンダリングやレンダリング画像のレンダリングプロセスに関して、様々な統計情報を表示する方法。

Karmaユーザガイド

ルック開発

  • MaterialX

    HoudiniにはMaterialXシェーダノードに呼応させたVOPノードが用意されています。これらのノードを使用してシェーダネットワークを構築したり、既存のMaterialXベースのシェーダをインポートすることで、(HoudiniのUSDレンダラーの)KarmaでMaterialXシェーダノードを利用することができます。

  • UDIMパス

    テクスチャ空間の異なるタイルを、それぞれ別の解像度で、異なるテクスチャファイルにエンコードすることができます。その後、kaiju.exrといったテクスチャファイル名を指定すると、Houdiniがロード時にそのトークンを特定のタイルアドレスに置き換えてくれます。

  • シェーダ変換

    シェーダノードのUSDプリミティブへの変換を含む、Solarisシェーディングフレームについて説明しています。

  • Shotbuilderツール

    マルチショットパイプライン用便利ツール。

プロシージャル

補足ドキュメント