Houdini 19.5 Solaris

ライティング向けLOPsチュートリアル 2

前回のチュートリアルの続きで、LOPsシーンにライティングを入れていきます。

On this page

始める前に

このチュートリアルを始める前に、ライティング向けLOPsチュートリアル 1を終わらせてください。

ライティングを始めましょう

では、ライティングを始める準備ができました。 高尚なパイプラインでは、LOPsライティングチュートリアル 1で行なったほとんどの作業が既にライティング部署向けに自動的に処理されるかと思います。あなたがすべき事は、USDファイルのインポートまたはHoudiniの.hipファイルを開いて、ライティングを始めることです。

ビューからライトをセットアップする1つの方法は、おおよそのライト視点でビューをタンブルさせて、“LOP Lights and Cameras”シェルフのどれかの“ライト”ボタンをCTL + クリックすることです。 これによって、現行ビュー視点でライトが作成されます。 しかしながら、LOPsには、ビューポート中心(または“カメラ中心”)でライティングを簡単にするための便利ツールがたくさん用意されているので、それらのツールを利用していきます(もちろん、さきほど説明したテクニックを使用しても構いません)。

カメラ中心のライティング

レンダーカメラ視点で残りのライティングを追加していきます。

  • LOPチェーンの最後にLight LOPを接続します。現時点では、このライトはワールド空間の0,0,0に配置されます。

  • このLOPの名前を“key”に変更します。

  • デフォルトでは、これはポイントライトです。必要に応じてパラメータエディタまたはシーンビューの上部にあるバーからライトのタイプを変更することができます。通常では、 Disk Light を選択するのが良いでしょう。

では、ライトを調整しましょう。再度、カメラビュー視点で、すべてのライティングを調整していきます。

ライトのハンドルをフル活用するために、⇧ Shiftを押しながらs/d/fキーによるトグルを使用して行きましょう。 これらのホットキーの組み合わせの1つを使用してから、ビューポート内のPrimをクリックして 興味のある領域 を選択すれば、それぞれスペキュラー反射、ディフューズ反射、シャドウ領域の位置をインタラクティブに選択することができます。 これらのどれかを使ってライトを調整すると、これまでとは若干異なったハンドルが表示されます。

  • ライトステート になっている間(ハンドルアイコンがオンになっている間):

    • SHIFT + d - ディフューズ配置モードに 切り替え ます。ディフューズ反射を落としたい領域上をクリックします。

      • SHIFT + sでスペキュラーモードに切り替えることができるので、スペキュラーハイライトの位置を選択することができます。

      • SHIFT + fでシャドウモードに切り替えることができます(後で説明します)。

    • CTL + SHIFT + - ライトの強度を調整します。

    • CTL + - ターゲットからライトまでの距離を調整します。

以下の動画では、ライトを原点に配置しています。 SHIFT + dでディフューズモードに切り替えて、ボトルをクリックして、ディフューズ反射をクリックした位置に配置しています。 次に、CTL + SHIFT + ドラッグでライトの強度を調整し、CTL + ドラッグでターゲットからライトまでの距離を調整しています。

Note

CTL + は、照らされたオブジェクトの輝度を維持しつつ、ライトをターゲットから近く/遠くに移動させます。 必要に応じて、ビューポートの上部にある Light メニューで、この挙動を無効にすることができます。 (“Keep Brightness”を有効にするということは、“輝度が一貫して維持されるものの、距離は自動的に調整されない”ことを意味します。)

Note

ビューポートで ライトステート に入るには、Light LOPを選択して、マウスカーソルをビューポート内に移動させて、ESCを押してからENTERを押します。

Note

各ライトには、 Diffuse Multiplier パラメータと Specular Multiplier パラメータがあります。 これらのパラメータによって、簡単にディフューズのみのライトやスペキュラーのみのライトを設定することができます。

ライティングを続けよう

いくつかライトを追加しましょう。 シーン内には、このチュートリアルで作成したキーライト1個と、前回のチュートリアルで作成した電球を表現したライトがあります。 必要だと思われるライトをすべてリストに挙げましょう:

  • 電球ライト

  • キーライト

  • 複数のリムライト

もちろん、他にもたくさんのライトが必要なこともあるでしょう。 しかし、今回は、上記のリムライトを配置していきましょう。

追加のライトを作成する

では、ライムライトを作成しましょう。

  • 新しいライトの影響を確認できるように、既存のライトをミュートにします。

Note

いくつかの方法(手順が少ない方法から非常に便利な方法まで)でライトをミュートにすることができます:

  • ビューポート内で 選択ステート にしたまま、ライトをクリックして、メニューから“Solo Lights”を選択する方法(ジオメトリに対しても同様の機能が存在します)。

    • NOTE: 選択ステート に入るには、マウスカーソルをビューポート内に移動させて、ESCを押してからSを押します。

  • 既存の Light LOPs をすべて無効にする方法(下図は、Bypassフラグを有効にしたライトです)。

  • Scene Graph Tree 内の“Active”トグルを使って、他のライトを非アクティブにする方法。

  • Scene Graph Tree 内の“Solo”トグルを使って、指定したライトのみを表示する方法(この項目はデフォルトでは表示されていません)。

    • 下図では、緑の円が“Active”トグル(トグルをオフにすると、そのライトがミュートになります)、青の円が“Solo”トグル(トグルをオンにすると、それ以外のライトすべてがミュートになります)。 赤の円には、ディスプレイオプションが含まれています(“Active”または“Solo”の項目が表示されていない場合は、ここで設定します)。

Warning

/lights全体をミュートにしないように注意してください。 これをしてしまうと、lights下の すべて のライトがミュートになるので、追加した新しいライトもシーンに影響を与えなくなってしまいます。

  • ノードチェーンの最後に Light LOP を接続します。

    • 名前を“rimRight”に変更します。

    • Typeを Disk に設定します。

    • ビューポート内で、SHIFT + Sで“スペキュラー配置”モードに切り替え、ボトルの中央の右側をクリックします。その結果のハンドルをドラッグして、いい感じのリムライトにします。

  • 同様に“rimLeft”を作成します。

Note

左側のリムライトを作成する最も簡単な方法は、単に右側のリムライトをコピーアンドペーストして、スペキュラーモードのまま、新しいスペキュラーの位置をクリックして選択することです。

Tip

この時点では、キーライトのスペキュラー寄与を無効にしておくと良いでしょう。

では、“rimBack”を作成しましょう。 このライトに関しては、“シャドウ配置”モードを使用します。

  • ノードチェーンの最後に Light LOP を接続します。

    • 名前を“rimBack”に変更します。

    • Typeを Disk に設定します。

    • このライトをソロにします。

    • ビューポート内で、SHIFT + Fで“シャドウ”モードに切り替えます。ビューポートのプロンプトに従います:

      • クリックで、ハンドルピボットの位置を決めます。

      • SHIFT + でターゲットの位置を決めます。

以下の動画では、まず最初に“rimBack”をソロにしています。 こうすることで、レンダリングがほぼ真っ黒になるので、GLシェーディングに切り替えました。 次に、SHIFT + Fで“シャドウ配置”モードに切り替え、クリックでハンドルピボットを配置し、SHIFT + でターゲットを配置しています。 次に、SHIFT + でターゲットをインタラクティブにドラッグして、いい感じのリムライトにしています。 配置したピボットポイントを基準にハンドルがどのように動くのかに注目してください。

Tip

ビューポートが ライトステート になっていれば、ツールチップの説明がなくてもCTL + SHIFT + ドラッグでライトの強度を調整することができ、 CTL + ドラッグで、ターゲットからライトまでの距離を調整することができます。

Light Linkerの使い方

バックリムライトは、すべてを照明しています(しかし、私たちはボトルのみを照明したいです)。 このライトを非常に遠い方へ移動させると、背景がその寄与を遮ってしまいます。 ライト中心 のLight Linkingによって、これを修正しましょう。

  • ノードチェーンの最後にLight Linker LOPを接続します。

  • Light Linker LOPのパラメータエディタで、Lightsパネル内の“rimBack”ライトを中央のRulesパネルにAltドラッグします(これは Shadow Link を作成します)。

  • Geometryパネル内の“Background/Cyclorama/mesh_0”をRulesパネルの“三日月”アイコン上にドラッグします(つまり、“このオブジェクトからの影を落としません”)。

これで、バックリムライトがBackgroundで遮られなくなりました。

  • 再度、Lightsパネル内の“rimBack”ライトを Light Linker の中央のRulesパネルにドラッグします。

  • Geometryパネル内の“Table/Bottles”をRulesパネルの“太陽”アイコン上にドラッグします。

これで、“rimBack”ライトがボトルのみを照明するようになりました。

Tip

オブジェクト中心 のLight Linkingをしたい場合は、ジオメトリを中央のRulesパネルにドラッグすることで可能です。

ライティングを微調整する

LOPsライティングチュートリアル 3では、ライトを微調整して、レンダリング結果をディスクに書き出します。

Solaris

USD

ジオメトリ

  • SOPをUSDに取り込む方法

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

  • Component Builder

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

レイアウト

  • Editノード

    ビューア内でインタラクティブにPrimsをトランスフォームさせます。物理衝突を使用して、プロップを現実的に配置することができます。

  • Layoutノード

    インスタンス化されたUSDアセットをシーンに取り込むツールが備わっています。個々にコンポーネントを配置したり、カスタマイズ可能なブラシを使って色々な方法でコンポーネントをペイント/スキャッターしたり、既存のインスタンスを編集することができます。

  • カスタムレイアウトブラシ

    Layout LOPの挙動をカスタマイズして利用可能なレイアウトブラシデジタルアセットの作成方法。

シェーディング

  • シェーダフレームワーク

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

  • SolarisでのMaterialXの使い方

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

  • UDIM

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

Karmaレンダリング

チュートリアル