AndroidでBlendShapeの負荷を計測してみた

BlendShapeはCPUでメッシュ頂点変形してそれをGPUに送るような気がするので一見するとパフォーマンスは悪いように思えます。

というわけでUnity2019.3.0b、Nexus5Xでprofileしてみましょう。vroidでface部分2339頂点、3150△。1、10ボタンは毎フレーム更新するblendshape idx数。Button押すとBlendShapeありモデルと無しモデルを切り替えます。

スポンサーリンク

結果

違いが…分からない。誤差レベルで何も起きません…さすがにこの程度ではBlendShapeの有無はなんの影響もないか…

再挑戦

10倍にしてみました。総頂点数は20万におよびます。

『禍つヴァールハイト』モバイルにおけるプレイヤー最大100体同時表示可能なグラフィックス最適化について

ちょうど 禍つヴァールハイト の最低頂点数がこのくらいです。これならどうでしょうか?

結果2

違いが…わかりません。少なくとunity profiler上ではボトルネックは見当たりませんでした。

古い記事ですが、こちらでもパフォーマンスに違いがみられないとありました。(ただこのスライド測定環境が怪しいんだよな…Standalone Editorじゃないかな?

まとめ

とりあえずBlendShapeガンガン使っていってよさそう?開発していってパフォーマンス上のペナルティ見つけたらまた更新します