この記事でのバージョン Unity 2018.2.17f1 はじめに UnityでUIを実装するための機能であるuGUIは、以下のような仕組みを持っています。 どうもCanvasは一度Canvas内のUI(CanvasRenderer)を収集しビルドする(一つのメッシュ化する)事でパフォーマンスの最適化を図っているらしく、1個でもUIが動くとCanvas内のUIを再収集して作り直し…といった事を行うみたいです。このため、常に動いているUIが含まれている場合、これが高いコストになるケースが有ります。 つまり、uGUIはCanvas単位で最適化を行っているので、 「ショップUIもバトルUIもポーズUIも全て同じCanvas内に配置」し、 「そのCanvasのUIを頻繁に動かしたり、変更したりする」みたいな状況だと重くなります。 逆に言うとCanvasを適宜分割したり、UIの変化を抑えたり、 頻