On this page | |
Since | 18.0 |
概要 ¶
Karma LOPは、Render Vars、Render Product、Karma Render Properties、USD Renderのノードの機能を組み合わせて、Karma固有の設定を使って(MantraのMantraレンダーノードと同様に)すべての局面のレンダリングを1箇所で構成できるようにしたものです。
このノードは、Karmaでレンダリングできるように構成されたUSDシーンを出力するので、それをディスクに書き出したり、LOPノードを使用してさらに修正することができます。
パラメータ ¶
Render to Disk
直近のレンダーコントロール設定でレンダリングを開始します。 これは、レンダリングが完了するまでHoudiniをブロックします。
Render to MPlay
画像ファイルに書き出すのではなく、MPlayプレビューウィンドウに直接レンダリングします(MPlay内から画像をディスクに保存することができます)。
Render to Disk in Background
直近のレンダーコントロール設定でレンダリングをバックグラウンドで行ないます。
Render All Frames With a Single Process
すべてのフレームをバックグラウンド処理でレンダリングします。 デフォルトは無効です。 これによって、レンダープロセスを走らせながらHoudiniで作業を継続することができます。
複数フレームをレンダリングするために、レンダープロセスは、(Solarisビューポートがアニメションを再生する方法と同様に)画像をレンダリングしてからシーンのタイムラインを進めて次の画像をレンダリングします。 フレーム間で共有されるデータがたくさんある場合、プロセスあたり1フレームレンダリングするのと比べて、複数フレームレンダリングの方が非常に速くなります。
Rendersettings Primitive Path
レンダリングで使用するRenderSettings
Primのシーングラフパス。
これが空っぽの場合、このノードはルートPrim上のデフォルトのRenderSettings
Primを検索します。
ルートPrimにRenderSettings
Primが存在しなかった場合、このノードはデフォルト設定を使用します。
Output Picture
出力される画像ファイル名(通常では.EXR
ファイル)、または、画像をMPlayに出力するならip
を指定します。
ファイル名に$F
を含めることでフレーム番号を挿入することができます。
これは、アニメーションのレンダリングでは必須です。
詳細は、ファイル名のエクスプレッションを参照してください。
Camera
シーンのレンダリングに使用するUSDカメラPrim(UsdGeomCamera
)のパス。
Resolution
出力画像の水平サイズと垂直サイズ(単位はピクセル)。
Rendering Engine
レンダリングエンジンを選択します。
CPU
完全にCPU上で実行します。このエンジンは完全にソフトウェア制御であるので、 一般的には 機能が多くて出力結果が正しいですが、現在のところ実験段階のXPUエンジンと比べてはるかに遅いです。
XPU
XPUエンジンは、利用可能なCPUとGPU(グラフィックカードハードウェア)のリソースを使用します。 このエンジンは、GPUで可能な処理の制限を継承しているので、 一般的には 機能面でCPUエンジンに遅れていますが、CPUエンジンよりもはるかに高速です。
Simplified Shading
すべてのシェーディングとライティングを無効にします(カメラからの1つのヘッドライトでレンダリングされます)。 これは、シェーディングビューのレンダリングがあまりにも遅い場合にプレビュー用途で役立ちます。
Pixel Samples
各ピクセルから送信される光線サンプルの数。 光線サンプルが多いほど、ノイズの少ない画像が得られます。 別名 Primary Samples とも呼びます。
Rendering ¶
Sampling ¶
Min Secondary Samples
コンポーネント毎のバリアンスアンチエイリアスで送信する光線の最小数。
Max Secondary Samples
コンポーネント毎のバリアンスアンチエイリアスで送信する光線の最大数。
Diffuse Quality
このパラメータは、間接ディフューズコンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Reflection Quality
このパラメータは、間接反射コンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Refraction Quality
このパラメータは、間接屈折コンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Volume Quality
このパラメータは、間接ボリュームコンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
SSS Quality
このパラメータは、SSSコンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Light Sampling Mode
Karmaにライトの均一サンプリングを実行させるのか、または、レンダリングでライトツリーを使用するのかどちらかを指定します。 ライトツリーは、膨大な数のライトを持ったシーンに対して非常に高速にレンダリングすることができます。
一部のライトはライトツリーに追加することができず、すべてKarmaでサンプリングされます:
-
Dome Lights
-
Distant Lights
-
Point Lights
-
ライトフィルターを持ったライト
-
シェイプコントロールを持ったライト(例えば、スポットライト)
Light Sampling Quality
これは、すべてのライトのサンプリング品質を改善するためのグローバルコントロールです。 これは、個々のライト品質コントロールの乗数として作用します。 サンプリング品質を上げると、直接照明サンプリングだけでなく、シャドウ/オクルージョンの品質も良くなります。
Screendoor Samples
光線が部分的に不透明なオブジェクトを通過する時にシェーディングされる透明サンプルの数。 この数を増やすと、部分的に不透明なオブジェクト内のノイズが少なくなり、通常では Pixel Samples , Volume Step Rate , Min Ray Samples , Max Ray Samples を増やすよりも負荷が少ないです。 ただし、このパラメータは、 Indirect Sources からのノイズには何の効果もありません。
Volume Step Rate
光線がボリュームを通過した時にそのボリュームをサンプリングする細かさを設定します。 ボリュームオブジェクトはボクセルと呼ばれる3次元構造で構成されており、このパタメータの値は、次のサンプリングを実行する際に光線が通過するボクセル数を意味します。
デフォルト値は0.25
で、4個のボクセル毎に1回のサンプリングが実行されることを意味します。
1
の値はすべてのボクセルがサンプリングされ、2
の値はすべてのボクセルが2回サンプリングされることを意味します。
つまり、この Volume Step Rate 値は、ピクセルサンプルと同様の挙動をし、ボリュームオブジェクトに対するサンプル総数の乗数として作用します。
Volume Step Rate を上げるとレンダリング時間が劇的に長くなるので、必要な場合にのみ調整するように注意してください。
また、デフォルト値の0.25
よりも大きな値にするとボリュームノイズを軽減することができますが、1
を超えた値ではそんなに結果が変わらなくなります。
Limits ¶
Diffuse Limit
ディフューズ光線がシーンを伝搬できる回数。
Reflect Limits や Refract Limits と違って、このパラメータは、シーン内の全体のライトの量を増やし、グローバルイルミネーションの大部分に寄与します。
このパラメータを0
より大きく設定すると、Diffuseサーフェスは、直接光源に加えて、他のオブジェクトからのライトも蓄積します。
この例では、 Diffuse Limit を上げて、最終画像の見た目に劇的な効果が出ています。
現実的な照明環境を模倣するには、 Diffuse Limit を上げる必要があることが多いです。
とはいえ、ライトの寄与度は通常ではDiffuseバウンス毎に小さくなるので、 Diffuse Limit を4
よりも大きく上げても、シーンでの視覚的な忠実性の改善はほとんどありません。
さらに、 Diffuse Limit を上げると、ノイズレベルとレンダリング時間が劇的に増える可能性があります。
これは、すべての制限がサンプル毎に確率的に選択されるので浮動小数点値になっています。
そのため、例えば、 Diffuse Limit を3.25
に設定すると、光線の25%の Diffuse Limit が4
、75%の Diffuse Limit を3
に設定することができます。
Reflection Limit
Refraction Limit
このパラメータは、光線がシーン内で屈折する回数を制御します。
この例では、10個のグリッドすべてが1列に並んだ単純なシーンを載せています。
屈折のあるシェーダを適用することで、それらのグリッドを通じて、背景の夕焼けの画像を見ることができます。
このカメラ角度では、画像の精度を良くするためには、屈折制限をシーン内のグリッドの数に合わせなければなりません。
しかし、ほとんどのシーンでは、この数の屈折オブジェクトすべてが一列に並ばないので、最終画像に影響を与えずに屈折制限を下げることができます。
この Refract Limit は、オブジェクトの数ではなく、光線が通過しなければならないサーフェスの数を参照していることを覚えておいてください。
光源がサーフェスを一度屈折すると、それを直接屈折と見なされることを覚えておいてください。
そのため、 Refract Limit を0
に設定しても、まだ光線の屈折が見られます。
しかし、シーン内のほとんどのオブジェクトは、最低でも2枚のサーフェスを持つので、その光源と直接屈折が最終レンダリングではあまりわからないことが多いです。
これは、すべての制限がサンプル毎に確率的に選択されるので浮動小数点値になっています。
そのため、例えば、 Diffuse Limit を3.25
に設定すると、光線の25%の Diffuse Limit が4
、75%の Diffuse Limit を3
に設定することができます。
Volume Limit
ボリューム光線がシーンを伝搬できる回数。これは Diffuse Limit パラメータと同じように動作します。
Volume Limit パラメータを上げると、よりリアルなボリューム効果が得られます。
これは、特にボリュームの一部のみが直接照明を受けている状況で顕著です。
さらに、ボリュームオブジェクトが他のオブジェクトからの間接照明を受けるためには、 Volume Limit パラメータを0
よりも大きく設定しなければなりません。
Volume Limit を0
より大きい値に設定すると、Fogボリュームは、ボリュームを通過するライトから、あなたが求めている独特の光の散乱を行ないます。
しかし、 Diffuse Limit と同様に、一般的には、ライトの寄与度は、光線が跳ね返る度に小さくなるので、4
より大きい値を使用しても、目で見てわかるほどに現実的な画像になるとは限りません。
また、このパラメータの値を上げると、ボリューム画像のレンダリングに費やされる時間が劇的に増える可能性があります。
これは、すべての制限がサンプル毎に確率的に選択されるので浮動小数点値になっています。
そのため、例えば、 Diffuse Limit を3.25
に設定すると、光線の25%の Diffuse Limit が4
、75%の Diffuse Limit を3
に設定することができます。
SSS Limit
SSS光線がシーン内を伝搬することができる回数。 これは、 Diffuse Limit パラメータと同様の方法で動作します。
これは、すべての制限がサンプル毎に確率的に選択されるので浮動小数点値になっています。
そのため、例えば、 Diffuse Limit を3.25
に設定すると、光線の25%の Diffuse Limit が4
、75%の Diffuse Limit を3
に設定することができます。
Color Limit
非常に明るい光源のサンプリング不足によって引き起こされる“蛍”の出現を軽減するためにシェーディングサンプルがLPE画像平面に寄与できる最大値。
Note
この値を下げると、シーン内の光量が全体的に減少してしまいます。
Indirect Color Limit
間接バウンスのみに適用されるカラー制限。
Note
Shared Color Limit が有効になっている場合、このパラメータは無視されます。
Russian Roulette Cutoff Depth
光線処理数に基づいて確率的に間引かれ始める間接光線の深さ。
Camera Effects ¶
Enable Depth of Field
被写界深度レンダリングを有効にします。
Motion Blur
モーションブラーを有効にするかどうか。 Display Optionsでこれを変更したら、レンダーを再起動する必要があります。
Per-object Motion Blur
明示的にオピニオンが設定されていないオブジェクトに対してモーションブラーを有効または無効にします。 これを On by Default に設定すると、以下のパラメータをデフォルトに設定することができます。
Transform Time Samples
シャッターオープン時間に対して トランスフォーム モーションブラーをレンダリングする時に計算するサンプル数。 デフォルトは2サンプル(シャッター時間の開始と終了)で、1つのセグメントにブラーがかかります。
極端に速く移動したりと方向を変更するオブジェクトの場合、サブフレームでの方向の変更を取り込むためにサンプル数を上げる必要があります。
上図の例では、1フレーム内で発生した複雑な動きを正しくレンダリングするために40個のトランスフォームサンプルが必要です(1フレーム内でのこの変化量は、非常に稀で、説明をするために使用しただけです)。
トランスフォームブラーは、各オブジェクトのフレーム間のトランスフォームを補間することでブラーをシミュレーションしているので、計算が軽いですが、サーフェス変形を取り込みません。 変形ジオメトリのブラーを有効にするには、karma:object:geosamplesを上げます。
Geometry Time Samples
シャッターオープン時間に対して 変形 モーションブラーをレンダリングする時に計算するサブフレームのサンプル数。 デフォルトは1サンプル(シャッター時間の開始のみのサンプル)で、デフォルトでは変形ブラーは ありません 。 高速に変形するジオメトリを適切にブラーさせたい場合、この値を2以上に上げなければなりません。
Note
この値は、レンダリングされるUSDファイルで利用可能なサブサンプル数で制限されます。 この例外で許可されているのは、USD Skelデフォーマです。
“Deformation”は、ジオメトリ(SOP)レベルでトランスフォームだけを参照したり、キャラクタやフレームに応じて形状が急速に変化するオブジェクトなどの実際のサーフェス変形を参照することができます。
1フレーム内で複雑に変形するオブジェクトには、Geo Time Samplesの数を上げる必要があります。
変形ブラーは、シャッター時間内の アトリビュート値の変化 もブラーさせることができます。
例えば、オブジェクトが移動した時にポイントカラーが急変化する場合、そのCd
アトリビュートにブラーをかけることができます。
Geo Time Samplesの数を上げると、Karmaの使用メモリ量に 影響を与えてしまします 。 サンプル数が増える度に、Karmaはシャッター時間の間にサンプリングしている間はメモリ内にそれだけのジオメトリのコピーを維持しなければなりません。 レンダリングを最適化する時、滑らかなモーションの軌跡を生成するのに必要な最低限のGeo Time Samplesを調べることは良い考え方です。
Velocity Motion Blurが有効なオブジェクトでは、変形ブラーは無視されます。
Velocity Blur
このパラメータでは、オブジェクトに対して実行する ジオメトリVelocityブラー のタイプを選択することができます。 トランスフォームブラー や 変形ブラー とは別に、時間と共に変化するポイントに保存されたアトリビュートを使って、ポイントの動きに応じたモーションブラーをレンダリングすることができます。 ジオメトリ内のポイント数が時間と共に変化する場合(例えば、ポイントが誕生したり死亡するパーティクルシミュレーション)、このタイプのブラーを使用してください。
フレーム間でジオメトリのトポロジーが変化する場合、Karmaはジオメトリを補間できなくて正しくモーションブラーを計算できなくなります。
そのような場合、元のジオメトリが変化しても整合性のあるvelocities
やaccelerations
のアトリビュートをモーションブラーに使用することができます。
流体シミュレーションのサーフェスがまさにそのよい例です。
この場合と他のタイプのシミュレーションデータでは、ソルバが自動的にVelocityアトリビュートを作成します。
Note
Solarisでのvelocities
、accelerations
、angularVelocities
のアトリビュートは、SOPではそれぞれv
、accel
、w
に相当します。
No Velocity Blur
レンダラーでモーションブラーを許可するように設定しても、このオブジェクトに対してモーションブラーをレンダリングしません。
Velocity Blur
Velocityブラーを使用するには、ポイントVelocityを計算して、それをvelocities
Pointアトリビュートに保存しなければなりません。
レンダラーは、このアトリビュートが存在すれば、それを使用してVelocityモーションブラーをレンダリングします(レンダラーがモーションブラーのレンダリングを許可するように設定されていることが前提です)。
シミュレーションノード(例えばパーティクル系DOPs)は自動的にvelocities
アトリビュートを生成します。
他にも、Point Velocity SOPを使ってVelocityを計算して追加することができます。
velocities
アトリビュート値の単位は、1秒あたりのHoudiniユニットです。
Acceleration Blur
加速度ブラーを使用するには、ポイント加速度を計算して、それをaccelerations
Pointアトリビュートに保存しなければなりません。
レンダラーは、このアトリビュートが存在すれば、それを使用して複数セグメントの加速度モーションブラーをレンダリングします(レンダラーがモーションブラーのレンダリングを許可するように設定されていることが前提です)。
シミュレーション系ノードは自動的にaccel
アトリビュートを生成することができます。
他にも、Point Velocity SOPを使って加速度を計算して追加することができます。
Acceleration Blurがオンの時、ジオメトリに 角速度 アトリビュート(w
)が存在すれば、急回転にもブラーがかかります。
これは、ベクトルアトリビュートであり、各コンポーネントは、X、Y、Z軸を基準とした1秒あたりのラジアンの回転速度を意味しています。
これを“Velocity Blur”または“Acceleration Blur”に設定すると、変形ブラーがオブジェクトに適用されなくなります。 これを“Acceleration Blur”に設定すると、karma:object:geosamplesプロパティを使用して、加速度サンプルの数を設定することができます。
Instance Velocity Blur
インスタンスに対してモーションブラーを定義すると、プロトタイプで発生するモーションブラーだけでなく、各インスタンスのトランスフォームにもブラーをかけることができます。 このオプションは、各インスタンスのトランスフォームのモーションブラーの計算方法を制御します。 例えば、プロトタイプをパーティクルシステム上にインスタンス化した場合、Velocityブラーを使用してモーションブラーを計算したいことでしょう(パーティクル上のVelocityによってプロトタイプのトランスフォームにブラーがかかるようになります)。
No Velocity Blur
インスタンスの変形ブラーを使用して、トランスフォームのブラーを計算します。
Velocity Blur
Velocityブラーを使用したいのであれば、そのインスタンスは、ポイント上にVelocityアトリビュートが含まれたポイントインスタンサーである必要があります。
velocities
アトリビュート値の単位は、1秒あたりのHoudiniユニット長です。
Acceleration Blur
Accelerationブラーを使用したいのであれば、そのインスタンスは、ポイント上にVelocityアトリビュートとAccelerationアトリビュートが含まれたポイントインスタンサーである必要があります。
レンダラーは、(存在すれば)このアトリビュートを使用して、複数セグメントのアクセラレーションモーションブラーをレンダリングします(レンダラーでモーションブラーが有効になっている場合)。
accel
アトリビュートはシミュレーション系ノードで自動的に作成されますが、Point Velocity SOPを使用して加速度を計算してaccel
アトリビュートを追加することもできます。
このaccel
アトリビュートは、SOPジオメトリがUSDに変換された時にaccelerations
に変換されます。
Instance Motion Samples
Accleration Blur または Deformation Blur を使用してインスタンスのモーションブラーを計算する場合、このパラメータには、そのモーションブラーで使用されるモーションセグメントの数を指定します。
Motion Blur Style
Instance Velocity Blur Scale
ボリュームに対してモーションブラー量を軽減または誇張する際に使用されるVelocity乗数。
Disable Image Blur
これを無効にしても、Karmaは引き続きVelocityを計算しますが(そして、そのVelocityをAOVに格納することができます)、 シャッターが開いた時にすべてのカメラ光線を送信するので、その画像には一見して何もモーションブラーはかかりません。 これは、単純にモーションブラーが不要な場合に役立ちます。 例えば、ポスト/コンポジットでモーションブラーを追加したいけれども、レンダラーではモーションブラーを認識して適切なモーションベクトルをAOVに保存する必要がある場合です。
Geometry and Shading ¶
Render Points as
ポイントクラウドをレンダリングする時、カメラの方を向いた円盤、球、法線アトリビュートの方を向いた円盤としてレンダリングすることができます。
Render Curves as
カーブをレンダリングする時、カメラの方を向いたリボン、両端を丸めたチューブ、ポイントに追加された法線アトリビュートの方を向いたリボンとしてレンダリングすることができます。
Override Curve Basis
USDは、Houdiniで直接対応できていない Curve Basis タイプに対応しています。 時には、HoudiniのCurve Basisをオーバーライドしたいことがあります。 例えば、Houdiniの直線カーブをBezier、B-Spline、Catmull-Romのどれかの基底を使ってレンダリングしたい時です。 このメニューは、KarmaがUSD Primsに関連付けられている基底をオーバーライドするようにします。
Note
カーブのトポロジーをターゲットの基底に合わせなければなりません。
例えば、3次曲線の基底を選択した場合、どのカーブも頂点数が最低でも4つなければなりません。
Bezier基底の場合、カーブの頂点数は4+3*N
でなければなりません。
Cull Backfaces
有効にすると、カメラに背いているジオメトリはレンダリングされません。
Enable Caustics
間接ディフューズバウンスで見受けられる光沢BSDFの評価を許可します。 これは、ブルートフォース(総当り)による計算のため、その計算には膨大な数のディフューズ光線が必要となります。 特に Caustics Roughness Clamp パラメータに非常に小さな値を設定した場合、または、 Indirect Guiding の機能が無効な場合でそうなります。
Caustics Roughness Clamp
この値を上げると、コースティクスの精度は悪くなるもののノイズを少なくすることができます。
Note
Roughness Clamp はGGX BSDFでのみ動作し、Phong BSDF、円錐BSDF、スペキュラーBSDFには何の効果もありません。
Ray Bias
サーフェスからの セカンダリ光線 がシーン内の他のオブジェクトに交差するかどうかをテストする際に使用される最小距離。 この距離は、サーフェスからセカンダリ光線の方向に沿って測定されます。 この Ray Bias 距離内にあるオブジェクトは無視されます。
Automatic Ray Bias
理想的な Ray Bias を自動的に計算します。 Karma CPUでは、自動バイアスは、プロシージャルメッシュ、部分的に不透明なサーフェスとNested Dielectrics(入れ子状の絶縁体)に対する継続的な光線を除くすべての光線に適用されます(“Ray Bias”プロパティは、これらの場合でも引き続き使用されます)。 Karma XPUでは、自動バイアスは、ポリメッシュパスバウンス光線とポリメッシュシャドウ光線のみに適用されます。 それ以外のすべての光線(例えば、SSS、ラウンドエッジ、Nested Dielectrics、ポイント、カーブなど)では、引き続き“Ray Bias”プロパティが使用されます。
Constrain by Maximum Roughness
GGX BSDFsのRoughnessパラメータがパストレーシングの光線チェーンを伝搬した最大Roughness値でクランプされます。 このオプションを有効にすると、若干精度を落とすことになりますが、(特に、光沢のある表面が粗いスペキュラーの表面によって反射される場合において)間接スペキュラ内の多くのノイズを除去することができます。
Shading Quality Multiplier
シェーディング品質に対する乗数。 これは、テクスチャとシェーディングの面積評価で使用されます。
Automatic Headlight Creation
シーンにライトが存在しなかった場合、デフォルトでヘッドライトが作成されます。 これを無効にしたいのであれば、このチェックボックスを外してください。
Dicing Camera
複雑なサーフェスをDicing(賽の目)する際に使用されるカメラを指定します。 これによって、ビューイングカメラを動かしても、サーフェスに対して整合性の取れたDicingを行なうことができます。
Offscreen Quality
このパラメータは、カメラから直接見えないジオメトリのシェーディング品質スケール係数を制御します。 視界外のジオメトリ(セカンダリ光線から映るジオメトリ)に関しては、Karmaはジオメトリとビューフラスタム境界との角度に基づいてシェーディング品質を滑らかに下げます。 値を下げるほどパフォーマンスが良くなります。 特に、カメラが近くのジオメトリのディスプレイスメント境界内に入っているシーンでは、カメラから見えないジオメトリをカメラから直接見えるジオメトリよりも粗くDicingできるようになるのでパフォーマンスが良くなります。
Dicing Quality Scale
このパラメータは、すべてのオブジェクトのDicing(賽の目)品質のグローバル乗数です。
Image Output ¶
AOVs (Render Vars) ¶
USDでは、RenderVar
Prim(例えば、/Render/Products/Vars/diffuse
)がレンダリング中に生成するAOV(Arbitrary Output Variable)を設定します。
AOVは、出力画像(1ピクセルあたり複数チャンネルに対応した画像フォーマット、例えば.exr
)に追加可能なピクセル単位のデータの追加“チャンネル”です。
デフォルトでは、このノードはbeauty
, diffuse
, glossy reflection
, volume
, depth
, UV
, normal
のAOVを生成します。
このセクション内のチェックボックスは、使用頻度の高いAOVを表示しています。 また、( Extra Render Vars セクションで)Light Path Expressions、マテリアル出力、ジオメトリ上のPrimvars、他のソースから独自のAOVを作成することもできます。
Import Render Vars from Second Input
このノードの2番目の入力からRenderVar
Primsを検索し、そのRenderVar Primsをこのステージに追加するので、生成するRender Varsのリストにそれらが追加されます。
これによって、他のLOPノード(例えば、Background Plate)は自身のノードに関連したRender Varsを生成するように“提案”することができます。
Import Render Products from Second Input
このノードの2番目の入力からRenderProduct
Primsを検索し、そのRenderProduct Primsをこのステージに追加するので、生成するRender Productのリストにそれらが追加されます。
これによって、他のLOPノードが自身のノードに関連したRender Productを生成するように“提案”することができます。
Pixel Filter
ピクセルに対するサンプルの分布を指定します。 Boxフィルターは、個々のピクセルの内側に対してランダムにサンプルを分布します。 Gaussianフィルターは、ピクセルの中心を基準とした円盤内に(均一な分布の代わりに)Gaussian分布でサンプルを分布します。
Pixel Filter Size
これは Pixel Filter のサイズです。 フィルターサイズが1.8のGaussianフィルターは、フィルターサイズが2.0のGaussianフィルターよりも若干ぼかしが弱くなります。
以下のチェックボックスは、それぞれ共通Render Varの隣で利用可能です:
Split Per LPE Tag
これを有効にすると、レンダラーは、タグが付けられたライト毎に追加でAOVを作成します。 ライトのLPE Tagを管理するには、LPE Tag LOPを使用します。
Component Level Output ¶
LPE Tag AOV Limit
ライトのLPEタグ別にAOVを分ける時に、限度を越えたらこのノードが警告を出すLPE Tag AOVの最大数を指定します。
Omit LPE Tags
ライトのLPEタグ別にAOVを分ける時に、新しくAOVを作成しないライトのLPEタグをスペース区切りのリストで指定します。
Output Colorspace
コンポーネントのOCIOカラー出力空間を指定します。
Beauty
名前がC
のcolor4f
レンダー変数としてビューティーを追加します。
Pixel Filter
このパラメータ内にSolarisフィルター構文を使用することで、サンプル値をフィルターすることができます。
デフォルトの["ubox", {}]
は、単に各ピクセル内のすべてのサンプル値を平均します。
Output Colorspace
コンポーネントのOCIOカラー出力空間を指定します。
Beauty Unshadowed
LPEでunoccluded;C.*[LO][LO]
を使用して、名前がbeautyunshadowed
のcolor3f
レンダー変数としてオクルードなし(シャドウなし)ビューティーを追加します。
Combined Diffuse
LPEでC<RD>.*L
を使用して、名前がcombineddiffuse
のcolor3f
レンダー変数として(何回も跳ね返って)合成された拡散反射成分を追加します。
Direct Diffuse
LPEでC<RD>L
を使用して、名前がdirectdiffuse
のcolor3f
レンダー変数として(跳ね返りなしの)直接拡散反射成分を追加します。
Indirect Diffuse
LPEでC<RD>.+L
を使用して、名前がindirectdiffuse
のcolor3f
レンダー変数として(1回以上跳ね返った)間接拡散反射成分を追加します。
Combined Diffuse Unshadowed
LPEでunoccluded;C<RD>.*[LO]
を使用して、名前がcombineddiffuseunshadowed
のcolor3f
レンダー変数として(何回も跳ね返って)合成されたオクルードなし拡散反射成分を追加します。
Direct Diffuse Unshadowed
LPEでunoccluded;C<RD>L
を使用して、名前がdirectdiffuseunshadowed
のcolor3f
レンダー変数として(跳ね返りなしの)オクルードなし直接拡散反射成分を追加します。
Indirect Diffuse Unshadowed
LPEでunoccluded;C<RD>.+L
を使用して、名前がindirectdiffuseunshadowed
のcolor3f
レンダー変数として(1回以上跳ね返った)オクルードなし間接拡散反射成分を追加します。
Combined Glossy Reflection
LPEでC<RG>.*[LO]
を使用して、名前がcombinedglossyreflection
のcolor3f
レンダー変数として(何回も跳ね返って)合成された光沢反射成分を追加します。
Direct Glossy Reflection
LPEでC<RG>L
を使用して、名前がdirectglossyreflection
のcolor3f
レンダー変数として(跳ね返りなしの)直接光沢反射成分を追加します。
Indirect Glossy Reflection
LPEでC<RG>.+L
を使用して、名前がindirectglossyreflection
のcolor3f
レンダー変数として(1回以上跳ね返った)間接光沢反射成分を追加します。
Glossy Transmission
LPEでC<TG>.*[LO]
を使用して、名前がglossytransmission
のcolor3f
レンダー変数として光沢透過成分を追加します。
BSDF Labelled coat
LPEでC<...'coat'>.*[LO]
を使用して、名前がcoat
のcolor3f
レンダー変数としてコート成分を追加します。
Combined Emission
LPEでC.*O
を使用して、名前がcombinedemission
のcolor3f
レンダー変数として(何回も跳ね返って)合成された発光成分を追加します。
Direct Emission
LPEでCO
を使用して、名前がdirectemission
のcolor3f
レンダー変数として(跳ね返りなしの)直接発光成分を追加します。
Indirect Emission
LPEでC.+O
を使用して、名前がindirectemission
のcolor3f
レンダー変数として(1回以上跳ね返った)間接発光成分を追加します。
Visible Lights
LPEでCL
を使用して、名前がvisiblelights
のcolor3f
レンダー変数として可視ライト成分を追加します。
Combined Volume
LPEでCV.*L
を使用して、名前がcombinedvolume
のcolor3f
レンダー変数として(何回も跳ね返って)合成されたボリューム成分を追加します。
Direct Volume
LPEでCVL
を使用して、名前がdirectvolume
のcolor3f
レンダー変数として(跳ね返りなしの)直接ボリューム成分を追加します。
Indirect Volume
LPEでCV.+L
を使用して、名前がindirectvolume
のcolor3f
レンダー変数として(1回以上跳ね返った)間接ボリューム成分を追加します。
BSDF Labelled sss
LPEでC<...'sss'>.*[LO]
を使用して、名前がsss
のcolor3f
レンダー変数としてSSS成分を追加します。
Albedo
名前がexport_basecolor
のcolor3f
レンダー変数としてアルベド出力を追加します。
この情報を出力するシェーダ(例えば、Principled Shader)でのみ利用可能です。
Ray Level Output ¶
P (World Space)
名前がP
のpoint3f
レンダー変数としてワールド空間位置を追加します。
Depth (Camera Space)
名前がdepth
のfloat
レンダー変数としてカメラ原点からの距離を追加します。
Element (Raw ID)
名前がelement
のfloat
レンダー変数としてエレメントIDを追加します。
Prim ID
名前がprimid
のfloat
レンダー変数としてPrim IDを追加します。
UV
名前がUV
のfloat3f
レンダー変数としてPrimヒットUVを追加します。
N (Smooth Normal)
名前がN
のnormal3f
レンダー変数としてPrimヒット法線を追加します。
Ng (Geometric Normal)
名前がNg
のnormal3f
レンダー変数としてPrimジオメトリ法線を追加します。
Motion Vectors
名前がmotionvector
のvector3f
レンダー変数としてPrimモーションベクトルを追加します。
Velocity
名前がvelocity
のvector3f
レンダー変数としてPrim Velocityを追加します。
Extra Render Vars ¶
Render Vars
このマルチパラメータを使用して、出力画像にカスタムAOVs(Render Vars)を追加することができます。
Name
このRenderVarからのデータが格納された出力画像内のAOVの名前。
Format
この画像平面を出力ファイルに保存する時に使用するデータフォーマット。
Multi Sampled
レンダーバッファをマルチサンプリングするかどうか。
Clear Value
レンダリング前にバッファに設定する初期値。
この値は通常では0
を設定しますが、Pz
ならば1e17
に設定すると良いでしょう。
Data Type
レンダー変数のUSDデータタイプ。
OpenEXRファイルに保存する時、このデータタイプを使用してそれらのチャンネル名が決定されます。
例えば、データタイプがcolor3f
であれば、それらのチャンネル名はR
, G
, B
になり、データタイプがnormal3f
であれば、それらのチャンネル名はx
, y
, z
になります。
Tip
If you're rendering with huskを使用してレンダリングし、カラーチャンネル名を小文字(例えば、r
、g
、b
)にしたい場合、
もう1つRender Var LOPを追加し、それを使用してdriver:parameters:aov:channel_lower_rgb
(bool
) RenderVarをtrue
に設定します。
Source Name
レンダー変数の内容の取得先。以下の Source Type を参照してください。
レンダラーは、RenderVarから計算される値として、この名前の出力を検索するはずです。
Tip
Karmaでは、 Source Type にRaw
やPrimvar
(Cryptomatteを含む)を指定した場合、変数名の頭にnoholdouts;
を付けることができます。
これによって、マットホールドアウトや背景ホールドアウトがAOVに 寄与しない ように指定することができます。
例えば、ホールドアウトなしで標準のN
AOVを出力するには、ray:noholdouts;N
と入力します。
Source Type
Source Name パラメータの解釈方法。
Raw
レンダラーに直接ソース名を渡します。これは、レンダラーがそのソース名の文字列を解釈できることを想定しています。これがデフォルトです。
Primvar
Source Name パラメータにはPrimvarの名前を指定します。
一部のレンダラーは、この名前を使って、そのPrimvarがレンダラーで用意されているかを確認します。 他のレンダラーは、適切なマテリアルネットワークを用意する必要があります。その場合は、これは単なる助言的な設定に過ぎません。
LPE
Source Name パラメータにはLight Path Expressionを指定します。
(一部のレンダラーは、OSL Light Path Expression構文の拡張に対応している場合があります。その場合は必然的に移植性がなくなります)
Intrinsic
現在のところ、実装されていません。 今後のUSDでは、どのレンダラーでも実装されているカメラデプスなどの基本的なRenderVarsの移植性の高いリストが用意される予定です。
Pixel Filter
このパラメータ内にSolarisフィルター構文を使用することで、サンプル値をフィルターすることができます。
デフォルトの["ubox", {}]
は、単に各ピクセル内のすべてのサンプル値を平均します。
Cryptomatte
これを有効にすると、この画像平面がCryptomatteレイヤーに変わります。 詳細は、Cryptomatteを参照してください。
Overlap Limit
1ピクセル内に格納可能なIDの最大数。値は6を推奨します。
Manifest File
オプションの外部Manifestファイル。 これはRender Productと同じディレクトリに保存されます。 このパスを指定しなかった場合、ManifestファイルはRender Product内にメタデータとして埋め込まれます。
Output Colorspace
コンポーネントのOCIOカラー出力空間を指定します。
Filters ¶
Denoiser
完了した出力画像に対して実行するデノイザ、または、 No Denoiser を選択します。 現在のところ、このユーティリティは、Intel Open Image Denoise(Houdiniに同梱されています)とNVIDIA OptiX Denoiser(別途インストールする必要があります)に対応しています。 これを動作させるには、対応しているプラットフォームを確認し、選択したデノイズライブラリをインストールしてください。
NVIDIA OptiX DenoiserはNVIDIAカードでのみ動作します。 このデノイザは今ではNVIDIAドライバ(バージョン435以降)に含まれています。
Use Albedo
一部のデノイズライブラリは、アルベドを利用して画像をもっと上手く知覚し、ノイズを軽減する方法と場所を補助することができます。
Use N Input
一部のデノイズライブラリは、法線を利用して画像をもっと上手く知覚し、ノイズを軽減する方法と場所を補助することができます。
AOVS
デノイザを適用するAOVをスペースで区切ったリスト。
Tone Map
トーンマップの基本的な意図は、HDRの現実世界の輝度をLDRディスプレイ値に変換することです。つまり、画像をモニタに表示できるようにすることです。 もう1つの意図は、特定のフィルムルックを模倣することです。 フィルム素材は、コントラストと色を強調するように光に対して特定の“反応”を示すように設計されていて、特性カーブで表現されています。 フィルムトーンマップカーブは、画像の暗いトーン、明るいトーン、中間トーン対して、それぞれ Toe 、 Shoulder 、 Linear という区間で区分けされています。 Houdiniには、フィルムトーンマップ用の一般的なオペレータがいくつか用意されていて、各オペレータが特有のS字型トーンマップカーブを適用します。
-
Reinhard 、 Ward 、 Aces には、Toe、Shoulder、Linerの区間を調整するためのさらなるパラメータが用意されていません。
-
Hable 、 Hable2 、 Unreal には、カーブをカスタマイズするための特有のパラメータがあります。
Tonemap Curve
トーンマップカーブは、 Reinhard 、 Unreal 、 Aces 、 Hable のオペレータに適用されます。 このカーブは、各オペレータの数学的なモデルを視覚的に表現したものです。 そのカーブのコントロールポイントを使ってトーンマップを微調整することができます。
AOVs
選択した Tone Map オペレータから影響を受けるAOVをスペースで区切ったリスト。
Toe
このパラメータは、 Hable 、 Hable2 、 Unreal のオペレータに適用され、範囲は0
から1
です。
Hable 、 Hable2 のデフォルト値は0.5
です。
Unreal のデフォルト値は0.55
です。
この値は、暗い領域のToe区間の強度(曲率)を制御します。
値が大きいほど、暗い画像が生成され、値が小さいほど暗いトーンが明るくなります。
Shoulder
このパラメータは、 Hable 、 Hable2 、 Unreal のオペレータに適用され、範囲は0
から1
です。
Hable と Hable2 のデフォルト値は0.5
です。
Unreal のデフォルト値は0.26
です。
Shoulder は、明るいトーン値のカーブの曲率量を制御します。
この値は、Shoulderカーブがグラフ内で開始される位置に影響を与えます。
1
の値は、ShoulderカーブがToeカーブが終わる位置から開始されます。
Slope
このパラメータは、 Unreal オペレータに適用され、範囲は0
から1
です。
デフォルト値は0.88
です。
これは、トーンマップカーブの勾配を制御し、値が大きい(勾配が急なカーブ)と画像が暗くなり、コントラストが強くなります。値が小さいと画像が明るくなり色褪せます。
Linear
このパラメータは、 Hable オペレータに適用され、範囲は0
から2
です。
デフォルト値は0.3
です。
Linear区間内のトーンは、トーンマップ処理時に変化しない(または、ほとんど変化しない)ようにすべきで、画像の元々のトーンを表現します。
Linear 値は、Toe区間とShoulder区間の間の距離を示します。
値が大きいほど、Toe区間とShoulder区間が短くなり、より多くのトーンがそのままになります。つまり、全体的にカーブがより線形になります。
Linear Angle
このパラメータは、 Hable オペレータに適用され、範囲は0
から1
です。
デフォルト値は0.1
です。
ここでは、トーンマップカーブのLinear部分の勾配を制御します。
Toe Length
このパラメータは、 Hable2 オペレータに適用され、範囲は0
から1
です。
デフォルト値は0.5
です。
小さい値は、短いToe区間を生成し、Linear区間にすぐに遷移するようになります。
0
の値はToe区間を除去し、1
の値は、Toe区間がカーブの半分を占めることを意味します。
Note
Toeを無効にする方法が2つあります: Toe Length または Toe のどちらかを0
に設定することです。
Shoulder Length
このパラメータは、 Hable2 オペレータに適用され、範囲は0
から1
です。
デフォルト値は0.5
です。
Shoulder Length は、カーブのダイナミックレンジに追加したいF-Stop数を示します。
ここでは、Linear区間からShoulder区間までの遷移ポイントを制御します。
Shoulder Angle
このパラメータは、 Hable2 オペレータに適用され、範囲は0
から1
です。
デフォルト値は1
です。
ここでは、カーブのShoulderに追加したい超過量を制御します。
OCIO
OCIO画像フィルタを様々なRender Vars/画像平面に追加することができます。
Enable
以下で定義したOCIO画像フィルタを有効にします。
Planes
OCIO画像フィルタが適用されるRender Varの名前。
Output Space
画像フィルタが適用するOCIOカラー出力空間を指定します。
Input Space
たいていの場合、ここはdata
のままにします。
AOVのソースが既に定義済みのカラー空間であった場合では色が変になることがあります。
そういった場合、ここでソース空間を指定することができます。
Looks
完了した画像に適用するLookをスペースで区切ったリスト。 “Look”は名前が付いたOCIOカラートランスフォームのことで、通常ではアーティスティックな効果を表現するためにあります。 詳細は、OCIOドキュメントを参照してください。
Color Limits
Color Limits は、シェーディングサンプルがLPE画像平面に寄与できる値を制限して、極端に明るい光源のサンプリング不足によって引き起こされる“Fireflies(ホタル)”の見た目を軽減します。 このマルチパラメータでは、Render Var毎に別々に制限を適用することができます。
Enable
以下で定義されたカラー制限サンプルフィルタを有効にします。
Planes
このカラー制限が適用されるAOV名をスペースで区切ったリスト。
Limit
シェーディングサンプルがこれらのAOVに寄与できる最大値。
Aspect Ratio ¶
Aspect Ratio Conform Policy
出力画像のアスペクト比( Resolution の幅を高さで割った値)がカメラの絞りのアスペクト比(カメラのアトリビュートで制御)に一致しなかった場合の挙動。 これによって、カメラを切り替えた時に標準レンダラーが妥当な挙動をするようにすることができます。
Expand Aperture
必要に応じて、画像に合うようにカメラの絞りを広げます。
Crop Aperture
必要に応じて、画像に合うようにカメラの絞りをクロップします。
Adjust Aperture Width
必要に応じて、画像に合うようにカメラの絞り幅を変更します。
Adjust Aperture Height
必要に応じて、画像に合うようにカメラの絞り高さを変更します。
Adjust Pixel Aspect Ratio
カメラに合うように画像のアスペクト比を変更します。
Data Window NDC
出力画像全体のうち、このウィンドウ内だけをレンダリングするようにレンダラーに指示します。
このウィンドウは、正規化された0
から1
の範囲の値でminX, minY, maxX, maxY
で指定します。
0, 0
座標は左下、1, 1
座標は右上、0.5, 0.5
座標は中心を示します。
デフォルトは0, 0, 1, 1
(クロップなし)です。
Note
マイナス の値を使用することができます。
例えば、-0.1, -0.1, 1.1, 1.1
は各辺で10%分オーバースキャンされます。
このウィンドウを使用することで、一時的にレンダリングをテスト用に小さい領域に クロップ することができます。
そのデータがウィンドウ内に 完全に収まっている 場合のみピクセルがレンダリングされます。
正規化された座標は、 Aspect Ratio Conform Policy で調整された 後 の画像にマッピングされます。
Pixel Aspect Ratio
画像 ピクセル ( 画像自体 ではありません )のアスペクト比(幅/高さ)。
デフォルトの1.0
は、正方形ピクセルを意味します。
Meta Data ¶
Artist
画像ファイルを作成した人、部署、スタジオの名前。
このノードは、画像フォーマットがメタデータに対応している場合に(例えば、exr
)、出力画像にこのフィールドを設定します。
Comment
任意のコメント。例えば、出力画像の用途の説明を入れます。
このノードは、画像フォーマットがメタデータに対応している場合に(例えば、exr
)、出力画像にこのフィールドを設定します。
Hostname
この出力ファイルを生成したコンピュータの名前。
このノードは、画像フォーマットがメタデータに対応している場合に(例えば、exr
)、出力画像にこのフィールドを設定します。
EXR Compression
保存されるOpenEXRファイルの圧縮を設定します。 マルチパートOpenEXRファイルを保存する時、Render Var LOPを使用してAOV単位で圧縮を指定することができます。
Deep Output ¶
Deep Camera Map
深度が記録されたDeep Camera Map画像を生成します。
Deep Camera Mapとは、カメラから一番近くにある不透明サーフェスまでの間にある(ボリュームなどの)半透明な領域を深度情報と一緒に保存してレンダリングされた画像のことです。 この画像内の各ピクセルは、その透明度の値がシーンの奥行きに沿ってどのように変化するのかを示したカーブで表現されます。 これによって、レンダリング画像を合成して、その半透明な領域を深度に応じて正しくブレンドすることができます。
DCM Filename
Deep Camera Map画像の保存先のファイル名(これは.exr
ファイルにしてください)。
ファイル名に$F
を含めることでフレーム番号を挿入することができます。
これは、アニメーションのレンダリングでは必須です。
詳細は、ファイル名のエクスプレッションを参照してください。
DCM Render Vars
(AOV名 ではなくて )RenderVar Primパス をスペースで区切ったリスト。
このパスは、RenderVar PrimとRender Var名が完全に合ったパスにしてください。
パターンを使用して複数のPrimsにマッチさせることができます。
デフォルトは/Render/Products/Vars/*
で、これは通常HoudiniがRenderVar Primsを作成するブランチ内のすべてのPrimsにマッチします。
また、このフィールドを空っぽのままにすることで、すべてのRenderVarを除外して、アルファ平面と(Deep Shadow Mapなどの)デプス平面のみを含めることができます。
DCM Compression
DCM Compression値の範囲は0
から10
です。
これは、ボリュームサンプルに対して不可逆圧縮モードで保存されるサンプル数を制限するのに使用されます。
このDCM Compressionパラメータは、各サンプルのスカラーチャンネル内の最大許容誤差を決めます。
DCM Compression値が0
より大きい場合、次の関係性が保たれます: Error = 1/(2^(10-compression))
DCM Of Size
通常ではOpacityはフルカラー値で計算され、そのまま保存されます。
フルカラーである必要がなくてファイルサイズを小さくしたいのであれば、この設定を使用して、フルカラー値をモノクロにした値を保存することができます。
この値には、モノクロの場合は1
を、フルカラーの場合は3
を設定します。
DCM Z-Bias
指定した閾値内のサンプルを結合して圧縮させるのに使用します。 このバイアス値内のサンプルは、単一サンプルに結合され、Z-FrontからZ-Backの範囲でその結合されたすべてのサンプルが包含されます。
Advanced ¶
Sampling ¶
Convergence Mode
Path Traced に設定すると、バウンスあたり最大1本の間接光線が生成されます。 Automatic に設定すると、間接光線の数は、初期ノイズ推定量、ターゲットノイズ閾値、最大カメラ光線数に基づいて計算されます。 さらに Automatic モードでは、直接照明のサンプル数もノイズ推定量に基づいて調整されることに注意してください。
Pixel Oracle
レンダリングする時、Pixel OracleはKarmaにどのピクセルを追加でサンプリングする必要があるのか、どのピクセルが集中しているのかを伝えます。 このパラメータは、使用するPixel OracleをKarmaに伝えます。
uniform
各ピクセルに光線を均等に分布させます。各ピクセルは常に同じ数の光線サンプルを受け取ります。
variance
レンダリング画像内の分散に基づいて光線を分布させます。
Minimum Samples
各ピクセルのカメラ光線(プライマリサンプル)の最小数。
Plane
バリアンス(差異)の測定に使用するAOV。
Variance Threshold
もっと多くの光線を発動させるバリアンス量。
Random Seed
バリアンスサンプリングにはランダムさが必要です。 この数を変更することで、若干異なる結果が得られます。
OCIO Transform
バリアンスを測定する前にOCIOトランスフォームをピクセルに適用するかどうか。
Disabled
OCIOトランスフォームを適用しません。
Display View
ディスプレイのカラー空間に変換します。
Explicit
指定した名前のカラー空間に変換します。
Noise Level
Convergence Modeが“Automatic”に設定されている時に、間接バウンスで送信する間接光線の数を決めるノイズ閾値。
この閾値を下げると(例えば、0.001
に設定)、理論上はもっと多くの間接光線が送信されてノイズが減りますが、“余分な”光線は Max Ray Samples パラメータによってほぼ相殺されることになります。
ノイズを減らす正しい方法は、この閾値を変更することではなく、ピクセルあたりのサンプル数を上げることです。
Variance Pixel Oracle を使用した場合、両方の閾値パラメータに同じ値を設定してください。 Variance Pixel Oracle の閾値を下げるほど、間接コンポーネントがすぐにその閾値に到達してあまり間接光線が送信されなくなるものの、 Variance Pixel Oracle はBeautyパス内の最終ノイズ量が Variance Pixel Oracle の閾値より多ければ、負荷が大きいカメラ光線をもっと多く送信することを決めます。
Enable Indirect Guiding
これを有効にすると、Karmaは、BSDFサンプリング分布に依存しない代わりに、プリパスレンダーを実行してシーン内のすべての箇所で入力ライトのおおまかな評価を構築し、その情報を使用して間接ディフューズ光線をガイドします。 これによって、(コースティクスやほぼ間接照明といった)“難しい”ライティングを改善することができますが、“簡単に”ライティングノイズが発生します。 これを使用する前に、Direct系AOVとIndirect系AOVをレンダリングしてノイズの箇所を確認すると良いでしょう。 そのノイズの多くが直接照明によって発生している場合、パスガイドを有効にしても意味がありません。
Note
Mplayにレンダリングする場合、ユーザはクリックによって、その領域にレンダリングを集中させることができます。 Enable Indirect Guiding が有効になっている場合、そのクリックによる集中レンダリングは利用できません。
Checkpointing ¶
Output Checkpoint Files
これを有効にすると、Karmaは画像タイルデータを定期的にチェックポイントファイルへ書き出します。 レンダリングが完了する前にプロセスが強制終了した場合、 Resume From Checkpoint を有効にしてプロセスを再起動することで、レンダリングを再開することができます。
Checkpoint File
Output Checkpoint Files が有効な時、書き出し先のチェックポイントファイルの名前を設定します。
デフォルト($HIP/render/$HIPNAME.$OS.$F4.checkpoint
)では、2つのプロセスが同時に同じチェックポイントファイルを使用しないように、現行シーンファイルのディレクトリのrender
ディレクトリ下に、ファイル名に現行シーンファイルのベース名($HIPNAME
)とこのノードの名前($OS
)とレンダーフレーム($F
)を含んだチェックファイルを書き出します。
Save Frequency
Output Checkpoint Files が有効な時、Karmaは、チェックポイントファイルを書き出す際にここで指定した秒数だけ待機します。
デフォルトは60
です。
Resume From Checkpoint
これが有効な場合にレンダリングを開始して、レンダラーが有効なチェックポイントファイルの存在に気づくと、そのレンダラーはそのチェックポイントからレンダリングの再開を試みます。 最初からレンダリングをやり直したいのであれば、これを無効にするか、または、単にチェックポイントファイル(s)を削除してください。
Tiles and Caching ¶
Image Mode
画像のレンダリング方法を決めます。
progressive
画像全体が同時進行で徐々にレンダリングされていきます。 このモードでは、レンダリングが完了するのを待たずに、画像全体がどんな感じに見えるのかを把握することができます。
bucket
各バケットがレンダリングを完了した後に次のバケットに進みます。 このモードは、画像全体がレンダリング完了するのを待たずに、最終品質画像がどのように見えるのかを把握することができます。 Enable Indirect Guiding が有効になっている場合、このモードは利用できません。
Note
IPRでレンダリングする場合、KarmaはIPRプレビューパスが完了するまでプログレッシブレンダリングを使用します。
Progressive Passes
バケットモードでレンダリングする場合( Image Mode を参照)、ここには、バケットモードに切り替える前に画像に対して実行するプログレッシブパスの数を指定します。
Bucket Size
Karmaはレンダリングをするために画像を複数のバケットに分割します。 これは、その正方形バケットの1辺の長さ(単位はピクセル)です。 デフォルトの32は、32 x 32ピクセルのバケットが指定されます。 スレッドはバケット単位で動作するので、部分的に負荷の大きいバケットが数個しかない時にバケットサイズを小さくすると役に立つ場合があります。 そうすることで、負荷の高い領域をもっと多くのスレッドに分割することができます。
例えば、画像内のほとんどが空っぽなものの、1個の32×32バケット内に収まる遠方のオブジェクトが存在した場合、そのオブジェクトは1スレッドのみを使用してレンダリングされることになります。 16×16バケットに切り替えれば、そのオブジェクトが4個のバケットに分割され、4つのスレッドでそのオブジェクトを処理させることができます。
バケットサイズを変更しても結果が変わらないのが理想ですが、Karmaは現行バケット内のピクセルからバリアンス(分散)を測定するため、
バケットサイズを例えば4とか低いサイズに下げると、4 x 4 = 16
ピクセルしか見なくなるので、Karmaは非常に精度の悪いバリアンス評価を行なう傾向になります。
これによって正しくないバリアンス評価が原因でピクセルレンダリングが途中で終了してピクセルをブラックとして表示してしまう可能性があります。
Bucket Order
最初にレンダリングされるバケットを指定します。指定可能な値:
middle
バケットのレンダリングを画像の中央から開始します。
top
バケットのレンダリングを画像の上側から開始します。
bottom
バケットのレンダリングを画像の下側から開始します。
left
バケットのレンダリングを画像の左側から開始します。
right
バケットのレンダリングを画像の右側から開始します。
Note
Mplayにレンダリングする場合、ユーザはクリックによって、その領域にレンダリングを集中させることができます。 Enable Indirect Guiding が有効になっている場合、そのクリックによる集中レンダリングは利用できません。
Cache Limit
固定サイズのキャッシュ(karma:global:cachesize
)を使用するのか、物理メモリの割合(karma:global:cacheratio
)を使用するのか指定します。
Cache Memory Ratio
Karmaが統一キャッシュに使用する物理メモリの割合。
例えば、vm_cacheratio
がデフォルトの0.25
で、物理メモリが16GBであれば、
Karmaは統一キャッシュに4GBを使用します。
この統一キャッシュには、レンダリングで使用される動的でアンロード可能なデータ(以下のデータを含む)が格納されます:
-
2D
.rat
テクスチャタイル -
3D
.i3d
テクスチャタイル -
3D
.pc
ポイントクラウドページ(メモリに事前ロードしない時)
Note
この値は、IPRではなくてオフラインレンダリングでのみ使用されます。
Threads
レンダリングに使用するスレッド数。
0
はプロセッサの数だけ使用され、-1
はプロセッサの数から1を引いた数だけ使用されます。
Render Time Limit
レンダリング時間をこの秒数に制限します。
Options ¶
USD Output Directory
必要なUSDファイルが保存されるディレクトリ。
このディレクトリが$HOUDINI_TEMP_DIR
下にある場合、レンダリングが完了すると自動的にこのディレクトリが削除されます。
Purpose
レンダリングしたいPurpose(geometry
、guide
、proxy
、render
)を カンマ で区切ったリスト。
デフォルトはgeometry,render
です。
Complexity
この設定は、“精密化可能な”(サブディビジョン)サーフェスのレンダリングに使用する反復回数を制御するためにUSDとHydraで定義されています。 Karmaではサーフェスを滑らかにレンダリングするのに必要な反復回数を決めるのにスクリーン空間でサーフェスを測定するので、Karmaはこの設定をほぼ無視します。 代わりに、 Karmaはこの設定をサブディビジョンのオン/オフの切り替えに使用します 。 これを Low または Medium に設定すると、Karmaは(ちょっと太った)ハルをレンダリングします。 High または Very High に設定すると、Karmaは(滑らかな)境界サーフェスをレンダリングします。
(RenderManやStormなどの)他のレンダラーは、この設定をそれとは違った扱いをし、サブディビジョン品質を決めます。 同じシーンをKarmaと他のレンダラーでレンダリングする必要がある場合、 High または Very High を使用してKarmaがサブディビジョンサーフェスを滑らかにレンダリングするようにすることを忘れないでください。
Resolver Context Asset Path
このファイルパスはresolver-context
オプションとしてレンダーコマンドラインに渡されます。
この引数は、USDステージの合成時にAsset Resolverがファイルを検索するのを補助するAsset Resolverコンテキストを作成するのに使用されます。
このパラメータのデフォルトは、選択した LOP Path を含んだLOP Network上の該当するパラメータを返すエクスプレッションになっています。
Context Options
このマルチパラメータを使用することで、レンダリング時に効果があるグローバルコンテキストオプションを設定することができます。
Driver ¶
Cancel Render if Missing Texture is Discovered
このオプションを有効にすると、テクスチャマップの欠落に遭遇した時、Karmaはエラーを出してレンダリングを停止します。
Cancel Render if No Working GPU Devices are Discovered
このオプションを有効にすると、動作するGPUデバイスが検出されなかった場合、Karmaはエラーを出してレンダリングを停止します。
Run Command
これを無効にすると、レンダラーを開始した時に、このノードはレンダリングするUSD出力ファイルを( Advanced ▸ Options ▸ USD Output Directory で指定されたディレクトリ下に)生成しますが、それらのファイルに対して実際にはレンダラーを 実行しません 。
Strip Layers Above Layer Breaks
このオプションを有効にすることで、Layer Breakノードより上流で編集されたレイヤーがこのROPでディスクに書き出されないようにすることができます。 これによって、Layer BreakノードはLOPネットワークのどの部分を保存するのか指示することができます。 このオプションを無効にすることで、この挙動がオーバーライドされて、LOPネットワークで編集された全ステージを強制的にディスクに書き出すことができます。 これは、デバッグ用途で使用したり、レンダリングするために完全なシーンをディスクに書き出す際に使用します。
Initialize Simulation OPs
レンダリング前にDOPシミュレーションを初期化します。
Create Intermediate Directories
必要に応じて出力ファイル(例えば、生成される画像)の中間親ディレクトリを作成します。
Report Network Use
このノードでトリガーされたクックの間に分散シミュレーション系ノードによって送信または受信されたバイト数をプリントします。
このノードは、例えばファイルをNFSマウントに保存するといったネットワークの使用状況を追跡するものではありません。 これは、分散系Houdiniノードのネットワーク通信のみを追跡します。
Cancel Render on Missing Texture
このオプションを有効にすると、テクスチャマップの欠落に遭遇した時、Karmaはエラーを出してレンダリングを停止します。
Cancel Render on No Working GPU Devices
このオプションを有効にすると、動作するGPUデバイスが検出されなかった場合、Karmaはエラーを出してレンダリングを停止します。
Wait for Render to Complete
レンダープロセスを開始した後にHoudiniをフリーズさせて、レンダラーが終了した時にのみHoudiniを再開させます。 (これは、主に古いMantraレンダーノードとパラメータ等価を保つために含まれています。バッチレンダリング時におおまかなディペンデンシー順序を実装するのに役立ちます。)
Profiling ¶
Verbose Level
この値を上げると、レンダリング中により詳細な情報がプリントされます。 レンダー時間とメモリ情報を知りたいのであれば、この Verbose Level を1に設定します。 レンダリングに関するもっと詳細な情報を知りたいのであれば、このパラメータを3に設定します。 値が大きいほど、さらに詳細な情報がプリントされます。
VEX Profiling
VEX Profilingは、シェーダパフォーマンスを分析することができます。 これを有効にすると、シェーディングが遅くなります。特に NAN Detection が有効な時がそうです。
No VEX Profiling
VEX Profilingを実行しません。
Execution Profiling
Karmaはレンダリングの終わりにシェーディング計算に関する情報を出力します。 これはシェーディング処理で問題になっている箇所を特定するのに役に立ちます。
Profiling and NAN Detection
シェーディング情報を出力して、悪い値(Not A Number)を生成する命令を出力しません。 出力は短いですが、シェーダでのエラーを調べるのに役に立ちます。
NAN Detectionを有効にすると、VEXで実行された各命令が無効な算術処理をしていないかチェックします。 これは0で割り算されていないか、数値のオーバーフローがないか、無効な演算がされていないかチェックします。 このようなエラーは通常では出力画像でホワイトやブラックのピクセルになります。
Show Alfred Progress
レンダリング進行中にAlfred進捗フォーマットを使って進捗状況をプリントします。 複数フレームのレンダリングをした場合、この進捗状況は、フレームにわたって累積します(例えば、4フレームレンダリングする場合、1枚目のフレームが終了すると、その進捗度は25%になります)。
Add Message Time Stamps
レンダラーが出力するログエントリーの隣に時刻を表示します。
Windows Console
Windowsでグラフィカルアプリケーションからレンダリングを実行した時のコンソール出力の表示方法を設定します。
None
レンダー出力のコンソールウィンドウを開きません。
Wait
コンソールウィンドウを開いて、レンダー出力を表示してから、 ユーザがそのコンソールウィンドウを閉じるのを待機します。
Note
これは、レンダリングする次のフレームがそのウィンドウを閉じない限りブロックされることを意味します。 これは、デバッグする時にその出力を読む時間ができて便利ですが、実務では明らかに大きな苦痛になります。
No Wait
コンソールウィンドウを開き、レンダー出力を表示し、レンダー処理が終了すると自動的にそのコンソールウィンドウが閉じます。
USD Trace
Log Output
Append to Log Instead of Overwriting
通常では、husk
は実行の度にログファイルを上書きします。
このオプションは、既存のファイル内のテキストに出力を追加します。
Output Log
ここには、標準メッセージの保存先のファイルを指定します。
Error Log
ここには、エラーメッセージの保存先のファイルを指定します。 これがOutput Logで指定したファイルと同じだった場合、(コンソールへの書き出され方と同じように)標準メッセージとエラーメッセージが交互に書き出されます。
Scripts ¶
Initialize Simulation OPs
レンダリング前にDOPシミュレーションを初期化します。
Component Labels ¶
Export Componetents
エクスポート用に計算されるシェーディングコンポーネント名をスペースで区切ったリスト。 マテリアルで新しいコンポーネントラベルを定義していた場合、それらのラベルをこのリストに追加することで、コンポーネント単位のエクスポート平面にそれらのラベルをエクスポートすることができます。 いくつかのコンポーネントを使用しないのであれば、リストからそれらを削除することでレンダリング効率を上げることができます。
PBRライトエクスポートは、このリストがすべてである(つまり、シェーダで生成されるすべてのコンポーネントがリストされている)と想定します。 リストに挙げられていないコンポーネントがあった場合、ライトエクスポートは、それらのコンポーネントからの照明を見逃してしまいます。
Diffuse Components
ディフューズバウンスのような挙動をするコンポーネントタイプをスペースで区切ったリスト。 これは、光線タイプに基づいて使用される反射スコープに影響し、使用するバウンス上限にも影響します。 カテゴリ化されていないコンポーネントタイプは、反射とみなされます。
Refract Components
屈折バウンスのような挙動をするコンポーネントタイプをスペースで区切ったリスト。 これは、光線タイプに基づいて使用される反射スコープに影響し、使用するバウンス上限にも影響します。 カテゴリ化されていないコンポーネントタイプは、反射とみなされます。
Volume Components
ボリュームバウンスのような挙動をするコンポーネントタイプをスペースで区切ったリスト。 これは、光線タイプに基づいて使用される反射スコープに影響し、使用するバウンス上限にも影響します。 カテゴリ化されていないコンポーネントタイプは、反射とみなされます。
SSS Components
サブサーフェススキャタリングのような挙動をするコンポーネントタイプをスペースで区切ったリスト。 これは、光線タイプに基づいて使用される反射スコープに影響し、使用するバウンス上限にも影響します。 カテゴリ化されていないコンポーネントタイプは、反射とみなされます。
MPlay ¶
MPlay Monitor
ディスクに書き出す時に、インタラクティブに進捗を監視できるようにMPlayウィンドウを開きます。
Preview Scale
これは、モニターに適用されるズーム係数です。 モニターには、フル解像度の何分の1かのサイズで画像が表示されますが、ディスクに書き出される画像はフル解像度です。
Session Name
See also |