Channel Sources
Eddyのチャンネルソースノード群は、Eddyのコンポジットのグラフ内で使用する初期データを生成します。
E_Box
符号付き距離チャンネルで表されるボックスを生成します。
使い方
これは、ボリュームコンポジットのグラフ内で使用される基本的なEddyのボリュームプリミティブです。例えば、ノードをMaskノードと一緒に使用して、このジオメトリの表面の内側と外側にユーザー定義の値を割り当てることができます。
インプット/アウトプット
接続 | ClassType | 数値 | 説明 |
|---|---|---|---|
axis | axis | 0-1 | ボックスに適用される変形を示すNukeのaxisノード。 |
出力内容 | EddyChannel (scalar) | 1 | SDFボックスを表すEddyのスカラーチャンネル。 |
コントロール
パラメータ | 値 | 説明 |
|---|---|---|
Dimensions | (0,0,0)…(inf,inf,inf) | シーン単位でのボックスの寸法。 |
ボックスのチャンネルソース |
|---|
E_CacheLoader
ディスクからOpenVDBボリュームキャッシュを読み込み、チャンネルセットに変換します。キャッシュが大きすぎて使用可能なGPUメモリに収まらない場合、ボクセルサイズの増加を使用して、キャッシュを粗くすることができます。これにより、メモリ使用量を削減しますが、結果として得られるボリュームの解像度も下がります。
使い方
このノードにより、ディスクに保存されているEddyチャンネルデータや、Eddy以外のツールにより作成されたシミュレーションからのデータなどの外部で生成されたボリュームデータを読み戻すことができます。
インプット/アウトプット
接続 | ClassType | 数値 | 説明 |
|---|---|---|---|
出力内容 | EddyChannelSet | 1 | 選択されたファイルから読み込んだEddyのチャンネルセット。 |
コントロール
パラメータ | 値 | 説明 |
|---|---|---|
File Name | FilePath | .vdbファイルの場所 (例: /data/cache.#.vdb) |
Voxel Size Gain | 1…inf | 読み込まれたデータセットのボクセルサイズのための乗数です。VDBキャッシュの必要メモリを減らすために使用されます(ただし解像度も下がります)。 |
Load Constant Tiles | True/False | 無効にすると、CacheLoaderはOpenVDBの定数タイルを無視します。これは例えば、SDFシェイプの内部などです。 |
Channel Information | 複数選択リスト | キャッシュから読み込むチャンネルを選択し、サンプリングに使用する補間方法や、ベクトルのトランスフォームタイプなどのチャンネルのプロパティを設定します。Channel Setのウィジェットを参照してください。 |
OpenVDBキャッシュのチャンネルソース |
|---|
E_Channel
Eddyのチャンネルセットから1つのチャンネルを抽出します。
Nukeの 3Dビューポートでチャンネルデータを表示する方法は、NukeのノードのプロパティのVisualizer Settingsタブで制御することができます。チャンネルの可視化に関する詳細は Visualization のセクションを参照してください。
使い方
一部のノードは、単一のEddyチャンネルではなく、Eddyチャンネルセットを出力します。例えば、 Smokeエレメントや VDB Cache Loaderノードです。E_Channelノードは、チャンネルセットに含まれる各チャンネルへ個別にアクセスできるようにします。E_Channelノードは軽量で、データをコピーすることはありません。つまり、チャンネルセット内の個々のチャンネルにアクセスしてそのチャンネルを表示するメカニズムのみを提供します。
インプット/アウトプット
接続 | ClassType | 数値 | 説明 |
|---|---|---|---|
axis | axis | 0-1 | チャンネルに適用される変形を示すNukeのaxisノード。 |
channelSet | EddyChannelSet | 1 | 必要なチャンネルの元となるチャンネルを含むEddyのチャンネルセットを選択します。 |
出力内容 | EddyChannel | 1 | EddyChannelSetから選択されたEddyチャンネル。 |
コントロール
パラメータ | 値 | 説明 |
|---|---|---|
Mode | リスト | ユーザーが、Eddyのチャンネルセットから抽出するチャンネルタイプ、つまりスカラーやベクトルを選択できるようにします。このノードで出力されるタイプやChannelのリストに表示されるチャンネルの種類に影響を与えます。 |
Channel | リスト | インプットのEddyのチャンネルセットにある使用可能なチャンネルのリスト。 |
Smokeエレメントのチャンネルセットからのチャンネル |
|---|
E_Constant
空間内のあらゆる場所で定数値を持つチャンネルを生成します。
使い方
これは、ボリュームコンポジットのグラフ内で使用される基本的なEddyのボリュームプリミティブです。定数値は、空間内のあらゆる場所に存在するため、周囲の値の指定などに使用することができます。
ご注意
Nuke の3Dビューポートで定数のチャンネルを表示(可視化)する場合、チャンネルの範囲全体は、実質的には無限大のため表示されません。定数のチャンネルの一部を表すボックスが代わりに表示されます。
インプット/アウトプット
接続 | ClassType | 数値 | 説明 |
|---|---|---|---|
axis | axis | 0-1 | チャンネルに適用される変形を示すNukeのaxisノード。 |
出力内容 | EddyChannel | 1 | 定数のEddyチャンネル。 |
コントロール
パラメータ | 値 | 説明 |
|---|---|---|
Mode | リスト | 出力されるチャンネルのValueTypeを設定します。 |
Transform Type | リスト | このベクトルフィールドが変換されるときの挙動を指定します。ベクトルチャンネルのトランスフォームを参照してください。 |
Value | -inf…inf | このチャンネルの定数値 |
定数のスカラーチャンネルソース |
|---|
E_Cylinder
符号付き距離チャンネルで表されるシリンダーを生成します。
使い方
これは、ボリュームコンポジットのグラフ内で使用される基本的なEddyのボリュームプリミティブです。例えば、ノードをMaskノードと一緒に使用し、このジオメトリの表面の内側と外側にユーザー定義の値を割り当てることができます。
インプット/アウトプット
接続 | ClassType | 数値 | 説明 |
|---|---|---|---|
axis | axis | 0-1 | チャンネルに適用される変形を示すNukeのaxisノード。 |
出力内容 | EddyChannel (scalar) | 1 | SDFシリンダーを表すEddyのスカラーチャンネル。 |
コントロール
パラメータ | 値 | 説明 |
|---|---|---|
Radius | 0…inf | シーン単位でのシリンダーの半径。 |
Height | 0…inf | シーン単位でのシリンダーの高さ。 |
シリンダーのチャンネルソース |
|---|
E_Expression
エクスプレッションスクリプトによって定義されるEddyチャンネルを作成します。
使い方
スクリプト関数を直接指定することで新しいチャンネルを定義します。関数をある位置で評価して、その位置のチャンネルの値を計算できます。
入力パラメータをエクスプレッションに入れる方法などの、エクスプレッションの書き方に関する一般的な情報は、エクスプレッションを参照してください。
スクリプトでは、「expression_field」と呼ばれる関数を定義する必要があり、この関数は、フィールドがサンプリングされている位置をパラメータとして取得し、その位置のフィールドの値を返します。この関数は、スクリプトで次のように定義されている必要があります。
Pythonで書かれたスカラーフィールド
def expression_field(position=Float3):
return 1.0Pythonで書かれたベクトルフィールド
def expression_field(position=Float3):
return [ 1.0, 2.0, 3.0 ]C++で書かれたスカラーフィールド
float expression_field(const float3& position)
{
return 1.0f;
}C++で書かれたベクトルフィールド
float3 expression_field(const float3& position)
{
return make_float3(1.0f, 2.0f, 3.0f);
}インプット/アウトプット
接続 | ClassType | 数値 | 説明 |
|---|---|---|---|
axis | axis | 0-1 | チャンネルに適用される変形を示すNukeのaxisノード。 |
bounds | EddyBounds | 0-1 | チャンネルのオプションの境界。これが与えられていない場合、チャンネルには境界がありません。 |
出力内容 | EddyChannel | 1 | スクリプトによって定義されるEddyチャンネル。 |
コントロール
パラメータ | 値 | 説明 |
|---|---|---|
Type | リスト | フィールドのタイプ。 |
Language | リスト | エクスプレッションスクリプトを書く言語。 |
Expression | テキスト | フィールドを定義する関数を含んだスクリプト。変更を適用するには、「apply changes」ボタンを押します。 |
Type
名前 | 説明 |
|---|---|
Scalar | フォグボリュームのようなシンプルなスカラーフィールド |
Scalar Isosurface | isosurfaceを定義するスカラーフィールド。負の値は表面の内側、正の値は表面の外側にありますが、スクリプトによって返される値は必ずしも実際の距離を表すものではありません。 |
Scalar SDF | 符号付き距離フィールドを定義するスカラーフィールド。スクリプトによって返される値は、負の値は内側、正の値は外側で、その数値は表面までの実際の距離である必要があります。 |
Vector | 風量などの標準ベクトルのように変換を行うベクトルフィールド。 |
Vector Normal | スケール時に法線のように変換を行うベクトルフィールド。 |
Vector Coordinate | トランスフォームを適用されても変化しないベクトルフィールド。 |
Language
名前 | 説明 | |
|---|---|---|
Python | EddyScriptで書かれたPython言語のスクリプト。 | |
C++ | C++で書かれたスクリプト。 | |
E_Image
2D画像をEddyのチャンネル(つまり、3Dボリューム)に変換します。スカラーモードが選択されている場合、インプットの画像データの最初のチャンネルがボリュームに変換されます。ベクトルモードが選択されている場合、インプットの画像データのRGBチャンネルがボリュームに変換されます。
使い方
このノードは、2Dの画像データをEddyの3Dコンポジットのグラフに取り込むために使用されます。これにより、例えば、画像をエミッションソースやコリジョンオブジェクトとして使用することができます。3Dでの領域は、ボックスのサイズを直接指定するか、カメラプロジェクションを使用することで指定できます。カメラが使用されている場合は、ニアクリッププレーンおよびファークリッププレーンによって、チャンネルで埋められた領域を制御します。
インプット/アウトプット
接続 | ClassType | 数値 | 説明 |
|---|---|---|---|
image | 画像 | 1 | Eddyボリュームチャンネルに変換するNukeの画像データ。 |
cam | カメラ | 0-1 | 画像からなるボリュームのプロジェクションの基準として使用されるNukeカメラ。 |
出力内容 | EddyChannel | 1 | 投影された画像を含むEddyチャンネル。 |
コントロール
パラメータ | 値 | 説明 |
|---|---|---|
Mode | リスト | 出力されるチャンネルのValueTypeを設定します。 |
Transform Type | リスト | このベクトルフィールドが変換されるときの挙動を指定します。ベクトルチャンネルのトランスフォームを参照してください。 |
Dimensions | (0,0,0)…(inf,inf,inf) | カメラプロジェクションを使用していない場合のフィールドサイズ。 |
Keep Aspect Ratio | True/False | カメラプロジェクションを使用していない場合、画像のアスペクト比を維持するためにYの寸法を調整します。 |
As Texture | True/False | フィールドは、ワールド空間ではなくテクスチャ空間で直接サンプリングされます。トランスフォームまたはカメラは使用されません。 |
テキスト画像のソース | カメラで投影されたテキスト画像のソース |
|---|
E_MeshToVolume
このノードは、ナローバンドボリュームのチャンネルセットへメッシュを変換します。
ナローバンドデータは、Band Widthパラメータにより制御されるメッシュの表面から一定の距離内でのみ有効なボリュームデータです。この帯域の外側では、1つまたは複数のチャンネルは周囲に一定の値を持ちます。チャンネルセットを生成するために必要な計算時間やその保存に必要なメモリは、Band Widthが大きくなるにつれ急激に増加するため、可能な限り低いBand Width値を使用してください。