高度な OpenGL 設定

これらのオプションは[可視化] >[高度な OpenGL 設定]にあります。

リアルタイム シャドウ

OpenGL モードでのみ使用できます。

リアルタイム シャドウをアクティブ化/非アクティブ化します。

アンビエント オクルージョン シャドウ

アンビエント オクルージョン シャドウをアクティブ化します。

アンビエント オクルージョンは、ソフト グローバル イルミネーションとしても知られています。隙間とコーナーにシャドウを作ります。これにより、OpenGL レンダリング モード内のシーン表現がよりリアリスティックになります。

オクルージョン

シーンは、環境ノード内の HDR ファイルで計算されて光が照らされます。シーン内に他の光源がなくても機能します。計算時に非表示になっているすべてのオブジェクトは暗くなります。

アンビエント オクルージョンの計算は前処理され、データの準備中に実行されます。計算されたアンビエント オクルージョンの結果は、テクスチャ座標 7 番と 8 番内に保存されたジオメトリの頂点にベイク処理されます。

計算されたシャドウの滑らかさは、ポリゴン メッシュ解像度によります。そのため、VRED では、サブディビジョンや定義済みの品質プリセットなど、低品質モデルの品質を高めるための方法を複数用意しています。

スクリーン スペース アンビエント オクルージョンの設定

スクリーン スペース アンビエント オクルージョンの設定

注:

2021.3 では、レンダリング時の SSAO (スクリーン スペース アンビエント オクルージョン)の品質を改善して、アーティファクトが少なく、外観を調整できる可能性が高い、極めて高い品質を実現できるようにしました。

[スクリーン スペース アンビエント オクルージョンの設定]ダイアログ ボックスを開き、SSAO を有効にして、次のオプションを設定します。

有効化

スクリーンスペース アンビエント オクルージョンを有効にします。

サンプル精度

アンビエント オクルージョンの計算に使用されるサンプル精度を設定します。

半径

アンビエント オクルージョンを計算する半径をワールド空間内に設定します。オクルージョンが無視される範囲外の仮想半球の半径です。ただし、これはスクリーン スペース効果であるため、多くの制限があります。

重要:

半径が大きすぎると、効果は機能を停止します。

カットオフ角度

深度チャネルが正確でない場合の、フラットなサーフェスへのセルフシャドウイングを防ぎます。このオプションは、スムーズな曲率を持つサーフェスへのシャドウイングを回避するためのカットオフ角度を設定します。サーフェス プレーンとサンプル ポイントまでのベクトルの間の角度がカットオフ角度よりも小さい場合、サンプルは無視されます。

強度

オクルージョンの暗さを設定します。値が高いほど、シャドウが暗くなります。

ブラー量

オクルージョンに適用されるブラーの量です。

SSAO は、ベイク処理されたアンビエント オクルージョン(AO)の効率的でリアルタイムな近似を提供します。SSAO は計算済み AO、さらにはベイク処理されたライティングやシャドウほど高精度にはなりませんが、SSAO はクイック プレビューに適しています。

エッジの保持

ブラー フィルタのエッジ保持係数を設定します。

  • 値が 0 の場合、深度チャネルの不連続性は無視され、すべてがフィルタされます。
  • 値が 1 の場合は、完全に同じ深度にある値のみがフィルタされます。

ジオメトリの光源

OpenGL レンダリング モードでのみ使用でき、[リアルタイム シャドウ]がオンの場合のみアクティブになります。

自己照明ジオメトリを光源として処理します。

バックフェース カリング

バックフェース カリングをアクティブ化 / 非アクティブ化します。バックフェース カリングは、法線がカメラを向いている面のみをレンダリングします。

オクルージョン カリング

表示されているジオメトリのみをレンダリングします。レンダリング エンジンはレンダリング時、他のオブジェクトに隠れているポリゴン/パッチを除外します。

深度専用パス

深度値のみを使用して、シーンを 1 回レンダリングします。この機能は、複雑なシェーダの最適化に使用できます。

透明モード

[オブジェクトのソート] (既定)と[深度ピーリング]のいずれかの透明モードを適用して、シーンを一度レンダリングします。[深度ピーリング]を選択した場合は、[透明度設定]を選択してピールするレイヤの数を決定します。

ビデオ キャプション: OpenGL で自己交差する透明なオブジェクトに対するピクセル補正用に、[深度ピーリング]を[オブジェクトのソート]に追加しました。これにより、透明なマテリアルが間違ってソートされる問題も解決されました。スライダを使用して、計算に使用するレイヤの数を調整します。

オブジェクトのソート

正しい結果よりもパフォーマンスを重視している場合や、交差する透明なオブジェクトまたは自己交差する透明なオブジェクトがない場合は、オブジェクトのソートを選択します。このオプションを選択すると、[オブジェクトのソート]による透明モードが有効になり、シーン内のすべてのオブジェクトが背面から前面に向かって 1 つずつレンダリングされます。この順序は、[マテリアル エディタ] > [一般] (タブ)の[ソート キー]オプションを使用してオーバーライドできます。

深度ピーリング

シーン内に交差する透明なオブジェクトまたは自己交差する透明なオブジェクトが存在する場合は、深度ピーリングを使用します。

[オブジェクトのソート]と[深度ピーリング]

深度ピーリングは、順序に依存しない透明度を使用する場合や、ソートしないで透明なサーフェスをピクセル単位で正しくブレンドする場合に使用します。ヘッドライトなどの複雑な交差透明オブジェクトを含むイメージの場合は、ピクセルパーフェクトの精度でレンダリングします。

深度ピーリングを使用しない場合 深度ピーリングを使用する場合
深度ピーリングを使用しない場合 深度ピーリングを使用する場合

深度ピーリングの機能

深度ピーリング透明モードの場合は、複数のパスを介してピクセル単位でレンダリングします。各パスで次の透明なレイヤがピールされ、前のレイヤとブレンドされます。VRED はレイヤを背面から前面にピールして、正しい結果を取得します。したがって、ヘッドライトのように 3 層のガラスがあるのに、深度ピーリングが 2 に設定されている場合は、カメラから最も離れている 2 層のみが表示されます。残りのレイヤはすべてレンダリングされません。

ただし、深度ピーリングにはパフォーマンス コストという利点があります。シーンを完全にキャプチャする際にピールするレイヤ数の最小値を選択してください。多くのシーンでは、オクルージョン カリングを有効にすることで([可視化] > [高度な OpenGL 設定] > [オクルージョン カリング])、パフォーマンスを大幅に向上させることができます。

透明なマテリアルの場所

環境のシャドウ プレーンは透明なマテリアルであるため、深度パスによるレンダリングも行われます。したがって、[深度ピーリング]が有効であるのに、単一レイヤに設定されている場合、シャドウ プレーンをシーン内のすべての透明なマテリアルの背後に配置して一定角度から見ると、これらの透明なマテリアルは表示されなくなります。この問題が発生した場合は、レイヤ数を 8 などの大きい値に設定します。

深度ピーリングを使用する場合

次の場合のように、順序を指定しても正しい透明度が得られない場合は、深度ピーリングの使用をお勧めします。

  • 透明なジオメトリがセルフオクルードする場合
  • 2 つ以上の透明なオブジェクトが交差していて、1 つのオブジェクト内に、別のオブジェクトの前面に配置される部分と背面に配置される部分が共存している場合

透明度設定

[透明度設定]ダイアログ ボックスが開き、ピールするレイヤの数を設定できます。このオプションは[深度ピーリング]と一緒に使用します。既定のパス数(つまり、ピールするレイヤの数)は 8 で、背面から前面の順に実行されます。スライダを使用して、0 ~ 32の範囲の値を設定します。必要に応じて、この範囲を超える値をスライダ フィールドに手動で入力することができます。

[透明度設定]ダイアログ