primary
プライマリ光線のみで可視。
| On this page | |
| Since | 20.5 |
Karma Sky Atmosphereは、オブジェクトのレンダリングが物理的に妥当、且つ、人為的に制御可能な大空に馴染むようにボリュームのある惑星の大気を表現します。
このノードは、 USD Primsを直接的に作成または編集するノード のクラスに属します。 このようなノードは、 Create モード または Edit モードで動作します。 このモードは、 Create Primitives チェックボックスまたは Action ポップアップメニューで制御します。 Create モードでは、このノードは新しいPrimsを作成します。 Edit モードでは、このノードは、既存のPrim上のアトリビュートを変更します。 Editモード には2つのバリエーションがあります。
Edit は、houdini:editableアトリビュートがfalseに設定されているPrimsを変更しません。
Force Edit は、このアトリビュートの有無や値に関係なくPrimを変更します。
このアトリビュートは、Configure Primitives LOPを使用してPrim上に設定することができます。
USDアトリビュートに呼応したパラメータの左側には、このノードがアトリビュートを編集する 方法 を制御するためのポップアップメニューが付いています。
それだけでなく、接続可能なUSDアトリビュート(つまり、inputs:ネームスペース内にあるアトリビュート)には、アトリビュート入力とそのソース間の接続を切断できるメニュー項目があります。
シーンのCamera LOPの Clipping Range の遠方側の値は、大気全体を覆うほど十分な大きさにしてください。そうしないと、大気がクリップされ、大空が暗く見えてしまいます。
重要な光源(太陽など)に対してAtmosphere Primをリンクさせたい場合はLight Linker LOPを検討してください。これによって、大空全体の外観にほとんど影響を与えないライトの無駄な計算時間を回避することができます。
HoudiniのDome Light LOPとは異なり、大気は直接光源ではありません。つまり、BSDFコンポーネントのバウンス制限が
0に設定されていた場合、オブジェクトは大空を反射せず、暗く表示されます。
Note
Karma Sky Atmosphere Primはシーンにつき1個のみが許可されています。
大気はディープカメラマップサンプルのカラー値に寄与しますが、それ自体でディープサンプルを生成することはできません。ディープコンポジットワークフローでは、大気を有効にしてそれぞれの前景エレメントをレンダリングする必要があります。さらに、背景となる大空は、平坦な画像としてレンダリングし、個別に合成する必要があります。
大気サンプルからの間接光線は、シーン内の他のオブジェクトからの発光(ジオメトリライトに変換しない限り)または反射光を取得しません。
Sampling Behavior
このノードがクックされると、現行時間にただ1個のUSDタイムサンプルを生成するのではなく、たくさんのUSDタイムサンプルを生成することができます。
これは、このノードの後にCache LOPを接続することと同様ですが、こちらの方が非常に高速に評価され、他のノードからのデータをキャッシュ化しません。
これによって、以降のすべてのノードも時間依存にしてしまうノード時間依存を導入することなく、アニメーションデータをUSDで作成することができます。
その結果、一部のLOPネットワークの再生パフォーマンスを大幅に向上させることができます。
どのサンプリングモードでも、このノードのパラメータが時間と共に可変しない、且つ、ステージ上の他のタイムサンプルデータに依存していない場合、 呼応するアトリビュートに対して単一デフォルト値のみがUSD内で生成されます。 時間と共に可変するパラメータに対してのみUSDタイムサンプルが生成されます。
Sample Current Frame
現行時間に対して単一タイムサンプルが作成されます。
Sample Frame Range If Input Is Not Time Dependent
このノードの入力が時間依存の場合、このノードは、 Sample Current Frame モードと同様の挙動をします。 そうでない場合、このノードは、 Sample Frame Range モードと同様の挙動をします。
Sample Frame Range
Start/End/Inc パラメータを使用して、このノードのパラメータが評価される時間に対して複数の時間を生成し、それらの各時間においてアトリビュート毎にUSDタイムサンプルが作成されます。
Start/End/Inc
Sampling Behavior が Sample Frame Range の場合、このパラメータは、このノードで生成されるベースタイムサンプルの数と間隔を制御します。
このパラメータのデフォルト値は、@fstart、@fend、@fincです。
これらの値は、Houdiniを操作する時のグローバルHoudiniアニメーション設定の開始フレーム、終了フレーム、ステップサイズに相当します。
ROPノードを使用してフレーム範囲を生成した場合、これらの値は、実行したそのROPノードで指定された開始フレーム、終了フレーム、ステップサイズに相当します。
このデフォルトは、ディスクに書き出されるUSDファイルに、(Houdiniアニメーション設定に関係なく)ROPで指定されたフレーム範囲ちょうどのタイムサンプルを含めます。
Subframe Sampling
このノードで生成されたプライマリサンプル毎に、これらのパラメータは、そのプライマリサンプル時間付近に追加でサンプルを生成させることができます。 これは、プライマリサンプル時間だけでなく、カメラシャッターの開閉時間ちょうどにも正確なデータが存在することを保証するために非常によく使用します。
Shutter
プライマリサンプル時間を基準にシャッターの開閉時間を指定するのに使用されるメソッドを制御します。
Specify Manually
Shutter Open/Close パラメータの値で、プライマリサンプル時間を基準とした正確なオフセット値を指定します。
Use Camera Prim
Camera Prim パラメータで、シャッターの開閉時間が抽出されるカメラPrimのシーングラフパスを指定することで、プライマリサンプル時間を基準としたオフセット値を指定します。
Shutter Open/Close
Shutter モードが Specify Manually の場合、ここの2つのオフセット値がプライマリサンプル時間に追加され、シャッターの開閉時間が指定されます。 シャッターの開時間は0以下に、閉時間は0以上に設定してください。
Camera Prim
Shutter モードが Use Camera Prim の場合、ここには、入力ノードのステージ上のカメラPrimのシーングラフパスを指定します。 このPrimからShutter Open/Closeのアトリビュート値が読み込まれます。
Samples
プライマリサンプル毎に作成するサブフレームサンプルの数。 これらのサンプルは、シャッターの開時間から閉時間の間で均等に分布します。 このような均等な分布は、ちょうどプライマリサンプル時間にサンプルが作成される場合と作成されない場合があることに注意してください。
Always Include Frame Sample
有効にすると、ちょうどプライマリサンプル時間にサンプルを作成させることができます。 シャッター開時間とシャッター閉時間のどちらの Samples 値も既にプライマリサンプル時間でサンプルが配置されている場合、このオプションを有効にしても何の効果もありません。 そうでない場合、このオプションによって、追加でサンプルが作成されます。 つまり、プライマリサンプルあたりの実際のサンプル数は、 Samples で指定されたサンプル数よりも多くなる可能性があります。
Action
このノードが新しいPrimsを作成するのか、または、既存のPrimsを編集するのかどうか。
さらに、Force Editオプションを選択することで、このノードがPrims上のhoudini:editableアトリビュートを無視し、指定されたアトリビュートを常に編集するようにすることができます。
これは、houdini:editableアトリビュートがfalseに設定されたPrimsに対して警告を出してアトリビュートを設定しないEditモードとは対照的です。
Primitive Path
Create モードでは、これは、Prim(s)を作成するシーングラフ内の場所を制御することができます。
デフォルトは通常では/$OSになっています。
これは、ノードと同じ名前でルートレベルにPrimを作成します(例えば、/tube1)。
このデフォルト値は、名前の干渉を回避するのに役立ちますが、整理する観点では良くないです。
Primsを作成する時は、 Primitive Path が良い値になるように変更することを忘れないでください。
例えば、モデルを作成したノードの後でそのモデルに名前を付けるのではなくて、モデル内のジオメトリの後に名前を付けるようにしたいのであれば、/Modelsブランチ下にモデルを配置すると良いでしょう。
Create Primitives セクションには、新しいPrim(s)の作成方法に関する基本的なコントロールが含まれています。
Primitives
Edit モードでは、このノードには Primitives パラメータが表示されます。 このパラメータには、ノードが作用するPrim(s)を指定することができます。 テキストボックスの隣にある選択ボタンをクリックすることで、 Scene Graph Tree からPrimsを選択することができます。 コレクション内のすべてのPrimsのマッチングといった高度なマッチングには、プリミティブパターンも使用することができます。
Initialize Parameters
このノードが何も変更を適用しないようにするために、すべてのコントロールメニューパラメータの状態を Do Nothing 変更します。 さらに、最初の Primitives マッチから各プロパティの現行値を取得し、それに該当するパラメータの値を同じに設定します。 つまり、パラメータのコントロールメニューを Set or Create モードに変更すると、そのプロパティに現行値が設定されるので、新規に値を設定するよりも既存の値に変更を適用する方が簡単です。 レンダリング固有のタブを持つLOPで Rebuild Render-Specific Parameters を選択すると、そのレンダリング固有のタブのすべてのパラメータがそのLOPのデフォルト値にリセットされます。 シーン全体でそれらのパラメータをリセットしたいのであれば、トップメニューの Render メニューから Rebuild All Render-Specific LOP Parameters を選択すると良いでしょう。
レイリー散乱(Rayleigh Scattering)は、地球の大空が昼間では特徴的な青色に、日の出/日の入りではオレンジ色になるように、空気分子に作用する光をモデル化します。 下図では、太陽の高度の変化によるレイリー散乱の効果が分かります。
Scatter
このパラメータは、 Scale で乗算され、純粋な空気で散乱される光の量を示した各カラーチャンネルのレイリー散乱係数を生成します。
Scale
レイリー散乱係数の Scatter の乗数。
Distribution
高度が上昇するにつれて空気密度が低下する速さを制御します。
このパラメータの単位はキロメートルで、 Unit Scale で乗算されます。
例えば、デフォルトの8キロメートルで Unit Scale が1000の場合、空気密度は、海抜8000ユニットのところで37%になります。
Distribution は、空気密度の計算に、Nishitaの指数関数的減衰モデル(文献では“Scale Height”と呼ばれています)を使用します。
ミー散乱/吸収(Mie Scattering/Absorption)は、太陽などの光源の周囲にスモッグのかかった煙霧やハローイングを生成する水や塵粒子などの空気中の大きなエアロゾルをモデル化します。 下図では、ミー散乱を適用しない場合(左)と適用した場合(右)のシーンの違いが分かります。
Scatter
このパラメータは、 Scale に乗算され、エアロゾルで散乱される光の量を示した各カラーチャンネルのミー散乱係数を生成します。
Scatter Scale
ミー散乱係数の Scatter の乗数。
Absorption
このパラメータは、 Absorption Scale に乗算され、エアロゾルで吸収される光の量を示した各カラーチャンネルのミー吸収係数を生成します。
Absorption Scale
ミー吸収係数の Absorption の乗数。
Distribution
高度が上昇するにつれて空気密度が低下する速さを制御します。
このパラメータの単位はキロメートルで、 Unit Scale で乗算されます。
例えば、デフォルトの8キロメートルで Unit Scale が1000の場合、空気密度は、海抜8000ユニットのところで37%になります。
Distribution は、空気密度の計算に、Nishitaの指数関数的減衰モデル(文献では“Scale Height”と呼ばれています)を使用します。
Phase
位相の範囲は-1から1で、完全後方散乱から完全前方散乱までを網羅しています。
散乱は、大気の異方性を示します。
異方性は、光線がすべての方向に均等に伝搬しないことを意味します。
オゾン層は、特に日の出/日の入り付近での、地球の大空の深い青い色味に寄与する追加の吸収層です。 下図では、オゾン吸収を適用しない場合(左)と適用した場合(右)のシーンの違いが分かります。
Absorption
このパラメータは、 Scale に乗算され、オゾン層で散乱される光の量を示した各カラーチャンネルのオゾン吸収係数を生成します。
Scale
オゾン吸収係数の Absorption の乗数。
Altitude
最大オゾン密度/吸収は、地球の表面から測定された単位がキロメートルのこのパラメータ値まで到達します。
この値は Unit Scale で乗算されます。
例えば、 Altitude が8キロメートルで、 Unit Scale が1000の場合、最終値は8000となります。
Width
この値は、オゾンが(太陽)光を吸収する高度範囲の合計をキロメートルで示します。 吸収は、 Altitude パラメータの値で最大に到達します。
Note
Width は Unit Scale に乗算されます。
例えば、 Width が10キロメートルで、 Unit Scale が1000の場合、最終値は10000となります。
地面アルベドを適用しない場合(左)と適用した場合(右)のシーン比較。
Ground Albedo
大空のカラー(多重散乱が有効な場合)とプライマリ光線とバウンス光線での外観に影響を与える地面の反射率。
Ground Visibility
様々なタイプの光線に応じた池面の可視性を制御します。 例えば、地面をカメラに映したくないものの、大空や雲(と他のジオメトリ)の下側からの間接バウンス光線がその地面のカラーの影響を受けるようにしたい場合があります。 以下の式のどれかを使用することができます:
*
プライマリ光線と間接バウンス光線の両方で可視。
primary
プライマリ光線のみで可視。
-primary
間接バウンス光線のみで可視。
Planet Center
このパラメータは、 Unit Scale で乗算され、惑星の大気の中心となる位置を示します。 Planet Center の単位はキロメートルです。
Sea Level
このパラメータは、 Unit Scale で乗算され、大気が始まる Planet Center からの距離を示します。 Sea Level の単位はキロメートルです。
Unit Scale
位置または距離を表現した Karma Sky Atmosphere 内のすべてのパラメータの乗数。
LPE Tag
Light Pathエクスプレッションで使用する大気ボリュームに割り当てるカスタムラベル。
Minimum Stepsize
このパラメータは、 Unit Scale で乗算され、大気を通過する時のサンプル間の最小距離を示します。 このパラメータを下げると、特に厚みのある大気をモデル化した時の帯状のアーティファクトを軽減することができますが、処理が増えます。
Maximum Stepsize
このパラメータは、 Unit Scale で乗算され、大気を通過する時のサンプル間の最大距離を示します。 Maximum Stepsize は、 Minimum Stepsize の値の5から10倍にすることを推奨します。
Multi Scatter Limit
大気の光線が大気を伝搬できる回数を指定します。
Note
深く伝搬するほどレンダリング時間に影響します。
地球の晴れた空気のリアルな外観には通常では1や2の深度で十分で、その深度を超えると暗くなります。
Ground Albedo が大空のカラーに影響を与えるようにする場合は、1以上にする必要があります。
Internal Color Space
散乱係数と吸収係数は、このパラメータで指定されたOpenColorIOカラー空間で解釈され、透過率を計算する時にscene_linear(つまり、作業空間)に変換されます。
何も変換を適用しない場合は、ここを空っぽのままにします。
これは、大気のルックデヴがプロジェクトの作業空間とは異なるカラー空間で行なわれている場合に、そのルックを維持するのに役立ちます(しかし、RGBレンダリングの性質上、完全に一致することはありません)。
LUT Resolution
透過率テーブルのXとYの解像度。 X軸は光の角度に、Y軸はビューアの高度に呼応しています。 設定が適切であれば、デフォルト設定から逸脱する必要はありません。 例外は、 Distribution パラメータまたはオゾンの Altitude パラメータに大きな差がある場合です。 この場合、Y解像度を上げることで偏りを回避することができます。
Ground Offset
地面レベルと海面レベル間の距離。
地面は、Sea Level - Ground Offsetで計算された半径の球でモデル化されます。
このパラメータを0より大きい値に設定すると、地面が下がり、地面レベルと交差するオブジェクトによる不連続なアーティファクトを回避することができます。
その結果、大気と地面の間には、水平線付近で目立つ真空が生じます。
このパラメータを0のままにし、代わりにシーンの残りの部分を Sea Level より上に維持することを推奨します。
Ground Receives Shadows
地面エレメントが影を受けることができます(つまり、シャドウ光線を落とすことができます)。
Render Backside Atmosphere
惑星の反対側の大気のレンダリングを許可します。
Solid Alpha in IPR
IPRモードでアルファを1に設定します。
明るいビューポート背景との合成が原因で誤った外観にならないように、デフォルトでは有効になっています。