Unity合批技術

合批:把N個物體合到一起來提交給GPU,GPU一次繪制吱韭,這個過程叫做合批
DrawCall:Cpu給GPU下達一次渲染指令鱼的,叫做DrawCall
批次數(shù)目/Drawcall數(shù)目:提交繪制一個游戲場景痘煤,場景中的物體分幾次提交給GPU進行繪制的次數(shù)

合批常用技術

基本的大原則熏挎,哪些物品會合批:同一材質的物體,有合批的可能

  1. 美術處理:場景美術把場景做到一個物體里面烦磁,或少數(shù)幾個物體里面(把關卡做成一個fbx模型)

  2. 靜態(tài)合批
    游戲引擎將“能夠合批”(同一材質球)的“靜態(tài)物體”(標記為靜態(tài)不可移動的物體)哼勇,合到一起,提交給GPU陨晶,預先合并好這些靜態(tài)物體成一個整體網格帝璧,提交給GPU渲染

    局限性:a物體時靜態(tài)的
    b預先計算好合并整體網格,增加合并后的內存開銷
    c把所有的網格合并到一起褐耳,1000個樹渴庆,合并之后,會有1000個網格刃滓,內存暴漲耸弄,不合并的話,只需要1個網格
    CPU的開銷和drawcall減少得到我們性能提升之間來做平衡
    d具有相同的實例的材質球

  1. 動態(tài)合批
    游戲引擎將“能動態(tài)合批的”(同一材質球)的物體的每個頂點老客,CPU根據(jù)它的矩陣震叮,來計算合批物品的每個頂點對應的世界空間的坐標,然后就把這些物體的頂點(世界空間的頂點)+單位矩陣提交個GPU苇瓣,GPU就會一起把他們繪制出來
    (基于世界空間的坐標系,我們重新給這些動態(tài)合批的物體來重新建模哲嘲,所有的頂點+材質給GPU繪制)

    動態(tài)合批是一個雙刃劍 CPU消耗運算性能(需要CPU把頂點轉到世界空間下,非動態(tài)合批時GUP轉換的)画切,但可以帶來性能提升囱怕,使用時,需要關注一下
    動態(tài)合批的限制:頂點數(shù)目不應過多典格,倆個相同的物體台丛,當倆個物體三個軸向的負縮放的個數(shù)為偶數(shù)個時(0,2)時防嗡,可以合批侠坎,當倆個物體中任意一個物體或倆個物體同時三個軸向的負縮放的個數(shù)為奇數(shù)時,不合批
    材質球實例相同
    有光照紋理數(shù)據(jù)硅蹦,必須要相同
    多個Pass的著色器不會被合批
    延遲渲染無法合批

  2. GPU Instancing合批
    本質提交一個物體童芹,GPU繪制出這個物品的N個實列鲤拿,通過GPU里面繪制N次到不同的位置(位置,選擇近顷,縮放)
    1000個小兵,可以在一個批次進行完成

滿足合批的條件缀遍,同一物體饱须,材質球(材質球屬性可不同)
數(shù)量需要小于GPU每次出來的極限
Shader需要開啟GPU Instancing的支持

4.合理安排物品的繪制順序,不要打亂合批
3D物體:引擎自動計算譬挚,盡可能的在3D場景里面使用同一個材質(shader+紋理)
盡可能在同一個渲染隊列里面使用同一個材質
盡可能在3D場景里面使用同一種Shader,不要根據(jù)渲染順序來回切換Shader(Set pass call開銷很大)
2D UI:盡可能安排同一個圖集的物體在一個繪制順利里面

5.將多個物體的紋理合并到一起
游戲物體:將地圖與地圖上的物體盐须,使用同一個紋理

6.手動合并Mesh

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末贼邓,一起剝皮案震驚了整個濱河市屉凯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌晓勇,老刑警劉巖灌旧,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異描融,居然都是意外死亡衡蚂,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門年叮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來只损,“玉大人七咧,你說我怎么就攤上這事“埃” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵蜂林,是天一觀的道長拇泣。 經常有香客問我,道長霉翔,這世上最難降的妖魔是什么债朵? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮臭杰,結果婚禮上谚中,老公的妹妹穿的比我還像新娘。我一直安慰自己磁奖,他們只是感情好某筐,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布南誊。 她就那樣靜靜地躺著,像睡著了一般抄囚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天柑司,我揣著相機與錄音锅劝,去河邊找鬼。 笑死玻粪,一個胖子當著我的面吹牛,可吹牛的內容都是我干的劲室。 我是一名探鬼主播很洋,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼谓苟!你這毒婦竟也來了协怒?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤仑撞,失蹤者是張志新(化名)和其女友劉穎芭商,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體近迁,經...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡鉴竭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年岸浑,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片璧眠。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡责静,死狀恐怖盖桥,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情揩徊,我是刑警寧澤嵌赠,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站熄赡,受9級特大地震影響姜挺,放射性物質發(fā)生泄漏。R本人自食惡果不足惜本谜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一初家、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧乌助,春花似錦溜在、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至赏参,卻和暖如春志笼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背纫溃。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留韧掩,地道東北人紊浩。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像疗锐,于是被迫代替她去往敵國和親坊谁。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內容