On this page

Karma

  • KarmaはRender Geometry Settings LOPを介してステンシルマップに対応しました。 それ関連のパラメータは Karma タブの Shading セクションにあります。

  • KarmaのVariance Oracleは、サンプリング不足なAOVやノイズの多いAOVを回避するために、複数の画像プレーン内のVariance(差異)を推定できるようになりました。 画像プレーンをスペースで区切ったリストをKarma Render Settings LOPに追加することができます( Advanced ▸ Sampling ▸ Primary Samples に進み、 Planes パラメータにそれらのAOVを追加します)。 例えば、fooホールドアウトAOVを改善したい場合は、C fooと入力します。 すると、CビューティーAOVとfooホールドアウトAOVの両方のノイズが大幅に減少します。

  • Karmaは、ディスプレイスメントシェーダがCOPテクスチャを参照した時にIPRを適切に更新するようになりました。これは、 Continuous Dicing が有効になっている必要があります。

  • カーブにディスプレイスメントシェーダが適用されていると、Karmaはそのカーブメッシュ上の頂点を変位させるようになりました。 これは、Karmaのポイントメッシュの変位と同様です。

  • Karmaがマテリアルパラメータ(カラーパラメータやテクスチャマップパラメータを含む)のcolorSpaceメタデータに対応しました。

Karma XPU

  • 新しく追加されたPre-compile Karma XPU Render Kernels機能は、Karma XPUでレンダリングした時のインタラクティブ性を向上させ、最初のピクセルのレンダリングまでの時間を短縮するためにあります。

    Note

    この機能は まったく任意 であり、プリコンパイルを行なわなくてもKarma XPUの機能には影響しません。 そうしなくてもレンダーカーネルはレンダリング時に必要に応じて自然にコンパイルされます。

  • Karma XPUは、新しく追加されたGeometry Light LOPを使ったボリュームライトに対応しました。 API Schema ドロップダウンメニューから VolumeLightAPI オプションを選択することで、ボリュームプリミティブを光源に変換することができます。

  • Karma XPUでは、アルベドマップが1より大きい輝度値を持てるようになりました。その結果はKarma CPUと同じになります。

  • Render Geometry Settings LOPの Uniform Volume 機能がポイントでも動作するようになりました。

  • Karma XPUは、バックグラウンドホールドアウトマテリアルと併用した部分的な不透明度に対応しました。 以前のバージョンでは、このマテリアルタイプは、ホールドアウト以外の領域には完全不透明なシャドウしか落とせませんでした。

  • Karma XPUがstring型のPrimvarに対応しました。 例えば、テクスチャパスPrimvarを定義し、Mtlx Geometry Property Uniform Value VOPを使用して、それをMtlX Image VOPfile 入力に接続できるようになりました。

  • MIS CompensationがKarma XPUでも利用可能になりました。 MISとは“Multi Importance Sampling:複数の重点サンプリング”の略で、レンダリングされる画像内のノイズを効率的に削減することができます。 これによって、IBL/ドームライトやKarma Physical Skyライトが改善されます。

  • Karma XPUは、シーン毎に最大4つのジオメトリサブセットに対してシャドウリンクに対応するようになりました。 シャドウリンクは、ジオメトリのサブセットのみがオブジェクトのシャドウに寄与することを意味します。

  • MtlX Mix VOPを介して最大で16個のMtlX Standard Surface VOPまたはMtlX OpenPBR Surface VOPをブレンドできるようになりました。 以前のバージョンでは、ブレンドは2個のシェーダまでに制限されていました。

  • Karma XPUが Data Deduplication(データ重複除去) を実行するようになりました。 これによって、シーン内に同一のジオメトリまたはPrimvarが存在する場合にメモリ使用量を削減することができます。

Husk

  • huskは、SIGTERM(終了要求シグナル)が発生した時にチェックポイントとスナップショットのファイルを書き出すようになりました。 例えば、killall -SIGTERM karmaを実行すると、完全レンダリングではなく部分画像が取得されます。

  • huskは、コマンドラインオプションを使用してすべてのRender Productをオーバーライドできるようになりました。 例えば、karma:dcmDeep画像を含んだUSDファイルがあるとします。 karma -o x.exr,d.exr -V1 dcm.usdを実行すると、output.exrdcm.exrの代わりにx.exrd.exrが取得されます。 これは、Karma以外のレンダーデリゲートでも動作します。

  • huskの自動タイリング機能に以下の新しい機能が施されました:

    • Deep画像に対応しました。

    • 画像をタイリングする時のタイルの最大解像度を指定する--autotile-resオプションが追加されました。

    • レンダリングされるタイルの数(x * y)を定義する--tile-count ‹x› ‹yオプションが追加されました。 これは、--autotileフラグと併用した場合にのみ動作します。

  • huskには、出力画像にメタデータを追加するためのコマンドラインオプションが追加されました。 例えば、husk --extra-metadata custom-key "Hello world" -o karma.exr test.usdのようなコマンドを実行してから、iinfo -v karma.exrを実行すると、そのカスタムメタデータを確認することができます。

  • huskは、レンダリング にRender Productを作成することができるかどうかをチェックするようになりました。 例えば、画像やAOVに無効なファイルパスが定義されていた場合、huskは、その場所が存在しない旨の警告を出し、レンダリング処理は開始されません。

    Note

    このチェックは、USD Render ROPRender to Disk または Render to Disk in Background を使ってレンダリングを開始した場合でも実行されます。 このチェックを無効にするには、--disable-disk-checkオプションを使用します。

  • huskは以下の処理によってレンダーデリゲートを決定するようになりました:

    • (--renderer)コマンドラインオプションを検索します(最高優先度)。

    • Render Settings LOP上のhusk:default_delegateプロパティを検索します。

    • HOUDINI_HUSK_DEFAULT_DELEGATE環境変数を使用します。

新しいノード

  • 新しく追加されたKarma Texture Baker LOPは、標準AOVからカスタムAOVまで幅広く書き出すことができます。 また、このノードを使用した完全なワークフローガイドも用意されています。

  • 新しく追加されたPortal Light LOPによって、ポータルライトの作成が簡単になりました。 このノードは、矩形ポータルを定義することができます。

    Note

    Portal Light LOPは、Dome Light LOPと組み合わせて使用した場合でのみ動作します。 Dome Light LOPには、 Portals パラメータが用意されており、そのパラメータにPortal Light LOP(s)を追加することで、それらのポータルライトが動作します。 詳細は、ここを参照してください。

  • 新しく追加されたKarma Shadow Catcher LOPは、レンダリング時にホールドアウトオブジェクトやマットオブジェクトを構成することができます。

  • 新しく追加されたBake GSplat SOPは、Karma XPUでのGaussian Splattingに対応しています。 このノードは、Karma XPUのレンダリングを高速化するために、ポイントクラウドを含んだPLY入力が必要になります。 現在のところ、このテクニックはテクニカルプレビュー段階であり、プロダクション準備段階にはないことに注意してください。

  • 新しく追加されたKarma Whitewater VOPは、ボリュームにスペキュラー成分を追加することができます。 また、 Karma Whitewater Material レシピを使用することで、このVOPを使用した基本的なWhitewater(白波)シェーダを作成することもできます。 Whitewater(白波)は、河川や入り江の急流箇所などの乱流水域だけでなく、打ち砕ける海の波でも発生します。 このVOPはKarma CPUとKarma XPUと互換性があります。

  • 新しくなったKarma Fur 2.0 VOPにGGX wetness系パラメータが追加されました。 これらのパラメータは、 Dirt & Wetness タブにあって、名前が WetnessWetness ColorWet IORWet Roughness です。

    このノードには、色々なタイプ(例えば、ボブキャット、犬、狐、そして人間の毛髪)のファー用のプリセットも用意されました。

    Igor Zanic
  • 新しく追加されたKarma Melanin VOPは、ヘアー、ファー、フェザーのレンダリングを改善することができます。 このKarma Melanin VOPは、メラニンとフェオメラニンの異なる色素濃度に対するヘアーの反応をシミュレーションします。

  • 新しく追加されたRender Pass LOPは、レンダーパスを表現したUsdRenderPass Primを作成/編集することができます。

  • 新しく追加されたKarma Ray Switch VOPは、光線タイプ(例えば、ディフューズ、光沢屈折、SSS)に基づいてカラーまたは入力を評価することができます。 高度なマテリアルの組み合わせを作成することもできます。

  • Karma Render Settings LOPの Image Output タブの Metadata サブタブに新しく Custom Metadata オプションが追加されました。 また、新しくHusk Image Metadata LOPが追加されました。 これは、huskを介してRender ProductやRender Vars(AOVs)にカスタムメタデータを追加することができます。

ノードの改善点

  • Render Geometry Settings LOPの Limits セクションに Limit Components パラメータと Limit Color パラメータが追加されました。 Limit Components パラメータには、reflectrefractなどの光線タイプをスペースで区切って入力します。 指定したタイプの光線が Limits セクションで設定した制限回数に到達すると、レンダリング画像にその Limit Color が表示されます。

  • Karma Render Settings LOPは、 Quick Setup パラメータの代わりにレシピを使用するようになったので、そのパラメータは削除されました。

  • Karma Render Settings LOPの Automatic Ray Bias オプションが改善されました。これによって、(手動で) Ray Bias パラメータを微調整しなくても複雑なシーンをレンダリングできるようになりました。 例えば、a glass with Nested Dielectricsを使ったグラスには、非常に小さな Ray Bias が必要になる場合が多かったです。 この改善された自動モードによって、もはや異なる値をテストする必要がなくなりました。 この副次効果として、Karma XPUがKarma CPUと同等の性能になりました。

  • 新しくなったKarma Background Plate LOPは、より高速で直感的なワークフローを実現するためにユーザインターフェースが改善されました。

  • Karma Hextiled Texture VOPに新しく追加されたdirection入力は、カーブ接線に基づいて六角形タイルの向きを変更することができます。

  • Karma Hair VOPに新しく追加されたabsorption入力は、新しく追加されたKarma Melanin VOPのabsorption出力を接続するのに必要です。

  • MtlX Image VOPは、オプション(で非表示になっている)karma_blurkarma_pixelblurkarma_widthの品質入力に対応しました。 これらの入力は、そのVOP上のレシピを使用して追加することができ、Edit Properties LOPからアクセスすることができます。

  • Render Geometry Settings LOPFake Caustics セクションには、新しく Fresnel Darken パラメータが追加されました。 0の値は何もしません。値が大きいほど、フレネル効果が暗くなり、1でシャドウが完全に暗くなります。

  • 新しく作り直されたKarma Ray Import VOPは、ray:curveattribPray:hitNgなどの多くの変数から特定の変数を選択した時にシグネチャがすぐに切り替わるようになりました。

  • MtlX Worleynoise3D VOPMtlX Worleynoise2D VOPには、新しく Cell Style ドロップダウンメニューが追加されました。 ここから DistanceSolid のセルタイプを選択することができます。

  • Coordinate System LOPCoordSysバインディングの処理が改善されました。

  • Render Geometry Settings LOPの Volume Shadow Step Rate パラメータに1未満の値を設定できるようになりました。 これによってレンダリングが高速化されますが、品質と精度が悪くなります。

  • 新しく追加された Lookup Offset モードは、HoudiniボリュームとVDBボリュームのモーションブラーレンダリングを高速化します。 このモードは、Render Geometry Settings LOPの Karma ▸ Motion Blur ▸ Volume Velocity Blur Mode ドロップダウンメニューにあります。

  • Karma Ray Import VOPray:backfaceブール変数(0, 1)が追加されました。 これは、当たったサーフェスが裏面かどうかを示します。

  • USD Render ROPノードの Husk タブに Texture サブタブが追加されました。 この Texture サブタブでは、パラメータやドロップダウンメニューを使ってhuskのOpenImageIOテクスチャオプションを簡単に制御することができます。 例えば、Mip-mapの最大解像度やOIIOテクスチャキャッシュで使用されるオープンファイルの最大数を調整することができます。

    Note

    一部のレンダーデリゲートでは、これらのパラメータは考慮されません。

レンダリング & AOVs

  • Houdiniは、レンダーデリゲートの新しい標準インターフェースとしてHydra2に対応しました。 これはhuskでも同様です。 Hydra2はHydraと下位互換がありますが、Hydra2を無効にしたいのであれば、USDIMAGINGGL_ENGINE_ENABLE_SCENE_INDEX=0環境変数を設定することもできます。

  • Karmaは、VDBポイントとアイソサーフェス(“レベルセット”)を直接レンダリングできるようになりました。 新しく追加されたKARMA_LEVELSET_METHOD環境変数は、アイソサーフェスをレンダリングする時にシャドウアーティファクトを回避し、より滑らかなサーフェスを作成するのに役立ちます。

  • モーションブラーを適用してアイソサーフェスをレンダリングするには、Render Geometry Settings LOPLattice Deformation モードを使用する必要があります。 このモードは、 Karma ▸ Motion Blur ▸ Volume Velocity Blur Mode ドロップダウンメニューから利用可能です。

    Note

    Volume Velocity Lattice Quality パラメータは、Velocityのサンプリングに使用されるラティス構造の解像度を制御します。 値が高いほど品質が良くなりますが、レンダリング時間にも大きな影響を及ぼします。

  • レンダリング統計情報husk情報がDeep画像メタデータに追加されるようになりました。

  • Enable Internal Reflection を無効にすると、反射成分の不足によるエネルギー損失が原因で、屈折オブジェクトの裏面には何も暗い領域が出なくなります。 このパラメータは、Render Geometry Settings LOPの Shading セクションにあります。

  • Render Geometry Settings LOPに新しく追加された Efficient Emissive Sampling パラメータは、パフォーマンスを改善するために Treat as Light Source パラメータを置換しました。

  • Karma Render Settings LOP上でLPEベースのalbedoパスを作成できるようになりました。 このRender Varのシグネチャはcolor3f/hです。ライトに対して記述する通常のLPEは最後がLで終わりますが、アルベドに対しては代わりにAを使用します。

  • Karma Render Settings LOPにalbedoAOV用のプリセットが追加されました。 このノードの Image Output ▸ AOVs (Render Vars) タブに進み、 Extra Render Vars セクションで新しくRender Varを作成し、 その Name ドロップダウンメニューで、例えば Glossy Reflection Albedo などのエントリーが見つかります。

  • Deep画像をレンダリングする時、Karmaは、自動的に Image ModeBucketBucket OrderTop にするようになりました。

  • P (for non-holdouts)P (for holdouts)などの新しいレンダー変数のサンプルが追加されました。

  • サブディビジョンサーフェスでのレンダリング速度とメモリ使用量が大幅に改善されました。

  • ビルトインのalbedo AOVは、LPEベースのディフューズアルベドを使用するようになりました。

  • Render Geometry Settings LOPの Dicing セクションに新しく Dicing Predisplace オプションが追加されました。 以前のバージョンでは、ディスプレイスメントシェーダはDicingの に適用されていました。 大きな変位のあるシーンでは、スクリーン外にあるジオメトリが可視領域まで押し出されてしまっていたので、その結果として、しばしばフェースが角張って表示されていました。 この効果は通常ではRender Settings LOPのOffscreen Qualityを1に設定することで修正することができました。 しかし、この値は大量のRAMを消費していました。

  • Karma Render Settings LOPの Image Output ▸ AOVs (Render Vars) ▸ Extra Render Vars には、新しく Utility Path Expression パラメータが追加されました。 このパラメータにLPEを使用することで、特定のライトパス(例えば、屈折)を通したユーティリティAOVを書き出すことができます。 LPEの詳細とサンプルは、そのパラメータのヘルプを参照してください。

  • Karma Render Settings LOPの Image Output タブには、新しく Shadow Catcher タブが追加されました。 このタブにあるパラメータは、beauty AOVにホールドアウトシャドウを追加することができます。

  • Karma Render Settings LOPに新しく追加された DCM Use Hit Distance トグルは、z/zbackチャンネルに対してカスタムレンズの投影深度の代わりにカメラ距離を使用します。 このパラメータは、 Deep Output タブにあります。

  • LPEに新しく追加された否定演算子によって、ユーザ側でコンポジット時に手動でカスタムアルファAOVを反転しなくて済むようになりました。 OSLスタイルの!(ビックリマーク)をLPEの頭に付けることで(例えば、!CB)、Karma内で直接チャンネルを反転させることができるようになりました。

  • SSSトレースセットに対応しました。 これによって、同じトレースセットを共有しているメッシュに対してSSSライトパスを通すことができるようになりました。 これを使用することで、同じトレースセット名を持つすべてのメッシュが繋がっているものとしてレンダリングされるようになるので、 SSSが適用されたキャラクタが別々のパーツに分かれている時に、それらのパーツ間の不連続性アーティファクトを除去することができます。

    Note

    Karma XPUでは、1シーンにつきトレースセットが最大4つまでの制限があります。

シェーディング

  • MatX OpenPBR Surface VOPは、物理ベースの新しいシェーダです。 このシェーダは、Karma CPUとKarma XPUで動作します。

  • MtlX Normalmap VOPに追加されたレシピは、MikkT法線マップの作成をサポートする新しいパラメータを追加します。

  • トゥーンアウトライン(Karma CPU)機能が実装されました。これによって、オブジェクトのアウトラインをレンダリングすることができます。 これらのパラメータは、Karma Render Settings LOPの Rendering ▸ Outline タブにあります。

  • Render Geometry Settings LOPの Shading セクションに新しく Thinwall At Refract Limit チェックボックスが追加されました。 これによって、透過オブジェクト内部に閉じ込められた光線が屈折制限に到達した時に抜けることができ、グラスの縁でよく見受けられる典型的な黒い縁取りを回避することができます。

  • (MtlX Image VOPAddress Mode UAddress Mode Vconstantに設定して)デカールをレンダリングした時、 UV値が0のそのデカール外の領域は、テクスチャの左下コーナーのカラー値が出力されていましたが、このノードの Default Color を正しく出力するようになりました。

  • MtlX Standard Surface VOPMtlX OpenPBR Surface VOPは、レンダーAOV(Render Vars)で使用されるbasecolorパラメータの自動エクスポートに対応しました。

    その適切なプリセットがKarma Render Settings LOPにあります。 Image Output ▸ AOVs (Render Vars) ▸ Extra Render Vars ▸ Render Var に進んでください。 Name ドロップダウンに Base Color という項目があります。

  • 間接光線がFake Caustics(疑似コースティクス)を評価するようになり、透過オブジェクト近辺の間接ディフューズバウンスが実際よりも暗くならないようになりました。

  • Nested Dielectrics優先度がKarma CPUとXPUで同じ扱いになりました。 以前のバージョンでは、Nested Dielectrics優先度の0は、Karma CPUでその機能を無効にするための特別な値として予約されていました。 今では、0の値は有効なNested Dielectrics優先度となっています。

ライティング

  • メッシュライト、ポイントライト、カーブライトに対応しました。 詳細は、Geometry Light LOPジオメトリライトワークフローガイドを参照してください。

  • Karma Light Filter Attenuation VOPには、必要に応じて光の減衰を無効にする None オプションが追加されました。

  • Karma Render Settings LOPのColor limitは、強い光源が原因でレンダリングにギザギザなエッジが出ないように可視ライトにも適用されるようになりました。

  • Color Limitは色相を維持するようになったので、白にクランプされることがなくなりました。

  • Light LOPTypeDisk のライトは、 Karma タブにある Spread パラメータに対応し、レーザービームのような集光されたライトビームを実現できるようになりました。

環境変数

  • Karmaは、未使用のPrimvarを除去するようになりました。 この処理は、VRAM容量を空けて、処理時間を短縮させるのに役立ちます。 新しく追加されたKARMA_PRUNE_PRIMVARS環境変数には、これを制御するための値が3つ用意されています。 デフォルトでは、この除去処理はインタラクティブレンダリングでは無効になっています。

  • 新しく追加されたKARMA_XPU_DEVICES環境変数は、特定のEmbreeやOptixのデバイスを選択することができます。 例えば、optix0optix3のみを選択したり、Embreeデバイスでのみレンダリングするように設定することができます。

  • 新しく追加されたHOUDINI_HUSK_DEFAULT_DELEGATE環境変数がhuskで利用可能になりました。 -R [ --renderer ]引数を使用することで、優先されるデリゲートがこの環境変数値のデフォルトのデリゲートとなるように指定することができます。

その他の改善点

  • 新しく追加されたwidth_scaleアトリビュートによって、ユーザは、ジオメトリを再びエクスポートすることなくポイントのサイズやカーブの幅をスケールできるようになりました。

  • 裏面および表面のCulling(間引き)は、ポイントおよびポイントメッシュでも動作するようになりました。

  • Karma Render Settings LOPの Filters タブに新しく Use CPU Only オプションが追加されました。 これを有効にすると、デノイザは、大きな画像やGPUを搭載したファームマシン上でのメモリ問題を回避するために、CPU上でのみ実行されるようになります。

  • idenoiseコマンドラインツールには、OIDNデノイザをCPU上でのみ実行させる--oidn-cpuオプションが用意されました。

  • 新しく追加されたTone Map COPは、入力画像にフイルム調なトーンマッピングカーブを適用することができます。 このスタイルは、Karma Render Settings LOPで用意されているものと同じです。

  • NVIDIA OptiXデノイザが8Kよりも大きい画像を扱えるようになりました。 tilesizetileoverlap(デフォルトは、それぞれ2048と8)を使用してタイリングの挙動を制御することができます。

  • Mip-mapのフィルタリングが改善されました。 imaketxは、.exrテクスチャだけでなく.tifテクスチャも生成できるようになりました。

  • Houdiniネイティブボリュームのうち、integervectorのストレージタイプがKarmaで対応しました。

  • 新しく追加されたBackground Holdouts Occlude Shadowsグローバルプロパティは、シャドウ光線が自己遮蔽されていたり、他のバックグラウンドホールドアウトで遮蔽されていた場合に、バックグラウンドホールドアウトがシャドウを受けないようにします。

What’s new in Houdini 21