亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 卡通渲染.txt

?? 《Visual C/C++圖形圖像與游戲編程典型實例解析》所有源代碼。特別適合初學者。
?? TXT
字號:
				卡通渲染
						文\申曉
    現在市面上流行的3D游戲畫面越來越炫目,不過也有一些為了營造一種特殊的效果而使用了卡通渲染技術,比如PC游戲中的《殺手XIII》,《忍者神龜》;PS2游戲中的《真紅之淚》,《犬夜叉》等等。這些游戲的畫面看上去很像漫畫,感覺比較有趣。下面就介紹一種簡單的實現方法。
    所謂用卡通渲染技術繪制的三維物體一般都有兩個明顯的特征,一個特征是物體表面覆蓋著大塊的單調顏色,而且光影變化比較劇烈;另一個特征是物體擁有粗重的邊緣效果。如果能自己控制光照和陰影,就可以達到目的。而DirectX 9.0 中的頂點渲染(Vertex Shaders)提供了這樣一個途徑,使我們可以實現自己的想法。
    頂點渲染與以前的T&L在渲染流程中處于二選一的地位,一段代碼最多只能有128條指令,而且不能有循環,判斷和跳轉指令,全是線性執行指令。每次只能有一個Shader程序是激活的,Vertex Shaders讓我們可以實時地控制模型的空間變換,光照處理以及像素渲染。
    那么現在先來解決第一個問題。我們可以用光線的亮度值作為物體的紋理坐標,這就產生一種帶狀紋理的效果,然后再調整相應的顏色即可。下面是渲染表面的Vertex Shaders代碼:

//v0 點位置
//v1 法向量
//c0 (0,0.5,1.0,2.0)
//c1-4 WV矩陣
//c5-9 WVP矩陣
//c9 光的顏色
//c10 光的方向

vs_2_0            
dcl_position v0  
dcl_normal   v1
dcl_texcoord v2
dcl_color    v3

def c0,0.0,0.5,1.0,2.0

m4x4 oPos,v0,c5 //變換點位置到WorldViewProj空間
m3x4 r1,v1,c1	//變換法向量到WorldView空間
dp3 r2,-r1,c10  //計算光照
max r2,r2,c0.x 
mov oT0.x,r2    //紋理坐標[r2,0.5]
mov oT0.y,c0.y  
mov oD0,c9      //設置光照

這段代碼先把每個點的坐標變換到相應的空間,然后使用一維的坐標來表示帶狀紋理的效果。最后設置材質的顏色并添加照明。程序中之所以選擇0.5作為水平方向上的紋理坐標,是為了避免一些邊緣采樣的問題。
    接著解決第二個問題。為了體現出粗重的邊緣效果,我們必須要找出所有的邊緣輪廓。一般的話,如果兩個面的朝向相反,那么它們的公共邊就是邊緣輪廓。法向量和視覺向量的點積越接近0,就離邊緣越近,然后把這些靠近邊緣的三角形渲染成黑色即可。為了控制卡通化的程度,可以設置一個閥值,然后使用alpha檢測來決定每個點的顏色。

vs_2_0                             
dcl_position v0
dcl_normal   v1
dcl_texcoord v2
dcl_color    v3

def c0,0.0,0.5,1.0,2.0

m4x4 oPos,v0,c5		 //變換點位置到WorldViewProj空間
m3x4 r0,v0,c1		 //變換點位置到WorldView空間
m3x4 r1,v1,c1		 //變換法向量到WorldView空間
nrm r2,r0		 //歸一化
dp3 r3.x,r2,-r1		 //計算點積
mad oD0.w,r3.x,c0.y,c0.y //設置alpha值
mov oD0.xyz,c0.x	 //設置漫射光

這段代碼先把每個點的坐標變換到相應的空間,然后計算點積,最后添加光照。另外還要在程序中使用alpha檢測來過濾像素,代碼如下所示:

m_pd3dDevice->SetRenderState(D3DRS_ALPHATESTENABLE,1);
m_pd3dDevice->SetRenderState(D3DRS_ALPHAFUNC,D3DCMP_GREATEREQUAL);
m_pd3dDevice->SetRenderState(D3DRS_ALPHAREF,200);

實際渲染要執行兩遍,第一遍繪制表面,第二遍繪制邊緣,這樣就基本達到了我們的目的。還要說明的一點是,因為Geforce FX系列以前的顯卡不是硬件支持VS2.0,所以必須在程序中設置成軟件模擬方式。就是在 d3dapp.cpp 的 Initialize3DEnvironment 中把 behaviorFlags 賦值為D3DCREATE_SOFTWARE_VERTEXPROCESSING即可,這樣才能看到效果。本文附帶的D3D9Cartoon例程是用DirectX 9 SDK開發的,這個開發包在微軟網站上有下載,大概有218MB,地址是http://download.microsoft.com/download/b/6/a/b6ab32f3-39e8-4096-9445-d38e6675de85/dx90bsdk.exe,安裝后再編譯此例程就可以運行了。D3D9Cartoon例程是在 VS.NET2002+WinXP 下面調試通過。

參考文獻:
Cartoon Rendering in DirectX 8.0 Using Vertex Shaders

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩免费观看一区二区三区| jlzzjlzz亚洲日本少妇| 国产日韩欧美精品一区| 精品视频在线免费观看| 国产精品一区久久久久| 亚洲成人久久影院| 国产日韩欧美亚洲| 欧美一级理论性理论a| 92国产精品观看| 狠狠色2019综合网| 国产三级三级三级精品8ⅰ区| 日本精品免费观看高清观看| 黄色资源网久久资源365| 激情综合网最新| 色就色 综合激情| 捆绑变态av一区二区三区| 国产夜色精品一区二区av| 在线成人小视频| 色嗨嗨av一区二区三区| 成人中文字幕在线| 91日韩一区二区三区| 日韩电影免费在线| 亚洲va欧美va人人爽午夜 | 26uuu国产一区二区三区| 欧美日韩高清影院| 欧美性一区二区| 97成人超碰视| 99在线精品一区二区三区| 国产一区二区三区日韩| 精品一区二区三区的国产在线播放 | 久久久精品欧美丰满| 欧美一区二区久久| 制服.丝袜.亚洲.另类.中文| 欧美在线免费观看视频| 在线观看视频91| 日本韩国欧美一区二区三区| 北条麻妃一区二区三区| 成人激情av网| 成人激情小说乱人伦| 国产麻豆日韩欧美久久| 国产黄人亚洲片| 国产成人亚洲精品青草天美| 激情五月激情综合网| 久久99精品国产| 国产一区二区三区高清播放| 激情深爱一区二区| 国产在线看一区| 国产成人综合在线观看| 国产乱码一区二区三区| 国产成人精品免费网站| 成人动漫av在线| 97久久久精品综合88久久| 91香蕉视频在线| 91高清在线观看| 欧美日本一区二区在线观看| 91精品国产高清一区二区三区蜜臀 | 亚洲精品日韩综合观看成人91| 亚洲欧洲三级电影| 亚洲精品一二三| 亚洲一区二区三区四区在线观看| 亚洲成人免费视| 日本美女一区二区三区| 极品销魂美女一区二区三区| 国产精品一二三区| 91视频.com| 欧美日本一道本在线视频| 欧美va亚洲va在线观看蝴蝶网| 精品国产一二三| 国产欧美日韩另类视频免费观看| 亚洲欧洲综合另类在线| 午夜不卡av免费| 久草精品在线观看| 91在线看国产| 91精品国产综合久久小美女| 久久久久久夜精品精品免费| 亚洲男人都懂的| 人人超碰91尤物精品国产| 国产寡妇亲子伦一区二区| 色综合久久久久久久久| 91精品综合久久久久久| 欧美国产综合色视频| 亚洲第一在线综合网站| 国产在线不卡一区| 在线观看日韩高清av| 久久女同精品一区二区| 亚洲激情av在线| 久久99国产精品久久99果冻传媒| 成人18精品视频| 7799精品视频| 亚洲欧洲色图综合| 久久精品国产在热久久| 91在线porny国产在线看| 日韩一区二区三区在线视频| 亚洲欧美国产高清| 激情都市一区二区| 在线精品亚洲一区二区不卡| 久久久噜噜噜久噜久久综合| 午夜精品成人在线视频| 99久久亚洲一区二区三区青草| 91精品国产综合久久久蜜臀图片| 国产精品毛片大码女人| 理论片日本一区| 欧美日韩综合在线免费观看| 国产清纯白嫩初高生在线观看91| 午夜电影网亚洲视频| 91美女蜜桃在线| 久久精品视频一区二区三区| 婷婷一区二区三区| 91小宝寻花一区二区三区| 国产日韩欧美麻豆| 乱中年女人伦av一区二区| 欧美日韩免费电影| 亚洲一区二区三区在线| 99久久精品国产导航| 久久久亚洲欧洲日产国码αv| 亚洲午夜在线电影| 91在线精品秘密一区二区| 久久精品视频免费观看| 久99久精品视频免费观看| 欧美日韩一区在线观看| 亚洲女同女同女同女同女同69| 国产精品18久久久久久久网站| 欧美不卡一区二区三区四区| 五月激情综合网| 欧美日韩一区国产| 亚洲精品综合在线| 色视频一区二区| 国产精品国产精品国产专区不蜜| 国产精品456露脸| 久久午夜色播影院免费高清| 久久不见久久见免费视频7 | 欧美伊人久久大香线蕉综合69| 国产精品久久久久久久久果冻传媒 | 亚洲精品大片www| 成人免费的视频| 国产精品乱码一区二三区小蝌蚪| 国产乱码一区二区三区| 久久久九九九九| 国产精品一区在线| 国产午夜久久久久| 国产成人夜色高潮福利影视| 久久午夜电影网| 国产99久久久久| 国产精品视频免费看| 成人av网站免费| 国产精品美女久久久久久2018| 欧美大白屁股肥臀xxxxxx| 91麻豆精品国产91久久久资源速度 | 中文字幕一区在线| 中文字幕一区二区三区乱码在线| 在线观看日韩高清av| 蜜桃一区二区三区四区| 7777精品伊人久久久大香线蕉超级流畅 | 国内久久婷婷综合| 久久久精品欧美丰满| 99热在这里有精品免费| 亚洲精选一二三| 91精品久久久久久久91蜜桃| 久草精品在线观看| 国产欧美一区二区精品秋霞影院| 成人高清免费在线播放| 综合久久久久久久| 欧美日韩一区成人| 麻豆中文一区二区| 欧美国产欧美综合| 一本色道久久综合亚洲91| 午夜激情久久久| 久久综合五月天婷婷伊人| 成人国产精品免费观看动漫| 一区二区三区日本| 日韩亚洲欧美在线观看| 床上的激情91.| 一区二区日韩av| 欧美xxxxxxxxx| 99免费精品视频| 丝袜国产日韩另类美女| 久久久久久久久久久久久女国产乱| av影院午夜一区| 丝袜美腿亚洲一区| 欧美激情自拍偷拍| 欧美日韩精品一区视频| 国产成人鲁色资源国产91色综 | 日韩午夜av一区| 成人国产电影网| 日韩电影在线观看一区| 久久久99精品久久| 欧美亚洲国产一区在线观看网站| 久久99国产精品久久99| 夜夜亚洲天天久久| 久久日韩精品一区二区五区| 色婷婷av久久久久久久| 国产在线精品一区二区夜色| 亚洲制服丝袜av| 久久精品免费在线观看| 欧美日本乱大交xxxxx| 国产不卡高清在线观看视频| 午夜激情一区二区| 亚洲男同性视频| 久久毛片高清国产| 欧美一区二区三区免费视频|