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

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

常規(guī)技巧

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

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

3 紋理尺寸盡可能小

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

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

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

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

8 最小化頂點緩存的切換

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

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

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

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

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

14 將計算結(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)和貼圖的圖元集中在一起繪制,這樣能盡量減少頂點緩存和狀態(tài)的切換。并且將狀態(tài)切換操作集中成一組設(shè)置。

盡量減少光源數(shù)量,使用環(huán)境光來提高亮度。方向光源比點光源和聚光燈更高效,因為光的方向是固定的。使用光照范圍參數(shù)來剔除不受光照影響的物體。鏡面高光幾乎使光照計算量加倍,因此只在需要時使用,將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減少矩陣乘法運算。

動態(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)需要在每幀里鎖定頂點或索引緩存是,應(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)航

<2006年5月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

統(tǒng)計

常用鏈接

留言簿(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| 久久偷看各类wc女厕嘘嘘偷窃| 国产精品女主播| 一区二区日韩免费看| 国产精品第一区| 最新精品在线| 欧美在线视频播放| 中日韩视频在线观看| 亚洲高清不卡av| 午夜激情综合网| 国内精品久久久久久久影视麻豆| 久久国产精品99精品国产| 欧美在线999| 亚洲精品专区| 亚洲在线观看| 亚洲亚洲精品三区日韩精品在线视频| 久久免费高清| 国产精品九九久久久久久久| 亚洲欧美日韩综合aⅴ视频| 久久久久青草大香线综合精品| 日韩午夜一区| 免费成人美女女| 另类尿喷潮videofree | 中文欧美日韩| 一区二区三区日韩精品| 欧美fxxxxxx另类| 久久影音先锋| 一区二区在线观看av| 亚洲综合色视频| 久久精品道一区二区三区| 欧美午夜视频| 亚洲小视频在线| 亚洲伊人一本大道中文字幕| 欧美日韩亚洲91| 在线视频你懂得一区| 亚洲欧美日韩电影| 国产欧美日本一区二区三区| 亚洲欧美成人综合| 蜜桃av噜噜一区| 亚洲精品日韩一| 国产精品日韩| 久久视频在线免费观看| 亚洲电影av| 亚洲一区二区三区久久| 国产精品国产三级国产普通话99| av成人毛片| 久久精品国产亚洲5555| 亚洲国产精品精华液2区45| 欧美国产高清| 久久er精品视频| 亚洲欧美日韩在线不卡| 欧美/亚洲一区| 性色av一区二区怡红| 亚洲国产视频一区二区| 国产精品午夜久久| 欧美大片在线观看| 一本色道久久88综合亚洲精品ⅰ| 欧美伊人精品成人久久综合97| 狠狠做深爱婷婷久久综合一区| 欧美激情1区2区| 久久一区二区精品| 小处雏高清一区二区三区 | 欧美午夜精品久久久久久人妖 | 久久婷婷影院| 香蕉成人啪国产精品视频综合网| 欧美成人69av| 欧美在线观看一区| 亚洲欧美一区二区三区极速播放| 亚洲国产精品www| 亚洲高清不卡av| 亚洲国产天堂久久综合网| 精品白丝av| 在线不卡中文字幕| 在线观看视频日韩| 尤物yw午夜国产精品视频| 精品动漫3d一区二区三区免费| 欧美连裤袜在线视频| 欧美精品午夜视频| 欧美日韩在线看| 国产欧美日韩一区二区三区| 国产精品日韩一区二区三区| 国产精品亚洲综合一区在线观看| 国产精品99一区| 国产精品手机视频| 国产一二三精品| 亚洲国产精品福利| 亚洲午夜三级在线| 久久婷婷色综合| 一区二区高清视频| 久久久久久久成人| 国产精品系列在线播放| 亚洲大片在线| 午夜视频在线观看一区二区三区 | 国内视频精品| 亚洲在线中文字幕| 欧美激情日韩| 久久国产精品72免费观看| 欧美精品v国产精品v日韩精品| 国产伦精品一区二区三区四区免费 | 99国产精品自拍| 久久亚洲综合| 久久精品欧美日韩精品| 亚洲欧美日韩在线高清直播| 亚洲美女少妇无套啪啪呻吟| 狠狠综合久久av一区二区小说 | 一本一道久久综合狠狠老精东影业 | 欧美大片专区| 亚洲欧美经典视频| 欧美日韩岛国| 一本久久a久久精品亚洲| 欧美激情一二三区| 看片网站欧美日韩| 亚洲伦理一区| 亚洲精选国产| 国产精品免费看久久久香蕉| 中文一区字幕| 亚洲欧美日韩天堂| 国产亚洲午夜高清国产拍精品| 亚欧成人精品| 久久欧美肥婆一二区| 亚洲日韩欧美视频一区| 亚洲精品永久免费精品| 国产精品wwwwww| 久久在线播放| 欧美日韩中国免费专区在线看| 亚洲一区二区三区久久| 校园春色国产精品| 亚洲盗摄视频| 亚洲精品午夜精品| 国产欧美大片| 亚洲人成网站999久久久综合| 国产精品国码视频| 久久亚洲私人国产精品va| 欧美精品一卡| 狂野欧美激情性xxxx欧美| 欧美日韩你懂的| 久久天堂av综合合色| 久久久久国产精品麻豆ai换脸| 99riav1国产精品视频| 欧美影视一区| 久久久999成人| 国产欧美日韩不卡| 亚洲无毛电影| 亚洲一区欧美二区| 欧美丝袜第一区| 一本大道久久a久久精二百| 伊人久久久大香线蕉综合直播 | 久久久久久久网| 久久精品中文字幕免费mv| 国产精品日韩精品| 亚洲免费不卡| 亚洲五月婷婷| 国产精品vvv| 亚洲欧美日韩系列| 久久久999精品视频| 国产主播在线一区| 免费观看日韩| 亚洲午夜av在线| 久久影院午夜论| 日韩午夜电影av| 国产精品一区二区久久精品| 免费人成精品欧美精品| 欧美视频专区一二在线观看| 中日韩高清电影网| 免播放器亚洲一区| 一区二区三区日韩欧美精品| 国产嫩草一区二区三区在线观看 | 久久精品中文字幕免费mv| 免费美女久久99| 欧美一区日韩一区| 亚洲人成网站色ww在线| 欧美日韩久久精品| 开心色5月久久精品| 亚洲在线视频一区| 欧美成人在线网站| 久久精品免费电影| 亚洲一区二区三区高清| 国产日韩欧美一区二区| 亚洲国产精品一区二区www| 亚洲欧洲在线视频| 久久久青草婷婷精品综合日韩 | 国产亚洲欧美另类中文 | 欧美jizz19hd性欧美| 91久久精品国产91久久| 亚洲福利久久| 国外成人在线视频| 国产精品专区一| 欧美视频在线观看一区| 欧美视频三区在线播放| 欧美激情第二页| 欧美日韩精品在线播放| 久热精品在线视频| 久久精品亚洲精品| 欧美一区二区三区久久精品茉莉花| 欧美国产日韩一区二区在线观看| 欧美成人精品激情在线观看| 久久一综合视频| 欧美成人第一页|