BLOGブログ

2024.01.03UE/ Sequencer

[UE5] スケーラビリティとDOFのボケについて

執筆バージョン: Unreal Engine 5.3

皆様こんにちは。

カメラのDOFの値を調整している時に、設定したはずなのにボケがズレてしまう、といった体験をしたことがありますでしょうか?
ゲームをプレイしたときと、作業中とでボケの見た目が違うといったこともあるかもしれません。

 

これは原因としては、スケーラビリティとスクリーンサイズによるものです。

 

以下は比較のスクリーンショットです。
フルスクリーンと小さいスクリーンサイズの時、またスケーラビリティのポストプロセスをEpicとMediumで比較しています。

 

▼エピックの場合はフルスクリーンでも小さいスクリーンサイズの時でもボケに変化はほとんどありません。

▼以下はスケーラビリティをポストプロセスのみMediumにした状態です。

ちょうど手前のボケが始まる部分で画面サイズによる差異が発生しています。
またボケの遷移がなだらかではなく、ボケはじめ部分のメッシュのエッジが目立っていたりします。

 

カメラの画角によっては手前だけではなく、奥のボケに大きな差異が発生する場合もあります。
▼以下は画角がかなり広角になっている場合です。(Focal Length 18)

これらは残念ながら仕様のようです。
スケーラビリティがEpicよりも低い場合、ボケのための畳み込み処理が実行されない部分が出てくるようです。

エディタのスケーラビリティ設定がEpicよりも下になっている場合、作業しているスクリーンサイズによってボケが違うように見えてしまいます。

また、ゲームの実行中にスケーラビリティがかかるように設定している場合はエディタとの見た目と異なってきてしまう可能性があります。

 

せっかくいい感じにボケを設定したのにいざプレイしたら見た目が違う!
ということにならないように、実際のゲームのスケーラビリティと、エディタの作業画面のスケーラビリティができるだけ一致するように設定しておきましょう。