ボリュームの指定

ボリュームは、煙のような表現を行います。
ボリューム内の粒子は光源による影響を受けるため、光芒のような表現や霧の表現などでも使用できます。
ただし、中身が詰まっている形状のためレンダリング時間がかかります。
また、ボリュームの密度が濃いほどレンダリング時間がかかります。

ボリューム形状を作成

ツールボックスの「作成」-「プラグイン」-「ボリューム (DOKI)」を選択すると、ボックス状、球状のボリューム形状を作成できます。
volume_01.png

図形ウィンドウをドラッグすることで、ボックスまたは球のサイズを指定します。
ブラウザ上では、ボリューム形状はパートとして配置されます。
volume_02.png

ボリューム形状は移動/回転/拡大縮小できます(パートの変換行列として保持)。

レンダリングすると以下のようになります。
volume_04.jpg

ボリュームのパラメータを指定

ブラウザでボリューム形状を選択し、「情報」より「ボリューム (DOKI)」を選択します。
ボリューム情報ダイアログボックスでボリュームにパラメータを指定します。
volume_03.png

「パターン」は「単一」もしくは「PerlinNoise」を選択できます。
「単一」はボリューム内を均一な密度にします。
「PerlinNoise」はボリューム内をムラのあるノイズで密度を変化させます。
「ボリュームサイズ」はボリューム形状がボックスの場合のサイズです。
「ボリューム半径」はボリューム形状が球の場合の半径です。
「ボリューム値」はボリューム形状の密度の倍率です。この値が大きいほど密度が濃くなります。
「パターン」で「PerlinNoise」選択時により濃いボリュームにしたい場合はこの値を大きくする必要があります。
ボリューム値を5.0から10.0に変更すると以下のようになります。
volume_05.jpg

「ボリューム色」はボリュームの色です。
「外側ほど透明」のスライダを調整することで、外側ほど透明になります。
この指定により、ボリュームの境界をあいまいにします。
「外側ほど透明」の値を0.0から0.2にすると以下のようになります。
volume_06.jpg

「パターン」で「PerlinNoise」を指定している場合は、PerlinNoiseのパラメータを変更できます。
volume_07.png

「分割」はボリュームを構成するボクセルの分割数を指定します。
「荒い」「普通」「細かい」「もっとも細かい」を選択できます。
「スケール」はPerlinNoiseのスケール値です。値が大きいほどノイズ模様が細かくなります。
値を大きくした場合はそれだけボクセルの分割数が必要となるため、「分割」を上げる必要が出てきます。
「オクターブ」はPerlinNoiseの重ね合わせの数です。値が大きいほど模様が複雑になります。

以下は、「ボリューム値」を500、「外側ほど透明」を0.2、「分割」を「普通」、「スケール」を1.5、「オクターブ」を4としました。
volume_08.jpg

ボリュームライトの表現

ボリュームライトのような表現を行いたい場合、光の影響がある部分にボックス状のボリュームを配置します。
volume_09.jpg

この場合は光源としてスポットライトを配置しています。
紫の直方体がボリュームです。

ボリュームは光の影響を敏感に受けるため、「ボリューム値」を小さくしたほうがよい結果になります。
また、レンダリング時間も短縮できます。
volume_10.png

レンダリングすると以下のようになりました。
volume_11.jpg

シーン全体にかかるボリュームについては、「レンダリングの指定」のフォグでも指定できます。

制限事項

現在のDOKI for Shade3Dでは、ボリュームの数はシーンに最大8つまでとしています(ボリューム形状を多く配置すると、OSPRay内でクラッシュが発生していたため)。