Volume Cigarette Smoke(ボリューム シガレット スモーク)

 
 
 

下位互換用に用意されています。このシェーダはサポートされていませんが、これを使用する古いシーンとの互換性を確保するために Softimage で引き続きインストールすることができます。シーン内のサポートされていないシェーダは、現在の Softimage シェーダ ライブラリの同等のシェーダに置き換えることを推奨します。

| フラクタル | フラクタル | Turbulence(乱流) | カラム シェイプ | アニメーション | マーチング | バウンディング ボックス | 近接 | 散乱 | ライト | Volume Cigarette Smoke(ボリューム シガレット スモーク) | Dusty(ダスティ)

[シェーダ タイプ](Shader Type): ボリューム

[出力]: カラー(RGB)値

小さいパーティクルからなるクラウドをシミュレートします。ボリュームを通過する各レイはステップに分割されます。各ステップ ポイントで密度関数が評価されます。密度関数は、分離されたR、G、B の各コンポーネントを返します。これらのコンポーネントは、カラー コンポーネントの 1 つ 1 つが散乱した、パーティクル個々の密度を表します。

密度関数はスモーク カラムをシミュレートします。空洞のカラムは渦を巻き、乱流の流れがそこに加わっています。カラムは Y = 0で Time = 0の場合に突然発生します。高く移動していくと、乱流は量が連続的に増加しながらカラムに加わります。

ヒント:

  • [ステップ サイズと反復](Stepsize and Recursion):「最大ステップ サイズ」はできるだけ大きくしておきます。たいていは密度関数の特性サイズの半分も取れば十分です。空間エイリアシング(一風変わった合板タイプのエフェクト)を得るのでなければ、値を小さくしないでください。エイリアシングはジッター パラメータとかち合います。

最大限の効果を得るために、再帰深度は 0 のままにしておき、必要な場合にのみ値を増やしてください。

  • [密度関数](Density function): フラクタルはかなり高速ですが、あまり多くの反復を指定すると大幅に速度が下がります。テストのためには、反復数は小さくしておいてください。シェーダを均一にするには、「最大反復」を 0 に設定しフラクタルを完全にオフにします。

名前(Name)

シェーダの名前。任意の名前を入力するか、デフォルト名を使用します。

カラー

カラー(Color)

煙の色を構成する赤、緑、青、そしてアルファの各チャンネルを定義します。

フラクタル

ノイズタイプ(Noise Type)

フラクタルを構築するのに 2 つのノイズ関数[Perlin]と[再帰]を選択します。

絶対(Absolute)

フラクタルに適用するノイズの絶対値を設定します。フラクタルには不連続性が生じます。乱流のような効果が得られます。フラクタルの値が常に正になってしまうという副作用があります。

最大反復(Maximum Iterations)

ノイズ反復の最大数を定義します。フラクタルの複雑さを定義するのに、最小レベルとともに用います。2 つの限界値はもっと拘束されて使用されます。

最小レベル(Minimum Level)

反復が続くための最小の大きさです。ノイズ関数がシェーダによって呼び出される頻度をコントロールします。この値が 0.1 の場合、ノイズの振幅が 0.1 以下ではフラクタルに追加されず反復は終わります。

減衰(Decay)

フラクタルの反復における、減衰の振幅を定義します。頻度を 2 倍とした振幅の比率を定義したものです。次に説明する周波数 乗算の値が 2 の場合、隣り合う反復の振幅はこの値で掛け合わされていきます。

周波数乗算(Frequency Multiplier)

後に続く反復の頻度の乗数を定義します。フラクタルの頻度とは単にスケールの逆数です。頻度を 2 倍にするということは、0.5 でテクスチャをスケール ダウンしたことと同じです。後に続くフラクタルは 1/頻度でスケーリングされます。

デフォーメーション

旋回

度合い(Amount)

適用される渦の量を定義します。0 = 渦はなし(煙は沈滞したように見えます)。

変更度合い(Change Rate)

渦のパターンの変化率を定義します。1 = 1 秒あたり 1 回「変化」します。

スケール(Scale)

渦のパターンのサイズを定義します。大きなスモーク カラムを生成するには、この値を増加させて渦を大きくするとうまくいきます。

速度(Speed)

風の速度を定義します。このパラメータは、煙が風でどの程度なびくのかをコントロールします。実際にはカーブのシェイプをコントロールし、上昇速度とは独立しています。

高度(Altitude)

スモーク エフェクトの最高点が達する高さを定義します。

Turbulence(乱流)

高度(Altitude)

煙がどの高さまで昇るかを定義します。乱流は Y = 0でまったく無い状態から始まり、Y = 高度で度合いに達します。煙はスムーズに始まりますが、次第に乱れてきます。

度合い(Amount)

高さが高度に達したときの乱流の最大量を定義します。

バイアス(Bias)

乱流の振幅カーブのシェイプをコントロールします。値が 0 に近づくと、高度に近づく最後の数単位まで振幅は小さいままです。0.5 = 直線的に増加します。大きい値(1 に近い)= 振幅は最初のほうですぐに大きい値に変化します。

スケール(Scale)

乱流パターンの大きさを定義します。煙の大きさが非常に大きい場合、煙と乱流の比率を等しくしておくために、この値を大きくする必要があります。

カラム シェイプ

半径(Radius)

基本スモーク シリンダの半径を定義します。これは乱流パラメータによって、渦を巻き変化していきます。

厚み(Thickness)

カラムの壁の厚みを半径の比として定義します。

開始の長さ(Start Length)

スモーク カラム内に現れる煙の距離を定義します。時間 0 では、スモークは Y = 0 で始まります。煙が開始長さ値に達すると完全に見えるようになります。開始長さが 2 で上昇速度が 1 秒あたり 1 単位だとすると、煙が完全に見えるようになるまで 2 秒かかります。

振幅(Amplitude)

スモーク カラムの縁の厚みにバリエーションを生じさせます。0 のままだとカラムは完全に滑らかに見えます。このパラメータは基本スモーク シリンダの半径を定義します。これは乱流パラメータによって、渦を巻き変化していきます。

アニメーション

終了(End)

煙が達する最高点の Y のレベルです。レイ マーチャのバウンディング ボックスにおける Y の最大値を設定すると安全です。煙は高度から終了に向かって次第にフェードアウトしていきます。

バイアス(Bias)

フェイドアウト カーブのシェイプをコントロールします。

上昇速度(Rise Speed)

乱流が上へ向かって動いていく速度を定義します。

時間オフセット(Time Offset)

シェーダのタイミングをオフセットします。既定では、時刻 0、つまりタイムラインの最初のフレームにおいて、スモーク カラムが必ず見えます。0 に設定すると、この時点で煙が現れます(開始長さパラメータを参照してください)。

マーチング

ステップサイズ(Step Size)

レイ マーチング中に必要となる、ステップの最大長を定義します。

このパラメータを固定する必要はありません。各ポイントはランダムにジッタリングします。さらにコントラスト制限によって、各ステップはポイントに細分されます。レイ マーチャが、エッジや暗影の境界といった部分にフォーカスを当てるようになります。

最大のサブディビジョン(Maximum Subdivision)

レイ マーチング中の反復の最大数を定義します。

最大差異(Maximum Difference)

マーチング ステップを反復的に細分した場合の密度や強度密度の差を定義します。

ジッター(Jitter)

サンプル ポイントがそれぞれ計算した位置からランダムに広がる量を定義します。0 ではジッターはありません。1 では、ポイントはジッタリングし、隣のポイントに触れそうになります。空間エイリアシングのアーティファクトを隠し、ノイズに置き換えるのにも使用されます。

バウンディング ボックス

常に有効にする(Always Honor)

シェーダがオブジェクト(ボリューム シェーダ)に適用される場合、このパラメータでボックスを優先させるかどうかを選択します。グローバル シェーダでは、常に優先されます。無限に続くレイにぶつかると、ボックスの遠い側は切り取るために使われます。

X 最小/X 最大(Minimum, Maximum X)

バウンディング ボックスの X パラメータを定義します。

Y 最小/Y 最大(Minimum, Maximum Y)

バウンディング ボックスの Y パラメータを定義します。

Z 最小/Z 最大(Minimum, Maximum Z)

バウンディング ボックスの Z パラメータを定義します。

近接

オン(On)

近似計算を有効にします。

円錐角度(Cone Angle)

正確な近似計算をするために、修正するスポットライトの角度を入力します。全方向をポイント ライトが照らす場合は、360 と入力します。

強度スケール(Intensity Scale)

ライトの全体的な強度をコントロールします。

散乱

アンビエンス(Ambience)

雲を照らすアンビエント ライトのソースをシミュレートします。

吸収(Absorption)

パーティクルに注がれるライトがどのくらい吸収されるかをコントロールします。空気や蒸気ではこの値は 0 のままです。濃い煙や煤ではこの値を大きく(1 程度)します。

非対称(Assymetry)

シェーダが散乱する振る舞いをコントロールします。0 では、空気のような小さいパーティクルの場合に同量のライトが前方と後方で散乱します。大きい値になると、煙や塵のような大きいパーティクルのように、前方に偏って散乱します。

均等(Uniform)

光の散乱を、アンビエント ライトがあるかのように全方向に対して均一に行います。しかしライト ルックアップは動作したままで、セルフ シャドウが起こります(「シャドウ ライト」を参照)。

散乱光(uniform_scatt)を選択した場合、レイ マーチャは散乱光を用いて、このポイントで光が散乱するのを定義します。光学的深度は積み重なり、散乱光と伝達光の閉鎖を計算するのに使用されます。

密度スケール(Density Scale)

雲の密度をスケーリングします。全体的なスケーリング係数です。雲やハイパーテクスチャの密度が非常に高い場合、ダイアログ ボックス右側の密度関数に干渉させる代わりにこの値を低くすることができます。

ボリューミック密度(Volumic Density)

オブジェクトにボリューム シェーダを適用したときに、このパラメータによって、密度をオブジェクトのスケーリングに合わせて自動的に変化させます。たとえば、オブジェクトを XYZ 方向に 10 分の 1 にスケールダウンする場合、テクスチャの密度は 1,000 倍になります。

透明(Transparent)

テクスチャを不可視にします。つまり、テクスチャによってライトが遮られることはありません。またシェーダはネオンのような赤熱の透明な気体となります。

ライト

散乱光を用いると、レンダリングにいくらか時間がかかります。それは、実際にエリア カメラを選択した場合など、ライト ルックアップのそれぞれにそれなりの時間がかかるからです。散乱光とシャドウ ライトとして同じライトを選択した場合、それぞれのライトの呼び出しは現在位置からライトまでのレイ マーチングとなります。ですので、レンダリング時間はほぼ 2 乗となります。大きなステップ サイズやハイパーテクスチャのように非常に密度の高いマテリアルの場合にのみ、この方法を用いてください。

注:セルフ シャドウはライトまでのすべての距離を計算します。ライトがバウンディング ボリュームの外部にあったとしてもです。ですので、ボリューム ライトはバウンディング ボリュームの内部になくてはなりません。

ライト

スキャッター ライト(Scatter Lights)

高速レンズ エフェクトを計算するためのシーンのスキャッター ライトを定義します。

シャドウ ライト(Shadow Lights)

高速レンズ エフェクトを計算するためのシーンのシャドウ ライトを定義します。

Render Tree の使い方

このボリューム エフェクトをシーンではなくオブジェクトに適用するには、このシェーダをマテリアル ノードの[Volume]入力へ接続します。ボリューム シェーダは、Render Tree で拡張したり構築することはできません。