這篇文章主要講解了“怎么理解游戲的Draw Calls”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么理解游戲的Draw Calls”吧!
Draw Calls是什么?
Draw Call僅僅是一條指令。Draw Call指令從CPU傳到GPU,渲染一個(gè)網(wǎng)格。指令只指向一個(gè)被渲染的網(wǎng)格并且不包含任何材質(zhì)信息。渲染就是在做一個(gè)巨大數(shù)量的小任務(wù),比如計(jì)算成千上萬(wàn)的頂點(diǎn)和在屏幕上繪制以百萬(wàn)計(jì)的像素。每個(gè)用不同的材料的網(wǎng)格都需要一個(gè)單獨(dú)的Draw call。
那接下來(lái)我們用unity本身自帶的工具來(lái)實(shí)現(xiàn)。
首先新建一個(gè)項(xiàng)目,導(dǎo)入四張圖片。并將其轉(zhuǎn)換成 Sprite精靈。
把四張圖片添加到場(chǎng)景中,適當(dāng)合理布局,運(yùn)行場(chǎng)景,打開 Game 窗口的 Stats,此時(shí)的 Batches為6,由于 Main Camera、平行光 和四張 Sprite的存在,所以為6。
在頂部菜單欄 Window - Sprite Packer,點(diǎn)擊打開,由于Unity高版本已經(jīng)禁用該功能(似乎Sprite Altas 代替),進(jìn)行設(shè)置,使用 Sprite Packer 該功能。
設(shè)置為always Enabled
選中四張 Sprite,把他們的 Packing Tag 統(tǒng)一設(shè)置為 myTextures(名字隨意取),便于后面打包到在一起。
使能Sprite Packer功能之后,再次頂部菜單欄 Window - Sprite Packer,點(diǎn)擊打開,點(diǎn)擊 pack,即可把四張圖打包在一起。
再次運(yùn)行場(chǎng)景,場(chǎng)景中的游戲物體依然是之前的6個(gè),但是Batches已經(jīng)變?yōu)?了,具體如下圖,是由于 Sprite Packer,把四張Sprite圖,打包在一起的緣故,如果更多的Sprite打包,性能優(yōu)化效果更明顯。
感謝各位的閱讀,以上就是“怎么理解游戲的Draw Calls”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么理解游戲的Draw Calls這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
標(biāo)題名稱:怎么理解游戲的DrawCalls-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://www.chinadenli.net/article30/doeppo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、搜索引擎優(yōu)化、網(wǎng)站排名、微信公眾號(hào)、App設(shè)計(jì)、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容