SpriteStudio / SS5PlayerForUnity

OPTPiX SpriteStudio 5 Player for Unity

Home Page:http://www.webtech.co.jp/spritestudio/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

v1.3.4 パフォーマンス改善点について

omachi opened this issue · comments

いつもお世話になっております。

IndexVertex += DataPartsNow.Data.InstanceMesh.vertices.Length;

上記リンク先においてMesh.vertices.Lengthとなっている箇所ですが、このような場合はMesh.vertexCountを使うのがGC的にパフォーマンスが上がるようです。
こちらでUnity5.3.4f1のプロファイラにて確認したところ、36フレームごとに起こっていたGC処理が47フレームごとに改善いたしました。
ご検討よろしくお願いいたします。

omachi様

お世話になっております。

レポート、有難う御座います。
当方で検証の後、バージョンアップをさせていただこうと思います。

重ねて、心から御礼申し上げます。

omachi様

お世話になっております。

ご助言頂いた内容を反映させて頂いた他、当該処理(描画マネージャ内MeshCreate関数の処理)で、
・無駄な配列をヒープしていた
・Mesh.trianglesへのアクセスも抑制した
……の改変を行ったことで、ヒープの使用量が1/5程度に軽減されております。

ただ、まだ当該処理でのヒープ使用は完全に0にはできておりませんが、グローバルヒープ量が1/5~1/8程度に低減したため・GCの頻度はかなり下がったと思われます(ただ、当該処理の中で、もう一箇所Mesh.trianglesへのアクセスが存在しており・頂点インデックスを置き換える処理のため一旦今回の改変から除外しております)。

お忙しい中、改善点の的確なアドバイス、心から御礼申し上げます。
今後とも宜しくお願い致します。