原文:UGUI DrawCall合批細節(一)——合批的規則

UGUI在合批之前,會根據ui的Depth MatID ImgID RendererOrder進行排序,之后對相鄰的UI進行檢測,判斷ImgID和MatID是否相同,如果相同則可以進行合批處理,如果這兩個UI的MatID和ImgID都相同,但是不連續,中間有其他不同MatID或ImgID的UI則會打斷合批。 Depht排序: 先篩選掉Depht為 的值,這部分默認不渲染 接着判斷是否該元素底部是 ...

2020-10-22 16:22 0 1329 推薦指數:

查看詳情

UGUI DrawCall細節(二)——Mask影響

UGUI的開發中我們常談少用Mask,但是為什么少用,用了Mask又會影響什么呢,今天我們就來簡單說說。 (一)被mask的元素為什么不能和外部元素 首先我們先來聊聊mask的實現,我們簡單搭建一個測試場景 會發現多了一個mask會多出 ...

Mon Oct 26 22:53:00 CST 2020 0 425
UGUI DrawCall細節(三)——RectMask2D與Mask的區別及選擇

RectMask2D 那我們同比分析一下UI上常用的第二個Mask組件RectMask2D,等同於Mask的測試場景,我們測試單個mask2D開啟和關閉對drawCall的影響。 開啟前: 開啟后: 我們可以發現DrawCall只增加了一個,因為內部的元素無法和外部進行增加了 ...

Tue Oct 27 19:21:00 CST 2020 0 632
是什么?為什么可以減少Drawcall?有什么方法?

發現自己只是知道怎么用,是可以減少drawcall,但卻不知道這些底層的機制是怎么樣的,為什么可以減少drawcall?這可是犯了大忌!決定潛心學習研究一下,在此記錄。 首先什么是,也可以叫做批量渲染。就是通過減少CPU向GPU發送渲染命令(DrawCall)的次數 ...

Mon Mar 28 05:42:00 CST 2022 0 2416
UGUI原理筆記

可以通過Frame debugger查看每個drawcall繪制了哪些東西 UGUI源碼下載地址:https://bitbucket.org/Unity-Technologies/ui/downloads/ 本文測試環境:unity2018.2.9f1,基於Unity Editor (PC平台 ...

Wed Sep 26 07:51:00 CST 2018 0 5497
unity 靜態

to different static batches unity有一個枚舉會把不能的原因列出來 這是 ...

Wed Mar 13 19:06:00 CST 2019 0 1360
打斷UGUI的肇事手段RectTransform

我們先搭建一個測試場景 我們可以看到4個but的話是進行只有2個DrawCall,當我們將第二個button的RectTransform的PosZ進行修改 可以發現DrawCall增加了4個,我們通過FrameDebug來查看的過程可以發現 ...

Wed Oct 28 23:58:00 CST 2020 1 387
Unity的UI究竟為什么可以

1.UI/Default代碼研究 首先,我想到的是,既然是對圖集紋理進行采樣,而且又不能統一更改材質的紋理UV值,我們通常寫的shader都是直接根據模型UV值對主紋理進行采樣,那會不會是sha ...

Thu Apr 25 00:14:00 CST 2019 0 657
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM