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

天行健 君子當(dāng)自強(qiáng)而不息

繪制流水線(xiàn)(3)

2.3.5光照(Lighting)

光照定義在世界坐標(biāo)系中,但必須變換到視圖坐標(biāo)系才可使用。視圖坐標(biāo)系中光源給物體施加的光照大大增加了場(chǎng)景中物體的真實(shí)性。

2.3.6裁剪(Clipping)

我們刪除那些超出了可視體范圍的幾何圖形的過(guò)程就叫做裁剪。這會(huì)出現(xiàn)三種情況:

完全包含——三角形完全在可視體內(nèi),這會(huì)保持不變,并進(jìn)入下一級(jí)。

完全在外——三角形完全在可視體外部,這將被刪除。

部分在內(nèi)(部分在外)——三角形一部分在可視體內(nèi),一部分在可視體外,則三角形將被分成兩部分,可視體內(nèi)的部分被保留,可視體之外的則被刪除。

圖2.13展示了上面三種情況:

2.3.7投影(Projection)

視圖坐標(biāo)系的主要任務(wù)就是將3D場(chǎng)景轉(zhuǎn)化為2D圖像表示。這種從n維轉(zhuǎn)換成n-1維的過(guò)程就叫做投影。投影的方法有很多種,但是我們只對(duì)一種特殊的投影感興趣,那就是透視投影。因?yàn)橥敢曂队翱梢允闺x照相機(jī)越遠(yuǎn)的物體投影到屏幕上后就越小,這可以使我們把3D場(chǎng)景更真實(shí)的轉(zhuǎn)化為2D圖像。圖2.14展示了一個(gè)3D空間中的點(diǎn)是如何通過(guò)透視投影到投影窗口上去的。

投影變換的實(shí)質(zhì)就是定義可視體并將可視體內(nèi)的幾何圖形投影到投影窗口上去。投影矩陣的計(jì)算太復(fù)雜了,這里我們不會(huì)給出推導(dǎo)過(guò)程,而是使用如下的Direct3D函數(shù)通過(guò)給出平截頭體的參數(shù)來(lái)求出投影矩陣。

 

D3DXMATRIX *D3DXMatrixPerspectiveFovLH(

       D3DXMATRIX* pOut, // 返回的投影矩陣

       FLOAT fovY, // 用弧度表示的視野角度vertical field of view angle in radians

       FLOAT Aspect, // 寬高比

       FLOAT zn, // 前裁剪面距離

       FLOAT zf // 后裁剪面距離

);

 

(fovY定義鏡頭垂直觀(guān)察范圍,以弧度為單位。對(duì)于這個(gè)參數(shù),下面是我的理解:如果定義為D3DX_PI/2(90度角),那么就是表示以攝像機(jī)的觀(guān)察方向?yàn)槠椒志€(xiàn),上方45度角和下方45度角就是攝像機(jī)所能看到的垂直范圍了。嗯,可以想象一下自己的眼睛,如果可以把自己眼睛的fovY值設(shè)為D3DX_PI(180度角),那么我們就可以不用抬頭就看得見(jiàn)頭頂?shù)臇|西了。如果設(shè)為2 x D3DX_PI的話(huà)。。。我先編譯一下試試(building…)。哈哈,結(jié)果啥也看不見(jiàn)。很難想象如果自己能同時(shí)看到所有方向的物體,那么將是一個(gè)怎樣的畫(huà)面?。?/p>

如圖2.15所示視錐的描述參數(shù)。

Aspect參數(shù)為投影平面的寬高比例值,由于最后都為轉(zhuǎn)換到屏幕上,所以這個(gè)比例一般設(shè)為屏幕分辨率的寬和高的比值。如果投影窗口是個(gè)正方形,而我們的顯示屏一般都是長(zhǎng)方形的,這樣轉(zhuǎn)換后就會(huì)引起拉伸變形。

aspectRation = screenWidth / screenHeight

我們還是通過(guò)調(diào)用IDirect3DDevice9::SetTranform方法來(lái)進(jìn)行投影變換,當(dāng)然,要把第一個(gè)投影類(lèi)型的參數(shù)設(shè)為D3DTS_PROJECTION。下面的例子基于一個(gè)90度視角、前裁剪面距離為1、后裁剪面距離為1000的平截頭體創(chuàng)建投影矩陣:

D3DXMATRIX proj;

D3DXMatrixPerspectiveFovLH(&proj, PI * 0.5f, (float)width / (float)height, 1.0, 1000.0f);

Device->SetTransform(D3DTS_PROJECTION, &proj);

 

2.3.8視口變換(Viewport Transform)

視口變換主要是轉(zhuǎn)換投影窗口到顯示屏幕上。通常一個(gè)游戲的視口就是整個(gè)顯示屏,但是當(dāng)我們以窗口模式運(yùn)行的時(shí)候,也有可能只占屏幕的一部分或在客戶(hù)區(qū)內(nèi)。視口矩形是由它所在窗口的坐標(biāo)系來(lái)描述的,如圖2.16。

 

在Direct3D中,視口矩形通過(guò)D3DVIEWPORT9結(jié)構(gòu)來(lái)表示。它的定義如下:

typedef struct _D3DVIEWPORT9 {

       DWORD X;

       DWORD Y;

       DWORD Width;

       DWORD Height;

       DWORD MinZ;

       DWORD MaxZ;

} D3DVIEWPORT9;

前四個(gè)參數(shù)定義了視口矩形與其所在窗口的關(guān)系。MinZ成員指定最小深度緩沖值,MaxZ指定最大深度緩沖值。Direct3D使用的深度緩沖的范圍是0~1,所以如果不想做什么特殊效果的話(huà),將它們分別設(shè)成相應(yīng)的值就可以了。

一旦我們填充完D3DVIEWPORT9結(jié)構(gòu)后,就可以如下設(shè)視口:

D3DVIEWPORT9 vp{ 0, 0, 640, 480, 0, 1 };

Device->SetViewport(&vp);

這樣,Direct3D就會(huì)自動(dòng)為我們處理視口變換。現(xiàn)在還是給出視口變換矩陣作為參考:

 

 

2.3.9光柵化(Rasterization)

在把三角形每個(gè)頂點(diǎn)轉(zhuǎn)換到屏幕上以后,我們就畫(huà)了一個(gè)2D三角形。光柵化是計(jì)算需要顯示的每個(gè)三角形中每個(gè)點(diǎn)顏色值(如圖2.17)。

 

光柵化過(guò)程是非常繁重的計(jì)算,它應(yīng)該通過(guò)硬件圖形處理來(lái)完成。它的處理結(jié)果就是把2D圖象顯示在顯示器上。


posted on 2008-03-14 09:42 lovedday 閱讀(965) 評(píng)論(0)  編輯 收藏 引用


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


公告

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

隨筆分類(lèi)(178)

3D游戲編程相關(guān)鏈接

搜索

最新評(píng)論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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国产精品私拍| 欧美本精品男人aⅴ天堂| 香蕉乱码成人久久天堂爱免费| 亚洲乱码国产乱码精品精| 亚洲电影第三页| 亚洲精品国产日韩| 亚洲午夜视频在线观看| 亚洲午夜一区| 久久久国产精品一区二区中文| 免费观看日韩av| 欧美日韩不卡一区| 国产亚洲精品久久久久久| 在线看日韩av| 亚洲视频一区二区| 久久久www成人免费毛片麻豆 | 亚洲欧美日韩中文视频| 久久精品99| 91久久黄色| 亚洲欧美中文日韩v在线观看| 久久福利影视| 欧美日韩一二三四五区| 国内精品国产成人| 亚洲午夜女主播在线直播| 久久精品99无色码中文字幕 | 亚洲午夜伦理| 欧美大片91| 亚洲欧美资源在线| 欧美激情成人在线| 国语自产偷拍精品视频偷| 一本大道久久精品懂色aⅴ| 久久精品导航| 亚洲在线一区二区三区| 欧美国产在线观看| 在线日韩日本国产亚洲| 欧美亚洲网站| 99一区二区| 欧美精品久久一区| 在线观看的日韩av| 久久国产乱子精品免费女 | 国产亚洲欧美一区二区| 一色屋精品视频免费看| 国产亚洲激情| 亚洲一区图片| 亚洲美女91| 欧美精品综合| 91久久精品美女高潮| 久久精品视频导航| 亚洲一区中文| 国产精品麻豆成人av电影艾秋| 亚洲美女视频网| 欧美激情视频网站| 久久夜色精品国产噜噜av| 国产一区二区三区日韩| 欧美一区二区女人| 亚洲自拍偷拍一区| 欧美体内谢she精2性欧美| 亚洲精品欧洲| 亚洲精品免费在线播放| 欧美二区视频| 99精品久久久| 亚洲一线二线三线久久久| 欧美jizzhd精品欧美喷水| 在线观看日韩一区| 欧美激情在线| 欧美日韩精品一区二区三区四区 | 欧美精品久久99| 一区二区三区免费看| 亚洲一区二区动漫| 国产伦精品一区二区三区视频黑人| 亚洲男人的天堂在线| 亚洲一区二区三区精品在线| 国产嫩草一区二区三区在线观看 | 欧美成人在线免费观看| 久久中文字幕一区| 亚洲精品国产视频| 在线视频中文亚洲| 国产一区二区成人| 欧美黄色精品| 欧美视频在线观看免费网址| 午夜亚洲福利| 久久久噜噜噜久久中文字幕色伊伊| 亚洲国产成人久久| 99视频超级精品| 国产日韩一区二区三区在线| 美女日韩在线中文字幕| 欧美区二区三区| 欧美在线一级视频| 欧美丰满高潮xxxx喷水动漫| 午夜精品理论片| 久久在线免费观看| 亚洲欧美国产日韩中文字幕| 久久久精品999| 亚洲一区三区在线观看| 久久蜜桃资源一区二区老牛 | 亚洲在线一区| 亚洲综合色视频| 亚洲视频免费在线| 欧美成年人视频网站| 午夜亚洲性色福利视频| 国产精品男人爽免费视频1| 免费精品视频| 国产一区二区三区最好精华液| 久久久久久网站| 欧美日本中文字幕| 久久国产手机看片| 欧美激情视频一区二区三区免费| 正在播放亚洲一区| 久久久久在线观看| 欧美亚洲一区二区三区| 欧美激情一区三区| 久久综合给合久久狠狠狠97色69| 欧美日韩亚洲在线| 欧美激情一区二区三区四区| 国产精品一区二区视频 | 亚洲免费在线观看视频| 蜜桃av一区二区| 久久激情婷婷| 国产精品久久久久久妇女6080| 亚洲高清视频在线| 韩国一区二区三区美女美女秀| 一本色道**综合亚洲精品蜜桃冫| 影音先锋久久| 久久成人精品电影| 欧美一区二区国产| 国产精品精品视频| 99精品视频免费| 亚洲精品一二三区| 欧美成人一区在线| 欧美国产三级| 最新精品在线| 美国十次成人| 欧美不卡视频一区发布| 激情成人亚洲| 久久久噜噜噜久噜久久| 久久中文久久字幕| 黄色一区二区在线观看| 久久精品官网| 能在线观看的日韩av| 伊人久久久大香线蕉综合直播| 性欧美精品高清| 久久久久久久欧美精品| 精品999成人| 美女福利精品视频| 亚洲国产精品成人综合色在线婷婷 | 一区二区三区久久网| 宅男噜噜噜66一区二区| 国产精品久久久久久久久久妞妞| 久久久999国产| 欧美激情中文字幕一区二区 | 欧美伊人久久久久久久久影院| 国产精品久久久亚洲一区| 亚洲综合精品四区| 久久久久久亚洲精品中文字幕 | 欧美黄色小视频| 日韩亚洲综合在线| 欧美一区二区日韩| 在线观看欧美黄色| 欧美精品久久99久久在免费线| 在线视频日本亚洲性| 欧美一区二区在线观看| 在线看片一区| 欧美午夜精品久久久久久久| 午夜精品久久久久久久99樱桃| 狂野欧美激情性xxxx| 亚洲日本成人女熟在线观看| 欧美精品在线免费| 香蕉成人啪国产精品视频综合网| 免费欧美在线视频| 亚洲一区美女视频在线观看免费| 国产欧美在线播放| 欧美国产激情| 午夜久久美女| 亚洲精品视频免费在线观看| 欧美一区日韩一区| 亚洲精品乱码久久久久久蜜桃麻豆 | 亚洲肉体裸体xxxx137| 性做久久久久久久免费看| 亚洲成人直播| 国产欧美精品日韩精品| 欧美成人在线影院| 欧美在线看片| 亚洲午夜精品网| 91久久国产综合久久蜜月精品 | 黄色小说综合网站| 欧美午夜精品理论片a级大开眼界| 久久精品国产久精国产思思| 99日韩精品| 亚洲国产精品va在线看黑人| 欧美在线电影| 亚洲尤物在线视频观看| 亚洲激情视频在线观看| 国产欧美日韩视频一区二区| 欧美精品久久久久久久久老牛影院 | 久久精品国产99精品国产亚洲性色| 99在线热播精品免费99热| 欧美高清影院| 欧美电影资源| 欧美α欧美αv大片| 久久久精品五月天|