質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

2回答

6349閲覧

ポストプロセスでモーションブラーがおそらくかかっていない

退会済みユーザー

退会済みユーザー

総合スコア0

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2020/01/29 18:40

編集2020/01/30 15:18

前提・実現したいこと

パッケージマネージャーからインストールできるポストプロセスで、
モーションブラー効果を試みているのですが、かかっているように見えません。
ご教示お願いします。

試したこと

当該ポストプロセスで、Bloomのエフェクトをかけることはできたので(Bloomがかかっている様子が視認できたので)、
ポストプロセスそのものの基本的な使い方は間違ってないと思います。
Bloomと同様に、Motion Blurをかけてみましたが、かかっている様子が見られませんでした。

Motion Blurをかけて、下記のことを試しました。
なお、効果を視認するためにシーンに赤色のキューブを配置しました(デフォルトのキューブに、赤色のマテリアルをアタッチしたものです)。

・ゲーム実行時にシーンビューで、ゲームオブジェクトの三軸をドラッグして素早く動かしてみる。

・キューブに下記スクリプトをアタッチして動かしてみる(スピードなども変えてみる)。

C#

1using UnityEngine; 2 3public class Sample : MonoBehaviour 4{ 5 6 float m_length = 4; 7 8 void Update() 9 { 10 Vector3 basePos = transform.position; 11 float y = Mathf.PingPong(Time.time * 15f, m_length); 12 Vector3 position = new Vector3( basePos.x, y, basePos.z ); 13 this.transform.position = position; 14 } 15}

また、上記スクリプトで動かす際、BloomとMotion Blurの両方をオンにしてみたところ、Bloomがかかっていることは確認できました。

・Shutter AngleとSample CountをデフォルトやMAXの値で試してみる。
Shutter AngleとSample Countの値とはどういうものですか?
これらの値をどのようにすれば、モーションブラー効果がより顕著にあらわれますか?
こちらのドキュメントを見てみましたが、よくわからなかったです。

・モーションブラーをオンオフして、上記スクリプトなどでそれぞれの動きを確認してみる。
モーションブラーをかけていない状態でもわずかに残像っぽく見れました。
そして、モーションブラーをかけてみても、オフのときと大して変わりないように見えたので、やはりかかってなさそうでした。

補足情報(FW/ツールのバージョンなど)

Unity 2019.2.1f1 (64-bit)
Post-processing Stack v2

現状追記

・カメラ
イメージ説明

・キューブ
イメージ説明

・空のゲームオブジェクト
イメージ説明

・設定
イメージ説明

・実行画面
イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

Post Processing Stack パッケージの Motion Blur はなぜか異様にかかりが弱いです。
以下のようにちょっとコードを修正してやればはっきりとかかります。

More intense motion blur with Post Processing Stack v2?

投稿2020/07/20 18:00

bboydaisuke

総合スコア5270

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

Shutter Angleを大きくすると、普通は明らかに分かるような長さのぼけが生じると思いますので、どこか設定の不備がありそうですね。
まず気になる点として、キューブのMesh Rendererの「Additional Settings」の「Motion Vectors」はどうなっているでしょうか?
ここが「Force No Motion」だとモーションブラーは生じないでしょうし、「Camera Motion Only」だとカメラ側を動かしたときしかぼけなくなってしまうはずです。
そこに問題がなさそうでしたら、他の可能性としては対象プラットフォームに関する問題でしょうかね。マニュアルによるとAR/VRはサポート対象外で、その他必要条件としてモーションベクター・デプステクスチャ・シェーダーモデル3が使用可能な環境でないといけないようです。SystemInfo.supportsMotionVectorstrueになっているでしょうか?
プラットフォームがPost Processing Stackによるモーションブラーをサポートしていない場合はあきらめるか、他の方法を探すかでしょうかね...

Motion Blurの設定項目ですが、まずShutter Angleについては解説文の中に「rotary shutter」という言葉が出てきています。多分これはRotary disc shutterを表していて、Shutter Angleは遮光円盤の開口部の角度ということではないでしょうか。映画用カメラで映像を撮影するとき、シャッターの開口部が広いとフィルム上の一つのコマが光を受ける時間が長くなり、その間に被写体が動くと同じ動きでも大きくぶれて写る...というのをシミュレートしたもののような気がします。

Sample Countはぼかし映像を作る際に元の映像から運動方向に沿って色をサンプリングする際の、サンプリング地点の数を表すのだろうと思います。点数が小さいとサンプリング回数が少ないので高速ですが、代償として長い距離をぼかそうとするとサンプリング点がまばらになってしまい、ぼけ部分の品質が悪化してしまうかと思います。もしちゃんとモーションブラーがかけられるようになりましたら、Shutter Angleを大きくした状態で素早くオブジェクトを動かすとSample Countによる違いが分かりやすいんじゃないでしょうか。

追記
2つのキューブを並べて比べてみました。
左はForce No Motion、右はPer Object Motionです。エフェクトはMotion Blurのみで、Bloomは切っています。

図

判断しにくい場合、適当なオブジェクトに下記のようなスクリプトを付けてフレームレートを落としてやると比べやすいかもしれません。

C#

1using UnityEngine; 2 3public class FrameRateDropper : MonoBehaviour 4{ 5 [SerializeField] private int targetFrameRate = 10; 6 7 private void Start() 8 { 9 QualitySettings.vSyncCount = 0; 10 Application.targetFrameRate = this.targetFrameRate; 11 } 12}

投稿2020/01/29 22:08

編集2020/01/30 20:42
Bongo

総合スコア10807

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/01/30 15:30

ご回答ありがとうございます。 Shutter Angleの値を大きくすると、大きくぶれるようになるのですね。 現状を質問欄に追記しました。 キューブのMesh Rendererの「Additional Settings」の「Motion Vectors」は、[Per Object Motion]に設定されていました。 ビルド形式は、PCのスタンドアローンに設定しています。 >モーションベクター・デプステクスチャ・シェーダーモデル3が使用可能な環境でないといけない こちらの環境というのは、ビルドするプラットフォームのお話ですか? それともUnity開発PCのスペックのお話でしょうか? 開発PCは、下記スペックを使用しています。 Windows 10 Home Intel(R) Core(TM) i7 CPU 870 @2.93GHz メモリ:20.0GB 64ビット SystemInfo.supportsMotionVectorsのログを取ったところ、trueになっていました。 引き続き、もう少し調べたいと思います。 また、何かご助言いただけることがありましたら、よろしくお願い申し上げます。
Bongo

2020/01/30 20:43

スクリーンショットを拝見するかぎり、設定面で問題はなさそうに見えますね... 対応環境については、プレイモードで確認する上では開発用PCの環境となるかと思います(もちろんビルドして実機確認する場合は、実際に動作させるマシンが必要条件を満足している必要があるでしょうが...)。SystemInfo.supportsMotionVectorsがtrueならばおそらく大丈夫だろうと思います。 もしかして実はちゃんとモーションブラーがかかっているんじゃないですかね? 実行時のスクリーンショットだと、キューブの左右のエッジはくっきりしているのに対して上下のエッジは若干ぼけているように見えます。追記で例示しましたように、設定を変えた複数のオブジェクトを並べてみるとどうでしょうか。動かす速さも過剰なぐらいに激しくしてやった方がいいでしょう。 ご質問者さんの環境のフレームレートがかなり高い場合、モーションブラーあり・なしの差が小さくなって効果を発揮していないかのように見えたのかもしれません。フレームレートを落とすと比較しやすいかと思います。
退会済みユーザー

退会済みユーザー

2020/01/31 17:48

ご回答ありがとうございます。 ご指摘いただいた通り、実はモーションブラーがかかっていたことがわかりました。 ありがとうございます、お騒がせしました。 [Additional Settings]を、[Force No Motion]と[Per Object Motion]にそれぞれ設定した2つのキューブオブジェクトを並べて、かなり高速で動かしてみたら、モーションブラーがかかっているものとそうでないものとの差異がわかりました。 思いのほか、けっこう高速にして、Shutter Angleの値も最大にしないと、わかりづらいものですね。 もうちょっと遅いスピードでもブラーが顕著にかかればいいなと思ったのですが、フレームレートを落とすことはあまりしたくないので、モーションブラーとはこういうものと理解したいと思います。 ご教示いただき、大変ありがとうございました。
Bongo

2020/01/31 19:53

Post Processing StackのMotion Blurが映画用カメラで起こるブレをシミュレートしたものだとすると、ぼけ量を最大にしたとしても1フレームで被写体が動いた量以上にぼけることはない...というのは理にかなっているかもしれませんね。 ですが表現上の都合で過剰なブレを発生させたいというケースはありそうです(酔っぱらってフラフラの様子を表現したいとか、オバケのような超常的なキャラクターの演出とか?)。その場合はそういうことができるモーションブラーアセットを探すか、あるいは自前で作るかでしょうかね。 ご自身で作るなら物理的リアリティにとらわれず自由なぼけ幅にできるでしょう。検索してみますと「モーションブラーの実装 - 下町のナポレオン」(http://hikita12312.hatenablog.com/entry/2017/12/21/212641 )のような作例もあり、ご参考になりそうです。 もっとシンプルな手段としては、「イメージエフェクトドリル : カメラブラー - 渋谷ほととぎす通信」(https://www.shibuya24.info/entry/camerablur )のような過去の描画結果と重ね合わせてやる方法もいいんじゃないでしょうか。 この方法単独ですと個々の映像はくっきりしているため、サイトの実演画像のように残像みたいな見え方になりそうです。ですがPost Processing StackのMotion Blurと組み合わせれば、それぞれの映像をブレさせてもっとなめらかにできるかもしれません(なお、Post Processing Stackと旧来のイメージエフェクトを複合させる場合はPost Process Layerの「Directly to Camera Target」をオフにしておく必要があるかと思います)。
退会済みユーザー

退会済みユーザー

2020/02/01 05:39

ご回答ありがとうございます。 ご提示いただいたサイトを拝見させていただきました。 「モーションブラーの実装 - 下町のナポレオン」のサイトの方はリアルに表現できていていいなと思いました。参考にさせていただきます。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問