Blur (Optimized)
カラーコレクションカーブ

Camera Motion Blur

モーションブラー (モーションブラー)はカメラシステムの“光”が時間をかけて集積される(離散的なスナップショットをとるだけではない)事実をシミュレートした一般的なエフェクトです。速いカメラや物体の動きは、ブラーのかかったイメージを生成します。

カメラが横に移動している標準的なカメラのモーションブラーの例。また、背景領域が前景領域ほどをブラーをかけないという、モーションブラーの典型的な副作用に注目してください。
カメラが横に移動している標準的なカメラのモーションブラーの例。また、背景領域が前景領域ほどをブラーをかけないという、モーションブラーの典型的な副作用に注目してください。

現在のモーションブラーの実装では、特定の層を(特に、それらのカメラの動きをフォローしている場合に、キャラクターと動的オブジェクトを除く場合に便利)を除外するオプションを使用してカメラの動きによるブレをサポートしています。しかし追加のスクリプトを用意して、各オブジェクトモデルのマトリクスを保持して速度バッファを更新すれば場合、動的なオブジェクトをサポートするように拡張することができます。

動的オブジェクト(ドラム缶、バス)を除した Camera モーションブラーの例
動的オブジェクト(ドラム缶、バス)を除した Camera モーションブラーの例

その他の イメージエフェクト 同様、このエフェクトは Standard Assets をインストールすることで使用できます。

プロパティー

プロパティー: 説明:
Technique モーションブラーのアルゴリズム。通常は Reconstruction フィルターにより最高の品質が得られパフォーマンスが犠牲となり、DirectX 11 と OpenGL Core 対応のグラフィックスデバイスが使用されない限り、ブラーの半径は 10 ピクセルに限られます。
Velocity Scale より高い Scale にすることで、画像にブラーがかかりやすくなります。
Velocity Max ブラーが行われる最大ピクセル距離と Reconstruction フィルターのタイルサイズ(下記参照)。
Velocity Min ブラーが完全におこなわれない最小のピクセル距離。

カメラの動き:

プロパティー: 説明:
Camera Rotation カメラの回転によるブラー(ぼけ)の Scale 強度。
Camera Movement カメラの移動によるブラー(ぼけ)の Scale 強度。

Local Blur、Reconstruction、ReconstructionDX11、ReconstructionDisc:

プロパティー: 説明:
Exclude layers このレイヤー内のオブジェクトは影響を受けません。
Velocity downsample 速度バッファを低解像度にすることで、パフォーマンスが向上するものの、著しくブラーの品質が低下します。単純なシーンでは有効なオプションかもしれません。
Sampler Jitter ノイズを追加すると Reconstruction フィルターによるゴーストの発生を防止するのに役立ちます。
Max Sample Count ブラーを決定するために使用されるサンプルの数。パフォーマンスに大きく影響を与えます。
Preview (Scale) 人為的にカメラモーションの値を設定したことでみえるブラーをプレビューします。

モーションブラーフィルター(テクニック)

Local Blur は、現在のピクセル速度に沿って指向性ブラーを実行します。本質的に gather (収集)操作であるため、幾何学的に単純(例えば広大な Terrain 地形)であるとき、大きなブラー半径のときなど、リアリティがそれほど重要でないとシーンに適しています。一つの欠点は、フォーカスを絞った背景領域にブラーされたオブジェクト適切に重ねることができないということです。もう一つの欠点は除外オブジェクトがブラーされた領域を汚すことです。

カメラが横向きに移動していて、前景(上)や背景が除外対象である場合の Local Blur テクニックの例。さきに述べた物体の両方に適用され、一般に画質劣化が起きることに注意してください。実際に使用するケースでこのことが大きな問題でない場合は、このモーションブラーテクニックが迅速かつ効果的なオプションです。

Reconstruction フィルターは、より現実的なブラーを生むことができます。Reconstrution (再構築)という名前の由来は、指定された色と深度バッファで利用可能な情報がない場合でも、フィルターが、背景を推定しようとすることに由来しています。結果としては、収集フィルターがより高い品質を生み Local ブラーの欠点を回避することがあります(例えば適正なオーバーラップを生成する、など)。

機能は A Reconstruction Filter for Plausible Motion Blur (妥当なモーションブラーの再構築フィルター)(http://graphics.cs.williams.edu/papers/MotionBlurI3D12/ )の論文にもとづいてます。アルゴリズムは、Velocity Max の大きさのタイルに画像を分割しその領域の最大速度を用いてブラーのかかったピクセルを近くの領域に散乱するシミュレーションを行います。前述のタイルのサイズが大きく、速度変化が激しい場合、画像の乱れが発生する可能性があります。

DirectX 11 と OpenGL Core の排他フィルター ReconstructionDX11 は任意のブラーの距離(別名タイルサイズや Velocity Max )とサンプルの数を柔軟に設定できます。

ReconstructionDisc 偏差は、スタンダード Reconstruction フィルターと比べて柔らかい見た目を生成するために異なるサンプリングパターンを使用します。しかし、より多くのサンプルが取得されるため( DirectX11 を自動的に拡縮します)、コストが高まる可能性があります。

カメラが横に移動している間に Reconstruction テクニックを使用している例。今度は、Reconstrucion フィルターが問題を解消してくれるために前述の画像の乱れが少ない(背景を除外して立方体が重なったとき(下)、あるいれは除外されたキューブがブラーされた背景の領域を汚さない)。
カメラが横に移動している間に Reconstruction テクニックを使用している例。今度は、Reconstrucion フィルターが問題を解消してくれるために前述の画像の乱れが少ない(背景を除外して立方体が重なったとき(下)、あるいれは除外されたキューブがブラーされた背景の領域を汚さない)。

上記のすべてのフィルターが速度バッファを生成する際に Pre-pass が必要である一方で、Camera Motion フィルターは、単にカメラの動きのみで動作します。カメラの変化に基づいてグローバルフィルター方向を生成したうえで、その方向に沿って画面をブラーします。(詳細については Post-Processing in Orange Box を参照してください) これは、特に FPS ゲームで、例えば高速カメラの回転を滑らかにするのに適しています。

 Camera Motion テクニックを使用した例。ブラーが、画面全体に均一であることに注意してください。
Camera Motion テクニックを使用した例。ブラーが、画面全体に均一であることに注意してください。

ハードウェアサポート

このエフェクトには シェーダーモデル 3depth textures をサポートするグラフィックスカードが必要です。 グラフィックハードウェアの性能とエミュレーションについての詳細は、ページ及び準拠したハードウェアのリストを参照してください。

Blur (Optimized)
カラーコレクションカーブ