モーションブラー (モーションブラー)はカメラシステムの“光”が時間をかけて集積される(離散的なスナップショットをとるだけではない)事実をシミュレートした一般的なエフェクトです。速いカメラや物体の動きは、ブラーのかかったイメージを生成します。
現在のモーションブラーの実装では、特定の層を(特に、それらのカメラの動きをフォローしている場合に、キャラクターと動的オブジェクトを除く場合に便利)を除外するオプションを使用してカメラの動きによるブレをサポートしています。しかし追加のスクリプトを用意して、各オブジェクトモデルのマトリクスを保持して速度バッファを更新すれば場合、動的なオブジェクトをサポートするように拡張することができます。
その他の イメージエフェクト 同様に、このエフェクトは 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 を自動的に拡縮します)、コストが高まる可能性があります。
While all of the above filters need a prepass to generate a velocity buffer, the Camera Motion filter solely works on the camera motion. It generates a global filter direction based on camera change and blurs the screen along that direction (see Post-Processing in Orange Box for more details). It is especially suited for smoothing fast camera rotations, for instance in first person shooter games.
This effect requires a graphics card that supports Shader Model 3 and depth textures. See the Graphics Hardware Capabilities and Emulation page for further details and a list of compliant hardware.