青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

永遠(yuǎn)也不完美的程序

不斷學(xué)習(xí),不斷實(shí)踐,不斷的重構(gòu)……

常用鏈接

統(tǒng)計(jì)

積分與排名

好友鏈接

最新評(píng)論

優(yōu)化3D圖形渲染通道負(fù)載

一般來說, 定位渲染通道瓶頸的方法就是改變渲染通道每個(gè)步驟的工作量, 如果吞吐量也改變了, 那個(gè)步驟就是瓶頸.。找到了瓶頸就要想辦法消除瓶頸, 可以減少該步驟的工作量, 增加其他步驟的工作量。

   一般在光柵化之前的瓶頸稱作”transform bound”, 三角形設(shè)置處理后的瓶頸稱作”fill bound”定位瓶頸的辦法:

   1.改變幀緩沖或者渲染目標(biāo)(Render Target)的顏色深度(16 到 32 位), 如果幀速改變了, 那么瓶頸應(yīng)該在幀緩沖(RenderTarget)的填充率上。

   2.否則試試改變貼圖大小和貼圖過濾設(shè)置, 如果幀速變了,那么瓶頸應(yīng)該是在貼圖這里。

   3.否則改變分辨率.如果幀速改變了, 那么改變一下pixel shader的指令數(shù)量, 如果幀速變了, 那么瓶頸應(yīng)該就是pixel shader. 否則瓶頸就在光柵化過程中。

   4.否則, 改變頂點(diǎn)格式的大小, 如果幀速改變了, 那么瓶頸應(yīng)該在顯卡帶寬上。

   5.如果以上都不是, 那么瓶頸就在CPU這一邊。

   優(yōu)化方法36條:

   1.盡量減少無用的頂點(diǎn)數(shù)據(jù), 比如貼圖坐標(biāo), 如果有Object使用2組有的使用1組, 那么不 要將他們放在一個(gè)vertex buffer中, 這樣可以減少傳輸?shù)臄?shù)據(jù)量。

   2.使用多個(gè)streamsource, 比如SkinMesh渲染, 可以把頂點(diǎn)坐標(biāo)和法線這些每一幀都要修改的數(shù)據(jù)放在一個(gè)動(dòng)態(tài)VB中, 其它不需要修改的(如貼圖坐標(biāo))放到一個(gè)靜態(tài)VB中, 這樣就減少了數(shù)據(jù)傳輸量。

   3.盡量使用16位的索引緩沖,避免32位的. 一方面浪費(fèi)帶寬, 一方面也不是所有的顯卡都支持32位的索引緩沖。

   4.可以考慮使用vertex shader來計(jì)算靜態(tài)VB中的數(shù)據(jù).比如SkinMesh的頂點(diǎn)可以放到vectex shader中計(jì)算, 這樣就可以避免每一幀都從AGP內(nèi)存中向顯存?zhèn)魉蛿?shù)據(jù). 這樣也可以使用靜態(tài)VB了。

   5.堅(jiān)決避免使用Draw**UP一族的函數(shù)來繪制多邊形。

   6.在設(shè)計(jì)程序之前好好規(guī)劃一下顯卡內(nèi)存的使用, 確保framebuffer, 貼圖, 靜態(tài)VB能夠正好放入顯卡的本地內(nèi)存中。

   7.盡量使頂點(diǎn)格式大小是32字節(jié)的倍數(shù).可以考慮使用壓縮過的頂點(diǎn)格式然后用vertex shader去解. 或者留下冗余的部分, 使頂點(diǎn)大小剛好使32字節(jié)的倍數(shù)。

   8.頂點(diǎn)在頂點(diǎn)緩沖中的順序盡量符合繪制的順序, 考慮使用strips來代替list。

   9.如果可能盡量多的使用static vertex buffer代替dynamic vertex buffer。

   10.動(dòng)態(tài)VB使用DISCARD參數(shù)來lock更新, 使用NOOVERWRITE來添加.盡量不要使用不帶參數(shù)的lock調(diào)用(0)。

   11.盡量減少lock的次數(shù), 有些東西并不一定非要每一幀都更新VB, 比如人物動(dòng)畫一般每秒鐘更新30次VB基本上就夠了。

   12.如果是因?yàn)樾枰L制的頂點(diǎn)數(shù)據(jù)太多了可以考慮使用LOD, 但是現(xiàn)在的顯卡的繪制能力都很強(qiáng)勁, 所以需要權(quán)衡一下LOD是否能夠帶來相應(yīng)的好處, 如果過分的強(qiáng)化LOD很可能將瓶頸轉(zhuǎn)移到CPU這邊。

   13.避免過多的頂點(diǎn)計(jì)算,比如過多的光源, 過于復(fù)雜的光照計(jì)算(復(fù)雜的光照模型), 紋理自動(dòng)生成的開啟也會(huì)增加頂點(diǎn)的計(jì)算量. 如果貼圖坐標(biāo)變換矩陣不是單位矩陣, 也會(huì)造成頂點(diǎn)計(jì)算量的增加, 所以如果紋理變換已經(jīng)結(jié)束, 記得要將紋理變換矩陣設(shè)為單位矩陣同時(shí)調(diào)整貼圖坐標(biāo)。

   14.避免Vertex shader指令數(shù)量太多或者分支過多, 盡量減少vertex shader的長度和復(fù)雜程度. 盡量使用swizzling代替mov。

   15.如果圖象質(zhì)量方面的計(jì)算(pixel shader)范圍很大, 并且很復(fù)雜, 可以考慮試試全屏反走樣。說不定更快。

   16.盡量按照front – back的順序來繪制。

   17.在shader中判斷Z值可以避免繪制不可見的象素, 但是nvidia建議簡單的shader不要這么做.(Don't do this in a simple shader)。

   18.如果可能, 盡量使用vertex shader來代替pixel shader.將計(jì)算從逐象素變成逐頂點(diǎn)。

   19.盡量降低貼圖的大小.過大的貼圖可能造成貼圖cache過載, 從而導(dǎo)致貼圖cache命中降低.過大的貼圖會(huì)導(dǎo)致顯存過載, 這時(shí)候貼圖是從系統(tǒng)內(nèi)存中取的。

   20.只要可能就用16位色的貼圖, 如環(huán)境貼圖或者shadow map.它們用32位色的貼圖實(shí)在是浪費(fèi)。

   21.考慮使用DXT 貼圖壓縮。

   22.如果可能,使用簡單的貼圖過濾或者mip map, 除非必要否則盡量不要使用三線過濾和各項(xiàng)異性過濾. light map 和 環(huán)境貼圖基本上都不需要使用它們。

   23.只有真正需要修改的貼圖才使用Dynamic, 并且使用DISCRAD和WRITEONLY來lock。

   24.太多的幀緩沖讀寫可以考慮關(guān)閉Z-Writes如有些多pass的渲染中的后續(xù)pass或者粒子系統(tǒng)等半透明幾何物體(如果可以)。

   25.可能的話盡量使用alpha test代替alpha blending。

   26.如果不需要stencil buffer就盡量使用16位的Z buffer。

   27.減小RenderTarget 貼圖的大小, 如shadow map 環(huán)境貼圖. 可能根本不需要那么大效果就很好。

   28.Stencil 和 Z buffer 盡量一起clear. 他們本來就是一塊緩沖。

   29.盡量減少渲染狀態(tài)的切換, 盡量一次畫盡可能多的多邊形。(根據(jù)顯卡性能決定最多畫多少, 不過一般再多也不會(huì)多到哪里去。 除非你根本不需要貼圖和渲染狀態(tài)的切換)。

   30.盡量使用shader來代替Fixed Pipeline。

   31.盡量使用shader來實(shí)現(xiàn)來取代Multipass渲染效果。

   32.盡量優(yōu)先先建立重要的資源, 如Render target, shaders, 貼圖, VB, IB等等.以免顯存過載的時(shí)候它們被創(chuàng)建到系統(tǒng)內(nèi)存中。

   33.堅(jiān)決不要在渲染循環(huán)中調(diào)用創(chuàng)建資源。

   34.按照shader和貼圖分組后再渲染.先按照shaders分組再按貼圖。

   35.Color Stencil Z buffer盡量在一次Clear調(diào)用中清除。

   36.一個(gè)Vertex buffer 的大小在2M-4M之間最好。(中國軟件)

posted on 2008-08-25 09:00 狂爛球 閱讀(391) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 圖形編程

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美视频在线观看| 久久精彩视频| 99天天综合性| 欧美在线亚洲综合一区| 亚洲第一网站| 国产亚洲精品一区二555| 欧美日韩精品高清| 欧美高清在线视频| 免费欧美在线视频| 久久免费视频一区| 久久精品观看| 久久精品在线观看| 欧美一区二区成人| 午夜欧美电影在线观看| 亚洲素人在线| 亚洲综合色丁香婷婷六月图片| 久久精品最新地址| 好吊日精品视频| 国产精品久久九九| 欧美日本在线看| 宅男噜噜噜66国产日韩在线观看| 中文欧美在线视频| 在线视频欧美精品| 9色精品在线| 在线视频欧美日韩精品| 中文av一区特黄| 性久久久久久久久久久久| 亚洲欧美日韩成人| 一区二区精品国产| 亚洲综合三区| 久久久综合免费视频| 国产美女精品免费电影| 久久精品国产综合| 亚洲精品日韩在线| 亚洲福利视频免费观看| 久久免费高清| 欧美99在线视频观看| 欧美国产日韩xxxxx| 亚洲黑丝在线| 蜜臀av性久久久久蜜臀aⅴ四虎| 美国成人毛片| 亚洲人成人77777线观看| 欧美福利电影网| 9i看片成人免费高清| 国产精品欧美久久| 国产精品一区三区| 国产九九精品| 亚洲黑丝在线| 亚洲欧美一区二区原创| 亚洲网站在线播放| 久久久夜精品| 亚洲乱码国产乱码精品精天堂| 亚洲精品中文字幕女同| 国产精品高精视频免费| 国产精自产拍久久久久久蜜| 一区二区三区在线观看欧美| 在线视频日本亚洲性| 久久不射电影网| 亚洲日本一区二区| 久久久亚洲国产天美传媒修理工| 国产日本欧美一区二区三区在线| 亚洲少妇中出一区| 亚洲三级免费| 欧美日韩免费在线| 亚洲一区二区三区精品视频| 日韩亚洲国产精品| 欧美日韩在线直播| 亚洲免费在线视频| 亚洲欧美韩国| 国产一区观看| 欧美mv日韩mv亚洲| 另类专区欧美制服同性| 亚洲激情欧美| 亚洲精品欧洲| 国产精品嫩草99av在线| 欧美一区二区三区免费观看视频| 亚洲欧美日韩天堂| 国内揄拍国内精品久久| 欧美成人午夜| 欧美日韩免费看| 香蕉久久一区二区不卡无毒影院| 香蕉久久夜色精品| 亚洲二区免费| 99国产精品久久久久老师| 国产精品欧美日韩一区| 久久久亚洲国产美女国产盗摄| 久久久久久欧美| 亚洲日本中文字幕| 女同一区二区| 亚洲影院免费| 激情亚洲成人| 亚洲破处大片| 国产欧美一区二区三区在线看蜜臀| 欧美有码在线观看视频| 久久久久久亚洲精品中文字幕| 亚洲激情在线| 亚洲一区精品视频| 亚洲激情视频在线播放| 亚洲精品专区| 在线播放不卡| 中文精品99久久国产香蕉| 黄色一区二区在线| 亚洲美女尤物影院| 亚洲欧美日韩精品一区二区| 久久夜色精品国产亚洲aⅴ| 亚洲久久视频| 欧美一站二站| 99热在这里有精品免费| 欧美有码在线观看视频| 99热这里只有精品8| 欧美一区二区久久久| 在线视频免费在线观看一区二区| 久久国产精品久久精品国产| 亚洲图片欧美日产| 欧美电影免费观看高清完整版| 欧美一区二区三区婷婷月色 | 久久人人九九| 亚洲欧美成aⅴ人在线观看| 久色婷婷小香蕉久久| 欧美一区激情| 欧美午夜在线观看| 欧美成人亚洲成人日韩成人| 国产人成精品一区二区三| 99精品热6080yy久久 | 久久中文在线| 欧美影院成人| 国产精品免费看| 亚洲欧洲日本专区| 影音先锋亚洲视频| 欧美在线播放| 久久大逼视频| 国产午夜精品久久久| 亚洲一区在线视频| 免费久久精品视频| 国产在线精品自拍| 欧美日韩精品中文字幕| 久久综合精品国产一区二区三区| 欧美四级剧情无删版影片| 亚洲精品一区在线| 一区二区不卡在线视频 午夜欧美不卡在| 久久久久久综合网天天| 另类春色校园亚洲| 在线成人国产| 久久综合999| 欧美福利影院| 亚洲韩国日本中文字幕| 欧美成人午夜影院| 亚洲精品视频在线看| 亚洲最新色图| 国产精品久久久久99| 亚洲欧美国产va在线影院| 性欧美videos另类喷潮| 国产农村妇女毛片精品久久麻豆| 亚洲一区二区三区久久| 免费在线观看成人av| 欧美日韩亚洲一区二区| 亚洲第一久久影院| 亚洲福利在线看| 一区二区三区产品免费精品久久75| 美女网站久久| 91久久在线观看| 在线视频精品一| 欧美新色视频| 亚洲综合色噜噜狠狠| 久久精品日产第一区二区| 精品成人久久| 欧美日韩国产影片| 欧美一级视频免费在线观看| 欧美91视频| 亚洲综合社区| 亚洲黄色在线| 国产精品区一区二区三| 老巨人导航500精品| 国产女优一区| 麻豆精品一区二区av白丝在线| 欧美午夜片在线免费观看| 亚洲尤物视频网| 欧美黄色aa电影| 亚洲在线视频网站| 在线日韩av片| 国产精品久久久久天堂| 老司机午夜精品视频在线观看| 亚洲免费福利视频| 欧美成人精精品一区二区频| 亚洲午夜视频在线| 亚洲国产黄色片| 国产区亚洲区欧美区| 欧美日韩国产区一| 裸体一区二区| 欧美在线国产精品| 亚洲视频在线一区| 亚洲国产成人不卡| 久久天天躁夜夜躁狠狠躁2022| 亚洲一区二区三区在线看| 亚洲经典自拍| 在线成人中文字幕| 黄色成人免费观看| 国产亚洲精品高潮| 国产精品入口日韩视频大尺度| 欧美深夜福利|