Unity CombineMesh 優化實測:Batches 106→22,FPS 翻倍的原因與 Dynamic Batching 陷阱
在戰棋戰鬥場景裡,移動格網(MoveGrid)由大量 Sprite 組成,每個格子背後可能有 back、deco、sr 等多個 SpriteRenderer。這次做了一個 bake 功能,把這些 Sprite 靜態合併成單一 mesh,結果出現了一個值得記錄的反直覺現象。
數據對照
| 指標 | bake-off | bake-on | 差異 |
|---|---|---|---|
| CPU main | 25.1ms | 11.1ms | −14ms |
| FPS | 39.8 | 90.1 | 2.3× |
| Batches | 106 | 22 | −84 |
| Render thread | 4.9ms | 4.6ms | 幾乎不變 |
| SetPass calls | 67 | 67 | 不變 |
bake-off




