Unity Asset でパフォーマンス改善系のものはいくつかあると思いますが、そのうちの一つの候補である Amplify Impostors [BETA] を使ってみました。
TL;DR
LOD の遠いところのオブジェクトに使用することで、劇的にパフォーマンスを改善できる可能性がある Asset です。
Amplify Impostors[BETA] とはどういう Asset?
この記事 の説明がとてもわかりやすいです。
複雑な3Dモデルを、ワンクリックで簡単ビルボード!
あらゆる角度からカメラで撮影してくれて、
どの角度から見ても大丈夫になる「だまし絵」のような3Dビルボード化エディタです。
実際に使ってみた
遠くからの見た目
こんな感じになりました。
右が Amplify Impostors [BETA] を使用したものです。しっかり見るとぼやっとしているのがわかりますよね。
とは言えある程度ごまかせるレベルでもあると思います。
こんな感じでシーンは作っています。
真ん中の赤い立方体が、デフォルトの Cube を赤くしたものなので、鳥居のサイズ感と距離が離れているのがわかるかと思います。
(実際の距離は以下写真参照、鳥居のサイズは近くからの見た目のところにあります)
影
影も出ます。上と同じシーンで、カメラの位置を高さ50mにして撮った感じです。
パフォーマンス
だまし絵という言葉通り、劇的な改善が見られます。
項目 | 使用前 | 使用後 | 比 |
---|---|---|---|
Tris | 3.6M | 2.8k | 0.08% |
Verts | 2.1M | 5.8k | 0.27% |
SetPass calls | 34 | 16 | 47.06% |
補足(Statistics)
使用前
使用後
近くからの見た目
こちらが使用前です。近いところの銅鑼の模様などがはっきり鮮明に見えていることがわかります。
こちらが使用後です。近寄ってしまうとぼやぼやしているのがバレバレです。
シーンはこんな感じで作っています。cube の位置がそれぞれのカメラの位置です。
補足
制限
2019/10/22 時点では、以下制限あります。そのためカスタムシェーダーの場合、そもそも使えない可能性もあります。
Technical Considerations
Currently, standard baking is only supported if the shader exposes a Deferred path, such as Unity Standard shaders. However, the Impostors created can be used in both Forward and Deferred modes.
まとめ
使用箇所を考えて使えばとても有用な Asset だと思います。
- 使用すると劇的にパフォーマンスを改善できる可能性がある
- 遠くのオブジェクトに使う分には有用なので、LOD で設定すると良い
- 影もちゃんと出る
- shader に制限がある