UGUI字型優化

2021-09-25 12:43:05 字數 728 閱讀 8783

字型圖集的重建機制:當乙個新文字出現的時候,會被新增到字型圖集,如果圖集已經沒有空餘的地方,那麼圖集會被重建。圖集會以相同的尺寸重建,打包當前啟用的所有ui text元件中要顯示的文字,如果發現圖集尺寸不夠用的時候,圖集會重新擴充尺寸。

後備字型機制:對於字型庫裡沒有的文字,會被放進後備字型圖集裡,後背字型圖集會常駐記憶體裡,不會被銷毀。後備字型取自於系統自帶的系統字型檔arial.ttf,在發布的遊戲安裝包裡該字型檔是不存在的。我們在一些unity開發的遊戲裡,偶爾會發現一些生僻字的字形和其它常見文字的字形不統一。

text的網格重建:text元件被重新啟用的時候,會重建text的網格。如果含有大量的文字,會造成嚴重的cpu開銷。 提前生成動態字型:準備遊戲非常常用的文字集合,通過font.requestcharactersintexture介面提前放入字型圖集裡。注意使用font.texturerebuilt 委託,在字型圖集被重新重建的時候,把我們提前準備的文字集合再次新增進去。

謹慎使用text的best fit選項:雖然這個選項可以動態的調整字型大小以適應ui布局而不會超框,但其代價是很高的,unity會為用到的該元素所用到的所有字型大小生成圖元儲存在圖集裡,不但增加額外的生成時間,還會使得字型對應的圖集變大。 減少長文字text的變動,

慎用ui/effect:描邊和陰影效果都會增大四倍的頂點數

UGUI優化之路 VertexHelper

準備整理和記錄在工作遇到或平時看到的ugui優化思路。希望自己能整理出一整個系列出來。ugui的原始碼網上都有,不會記錄太多本身原理的東西。重點記錄思路和一些ugui本身的坑。每個優化可能都是比較小的,效果不一定是立竿見影,專案中的優化很多時候就在於積少成多。版本 unity 2018.4 在製作一...

UGUI 字型背景尺寸自適應

在ugui裡,我們有時需要做類似對話方塊這種東西,還需要對話方塊可以隨著裡面文字多少,行數的變化,進行拉伸變化。我第一時間想到的解決方案是自己計算對話的char長度,然後動態的去修改背景圖的尺寸,這種方法乍看之下沒有任何問題,但是在實際應用中,發現有致命的缺陷。那就是當對話的文字可能是多語言的時候,...

UGUI優化不全總結

overdraw和wireframe兩個渲染模式可以檢視填充率 ui也是網格,乙個網格的資料將等待gpu呼叫介面繪製乙個drawcall 半透明從後向前渲染,半透明渲染兩次容易造成填充率問題 盡量不要用setactive方法 text的頂點多 材質和精靈一樣可以合批 framedebug視窗顯示渲染...