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

性能優(yōu)化:(From D3D9 SDK)

常規(guī)技巧

1 只在必須的時候Clear。
   IDirect3DDevice9::Clear函數(shù)通常需要花費(fèi)較多的時間,因此要盡量少調(diào)用,而且只清空的確需要清空的緩存。

2 盡量減少狀態(tài)切換。并且將需要進(jìn)行的狀態(tài)切換組合在一起設(shè)置。
   狀態(tài)包括RenderState,SamplerState,TextureStageState等

3 紋理尺寸盡可能小

4 從前至后渲染場景中的對象
   從前至后渲染可以盡可能早地精選出不需要繪制的對象和象素

5 使用三角條帶代替三角列表和三角扇。為了能更有效利用頂點(diǎn)高速緩存(cache),在排列條帶時因考慮盡快重用頂點(diǎn)。

6  根所需要據(jù)消耗的系統(tǒng)資源來逐步減少特效。

7 經(jīng)常性地檢測程序的性能。
   這樣可以更容易發(fā)現(xiàn)引起性能突變的部分

8 最小化頂點(diǎn)緩存的切換

9 盡可能使用靜態(tài)頂點(diǎn)緩存

10 對靜態(tài)對象,對每種FVF使用一個大的靜態(tài)頂點(diǎn)緩存來保存多個對象的頂點(diǎn)數(shù)據(jù),而不是每個對象使用一個頂點(diǎn)緩存。
   其目的也是減少頂點(diǎn)緩存的切換

11 如果程序需要隨機(jī)訪問AGP內(nèi)存中的頂點(diǎn)緩存,頂點(diǎn)格式的大小最好是32bytes的倍數(shù)。否則,選擇合適的最小的格式。
32bytes 也就是8個float數(shù)據(jù)或2個vector4。

12 使用頂點(diǎn)索引方式渲染,這樣可以更有效利用頂點(diǎn)高速緩存。

13 如果深度緩存格式中包含有模版緩存,總是將兩者一起Clear。

14 將計(jì)算結(jié)果和輸出的shader指令合并:
// Rather than doing a multiply and add, and then output the data with
//   two instructions:
mad r2, r1, v0, c0
mov oD0, r2

// Combine both in a single instruction, because this eliminates an 
//   additional register copy.
mad oD0, r1, v0, c0

建立一個場景對象的數(shù)據(jù)庫,首先使用最低精度的模型,在保證性能的前提下逐步使用更高精度的模型。密切關(guān)注渲染的總的三角面數(shù)。

將使用相同渲染狀態(tài)和貼圖的圖元集中在一起繪制,這樣能盡量減少頂點(diǎn)緩存和狀態(tài)的切換。并且將狀態(tài)切換操作集中成一組設(shè)置。

盡量減少光源數(shù)量,使用環(huán)境光來提高亮度。方向光源比點(diǎn)光源和聚光燈更高效,因?yàn)楣獾姆较蚴枪潭ǖ摹J褂霉庹辗秶鷧?shù)來剔除不受光照影響的物體。鏡面高光幾乎使光照計(jì)算量加倍,因此只在需要時使用,將D3DRS_SPECULARENABLE設(shè)為FALSE,將材質(zhì)的specular power 設(shè)為0,將材質(zhì)的specular color 設(shè)為0。

盡量減小紋理尺寸,這樣可以增加紋理被緩存的可能性。盡量減少紋理的切換,將使用同一紋理的對象集中繪制。盡量使用正方形紋理。最快的紋理是256×256,將4張128×128的紋理拼接成256×256使用。

連接World-View Matrix, 將ViewMatrix設(shè)為Identity減少矩陣乘法運(yùn)算。

動態(tài)紋理。首先要檢查D3DCAPS2_DYNAMICTEXTURES來判斷硬件是否支持。
其二,動態(tài)紋理不能放在MANAGED pool中。動態(tài)紋理總是能鎖定,甚至是在D3DPOOL_DEFAULT中。D3DLOCK_DISCARD是合法的。
DrawProceduralTexture(pTex)
{
    // pTex should not be very small because overhead of
    //   calling driver every D3DLOCK_DISCARD will not
    //   justify the performance gain. Experimentation is encouraged.
    pTex->Lock(D3DLOCK_DISCARD);
    <Overwrite *entire* texture>
    pTex->Unlock();
    pDev->SetTexture();
    pDev->DrawPrimitive();
}

當(dāng)需要在每幀里鎖定頂點(diǎn)或索引緩存是,應(yīng)該使用動態(tài)緩存(D3DUSAGE_DYNAMIC)。對動態(tài)緩存使用D3DLOCK_DISCARD鎖定能減少延遲。D3DLOCK_NOOVERWRITE鎖定可以用于在緩存空閑處添加新的數(shù)據(jù)而不修改已經(jīng)寫入的數(shù)據(jù)。

使用Effect時,應(yīng)該根據(jù)Effect,然后根據(jù)Technique來安排渲染順序,也就是使用相同Effect和Technique的物體應(yīng)該集中繪制。這樣可以減少狀態(tài)切換開銷。

posted on 2007-06-04 12:57 隨便寫寫 閱讀(1372) 評論(1)  編輯 收藏 引用

評論

# re: 性能優(yōu)化:(From D3D9 SDK) 2014-12-25 16:00 陳默

LZ威猛哦!  回復(fù)  更多評論   


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


導(dǎo)航

<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

統(tǒng)計(jì)

常用鏈接

留言簿(1)

隨筆分類(30)

隨筆檔案(16)

文章分類(18)

文章檔案(9)

鏈接

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国内精品久久久久影院色| 欧美午夜激情小视频| 欧美日韩国产免费| 狠狠综合久久av一区二区老牛| 日韩视频免费| 欧美电影美腿模特1979在线看 | 欧美午夜www高清视频| 亚洲国产精品高清久久久| 久久久久久久久久久久久女国产乱| 99精品久久| 欧美日韩黄色大片| 亚洲成色777777女色窝| 久久欧美中文字幕| 欧美在线|欧美| 国产在线乱码一区二区三区| 欧美在线视频一区| 亚洲欧美伊人| 国产精品夜夜夜| 久久国产精品久久国产精品| 欧美一级片一区| 国产区精品视频| 99ri日韩精品视频| 亚洲理伦电影| 欧美视频一区在线| 亚洲天天影视| 亚洲一区精品视频| 国产九区一区在线| 欧美在线观看视频在线| 欧美影视一区| 永久555www成人免费| 欧美激情久久久久| 欧美日本久久| 午夜精品福利电影| 久久久久久91香蕉国产| 亚洲国产成人不卡| 亚洲国产网站| 欧美午夜精品久久久久久人妖| 99在线观看免费视频精品观看| 亚洲人成高清| 国产精品永久免费| 欧美91福利在线观看| 欧美日韩国产一区二区三区地区| 亚洲午夜电影网| 久久av一区二区三区| 亚洲黄网站黄| 中日韩高清电影网| 精东粉嫩av免费一区二区三区| 亚洲春色另类小说| 国产精品久久99| 欧美成人有码| 国产免费一区二区三区香蕉精| 美女精品在线观看| 国产精品久久二区| 欧美不卡福利| 国产精品日韩在线一区| 欧美大片在线影院| 国产乱码精品一区二区三| 欧美搞黄网站| 国产伊人精品| 久久国产精品久久w女人spa| 性做久久久久久免费观看欧美| 欧美激情二区三区| 亚洲国产精品久久人人爱蜜臀| 狠狠噜噜久久| 久久久久久69| 免费成人高清| 亚洲国产一区二区精品专区| 久久久久久久久综合| 久久夜色精品亚洲噜噜国产mv| 国产乱肥老妇国产一区二| 亚洲视频一区二区| 亚洲影视在线| 国产精品久久久久毛片大屁完整版 | 激情欧美丁香| 久久www成人_看片免费不卡| 久久久久久久一区| 激情欧美一区二区| 卡一卡二国产精品| 欧美激情一区二区三区在线| 亚洲日本欧美在线| 欧美精品一区二区三区很污很色的| 亚洲高清123| 夜夜嗨av一区二区三区四季av | 午夜一级久久| 久久人人97超碰精品888 | 欧美不卡一卡二卡免费版| 欧美成人精品1314www| 91久久国产综合久久91精品网站| 美女亚洲精品| 亚洲人体一区| 性欧美长视频| 黄色综合网站| 欧美国产日韩亚洲一区| 夜夜嗨av一区二区三区四季av| 亚洲欧美不卡| 韩国欧美国产1区| 欧美大片免费久久精品三p| 亚洲毛片播放| 久久久久久精| 亚洲精品老司机| 国产精品视频网址| 久久疯狂做爰流白浆xx| 亚洲激情午夜| 先锋影音久久| 亚洲电影免费在线观看| 欧美日韩视频免费播放| 欧美一级欧美一级在线播放| 欧美电影免费| 午夜精品久久久| 亚洲激情在线| 国产欧美日韩专区发布| 蜜臀av在线播放一区二区三区| 夜夜爽www精品| 免费成人高清视频| 亚洲欧美日韩中文在线制服| 亚洲高清免费在线| 国产精品综合不卡av| 欧美激情第三页| 欧美在线视频一区二区| 日韩亚洲欧美一区二区三区| 久久看片网站| 亚洲欧美精品伊人久久| 亚洲韩国精品一区| 国产性天天综合网| 欧美午夜宅男影院在线观看| 久久综合精品一区| 午夜精品亚洲一区二区三区嫩草| 欧美激情精品久久久久久蜜臀| 午夜久久久久久| 亚洲天堂免费在线观看视频| 亚洲国产精品日韩| 国产综合色一区二区三区 | 亚洲欧美乱综合| 日韩视频永久免费观看| 欧美风情在线观看| 久久视频一区二区| 久久大香伊蕉在人线观看热2| 一本色道久久综合亚洲精品婷婷| 亚洲成人在线免费| 黄色在线一区| 狠狠88综合久久久久综合网| 国产欧美另类| 国产欧美精品一区二区色综合| 欧美视频在线观看 亚洲欧| 欧美区在线播放| 欧美精品在线一区| 欧美连裤袜在线视频| 欧美黄色一区| 欧美日本亚洲视频| 欧美劲爆第一页| 欧美久久电影| 欧美日韩一二区| 欧美午夜在线一二页| 欧美天堂亚洲电影院在线观看 | 欧美一区=区| 亚洲免费中文| 欧美在线国产| 老司机成人在线视频| 老司机精品视频一区二区三区| 久色成人在线| 欧美激情视频一区二区三区不卡| 欧美大片第1页| 欧美日韩精品免费看| 国产精品成av人在线视午夜片| 国产精品久久久久久久午夜| 国产精品综合不卡av| 黄色精品在线看| 亚洲人成免费| 亚洲综合色激情五月| 久久国产精品99久久久久久老狼| 久久久久久久久久看片| 欧美成年人网| 99亚洲精品| 午夜在线一区二区| 免费毛片一区二区三区久久久| 欧美精品亚洲一区二区在线播放| 国产精品久久久免费| 国内外成人免费激情在线视频 | 欧美国产免费| 国产精品h在线观看| 国内成人精品2018免费看| 亚洲第一黄色| 亚洲女同同性videoxma| 老色鬼精品视频在线观看播放| 亚洲国产精品成人精品| 亚洲夜间福利| 免费观看欧美在线视频的网站| 欧美性开放视频| 永久免费精品影视网站| 亚洲图片在区色| 老司机精品福利视频| 亚洲美女黄网| 久久免费高清视频| 国产精品成人国产乱一区| 亚洲福利视频一区| 香蕉久久夜色| 亚洲黄色精品| 久久人人爽人人爽爽久久| 国产精品久久一级| 亚洲欧洲日本一区二区三区|