Unity 富文字頂點數優化

2021-08-21 17:10:22 字數 1664 閱讀 8133

ugui的text元件勾選rich text核取方塊後支援富文字,當文字中的富文字標籤非常多時,會發現三角面和頂點數會非常多,而實際顯示的文字會很少,頂點數有時會多到報錯。

原因:乙個字元會生成6個頂點,6個頂點構成2個三角面,text會把富文字標籤也進行計算,所以我們需要把text元件下,將重複的三角面過濾掉

unity5.5版本以前還存在foreach迭代操作問題,會產生堆記憶體分配。不過5.5說明中說已經修復了該問題。

unity5.5以前版本:優化**

using system.collections.generic;

using system.linq;

using unityengine;

using unityengine.ui;

public class uivertexoptimize : basemesheffect

class ********compare : iequalitycomparer

public int gethashcode(******** obj)

int getuivertexhashcode(uivertex vertex)

bool uivertexequals(uivertex x, uivertex y)

}listverts = new list();

listtris = new list();

public override void modifymesh(vertexhelper vh)

void optimizevert(ref listvertices)

for (int i = 0; i <= vertices.count - 3; i += 3));}

vertices.clear();

vertices.addrange(tris.distinct(new ********compare()).selectmany(t => new

));tris.clear();}}

unity5.5及之後版本:優化text

using system.collections.generic;

using system.linq;

using unityengine;

using unityengine.ui;

public class uivertexoptimize : basemesheffect

listverts = new list();

public override void modifymesh(vertexhelper vh)

void optimizevert(ref listvertices));}

vertices = tris.distinct().selectmany(tri =>

new).tolist();}}

富文字ZSSRichTextEditor之趟坑集錦

富文字zssrichtexteditor是ios原生與網頁互動的集大成者,各種互動。自然問題也是多多,這篇文文章陸續更新遇到的奇葩問題。1.問題1 從頭條這種文章裡頭複製貼上的文章,裡邊有,我們需求並不需要,如何過濾?幹了客戶端,一開始額思路,總想從客戶端的webview裡頭找出路,忙活半天,並未發...

ios開發 富文字

富文字屬性attributes 1 nsfontattributename 設定字型字型大小 2 nsforegroundcolorattributename 設定文字顏色 3 nskernattributename 設定字元間距 4 nsparagraphstyleattributename 設定...

富文字的使用

一,理解 對於以前,我們用label進行新增文字的時候,只是在 label的本身上新增,從來沒有考慮過其他的方式,今天呢,由於我看了別人的一片技術部落格,有感所以就記錄了下來,希望能夠幫助到那些有需要的人 不帶段落分析的 如下 nsstring str 也許我們的心裡藏有乙個海洋,流出來的卻是兩行清...