版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、汽車噴漆效果的實現(xiàn)圖1:雙色調(diào),懸浮微鱗片轎車油漆在Direct3D實時象素著色器的效果。給汽車身體噴漆是一個復雜的過程,車身油漆是昂貴分層形式,往往包含染料層,搪瓷金屬箔懸浮層.由于這些接二連三油漆表面層,展示出了一種復雜的光學交互,使車看起來平滑,光澤。這了使用的汽車模型的多邊形較少,但是引入了高精度的法線貼圖(訪問 可以獲得更多關(guān)于法線貼圖生成工具的信息),由于像素著色器應(yīng)用在光滑變化的表面(如車蓋),每通道16位的法線貼圖是比較適合的。法線貼圖解壓縮像素著色器中做的第一步就是法線貼圖解壓縮。因為法線是儲存在表面的局部坐標系(也叫做切線空間),我們可以假設(shè)法線的z分量是正值。這樣,我們能
2、夠?qū),y分量存在紋理的兩個16位的通道中,從而z通過在像素著色器中通過公式 +sqrt(1 x2 y2 ) 算出。這樣它相對于傳統(tǒng)的8-8-8-8的法線貼圖,就給了我們更高的精度,但是只占用同樣的內(nèi)存。圖2:雙色調(diào),微鱗片,后視鏡上的效果圖.基礎(chǔ)顏色通過上述的法線解壓過程,并和當前幾何表面的法線合成計算后,我們產(chǎn)生了法線(N),還有一個高頻率歸一化的噪聲圖(Nn),它是在表面反復重復著。這兩個法線用來計算兩擾動法線,用來模擬汽車的雙色調(diào)和內(nèi)部微鱗片層。噪聲圖如下圖:圖3:金屬微片,懸浮層,搪瓷層、染料層和表層散射效果.這些法線,Ns 和 Nss 計算方法如下:公式1,2系數(shù)a,b,c,d是像
3、素著色器的固定輸入常數(shù),它決定了擾動法線的分布。這些攝幅度平均寬度決定在該地區(qū)的微型片狀隨時可見。兩個法線都與視向量點乘來作為下列多項式的參數(shù),它決定了基礎(chǔ)顏色和微鱗片層的強度系數(shù)。公式3多項式的前三項執(zhí)行了兩個色調(diào)中的混合。第四項添加了一個額外層:微鱗片層。常數(shù)c0,c1,c2對應(yīng)于基礎(chǔ)顏色層,c3對應(yīng)于微鱗片層。亮漆層渲染得最后一步就是渲染一個亮漆層,即反射一個環(huán)境貼圖。環(huán)境貼圖顯示如下:完整的HLSL像素著色器代碼如下: struct PsInput float2 Tex : TEXCOORD0; float3 Tangent : TEXCOORD1; float3 Binormal :
4、 TEXCOORD2; float3 Normal : TEXCOORD3; float3 View : TEXCOORD4; float3 SparkleTex : TEXCOORD5; ; float4 main(PsInput i) : COLOR / 取得當前的法線圖float3 vNormal = tex2D( normalMap, i.Tex ); / 縮放和偏移讓其在-1.0, 1.0區(qū)域內(nèi): vNormal = 2.0f * vNormal - 1.0f; / 獲得高頻率擾動的法線,通過查詢一個噪聲圖。 float3 vFlakesNormal = tex2D(microfla
5、keNMap, i.SparkleTex); / 別忘了轉(zhuǎn)換到 -1.0, 1.0 區(qū)域內(nèi): vFlakesNormal = 2 * vFlakesNormal - 1.0; / 計算以下公式/ Np1 = ( a * Np + b * N ) / | a * Np + b * N | where a << b / float3 vNp1 = microflakePerturbationA * vFlakesNormal + normalPerturbation * vNormal ; / 計算以下公式/ Np2 = ( c * Np + d * N ) / | c * Np +
6、d * N | where c = d float3 vNp2 = microflakePerturbation * ( vFlakesNormal + vNormal ) ; / 因為需要與法線點乘求夾角,所以我們必須將它歸一化一下float3 vView = normalize( View ); / 把表面法線轉(zhuǎn)換好世界空間中來,計算bump map的方法。float3x3 mTangentToWorld = transpose( float3x3( Tangent, Binormal, Normal ) ); float3 vNormalWorld = normalize( mul( m
7、TangentToWorld, vNormal ); / 計算夾角余玄float fNdotV = saturate(dot( vNormalWorld, vView); / 計算出反射向量float3 vReflection = 2 * vNormalWorld * fNdotV - vView; / 我們需要一個gloss值來讀環(huán)境圖,在真實的demo中,反射效果會有輕微的模糊。float fEnvBias = glossLevel; / 用反射向量采樣環(huán)境圖。float4 envMap = texCUBEbias( showroomMap, float4( vReflection, fE
8、nvBias ) ); /乘以亮度值,在a通道中儲存 RGBEenvMap.rgb = envMap.rgb * envMap.a; / 再乘以一個亮度系數(shù)envMap.rgb *= brightnessFactor; / 將切線空間中的法線變換到世界坐標中來.float3 vNp1World = normalize( mul( mTangentToWorld, vNp1) ); / 法線和視線點乘,得到斐涅爾系數(shù)float fFresnel1 = saturate( dot( vNp1World, vView ); / 將第二個法線也同樣重切線空間中變換到世界坐標中來.float3 vNp2
9、World = normalize( mul( mTangentToWorld, vNp2 ); / 同樣的方法得到第二個斐涅爾系數(shù).float fFresnel2 = saturate( dot( vNp2World, vView ); / 開始合成所有層了./ 根據(jù)公式三float fFresnel1Sq = fFresnel1 * fFresnel1; float4 paintColor = fFresnel1 * paintColor0 + fFresnel1Sq * paintColorMid + fFresnel1Sq * fFresnel1Sq * paintColor2 + pow( fFresnel2, 16 ) * flakeLayerColor; / 最后與反射的環(huán)境貼圖合成在一起,形成最終的結(jié)果.float fEnvContribution = 1.0 - 0.5 * fNdotV; float4 finalColor;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年專用建筑工具租賃合同
- 2024年建筑工程施工物資合同
- 2024年商業(yè)店鋪聯(lián)合租賃合同
- 2024年度加工承攬合同承攬工作內(nèi)容及要求
- 【初中生物】脊椎動物-鳥和哺乳動物課件-2024-2025學年人教版(2024)生物七年級上冊
- 2024年定制版:物流運輸居間協(xié)議
- 2024年在線教育平臺建設(shè)及內(nèi)容提供合同
- 2024國際貨運代理服務(wù)合同及附加條款
- 2024年廢棄物處理與回收合同處理方法與環(huán)保標準
- 2024年北京市出租車指標承包經(jīng)營協(xié)議
- 當代社會政策分析 課件 第十一章 殘疾人社會政策
- 家政公司未來發(fā)展計劃方案
- ISO28000:2022供應(yīng)鏈安全管理體系
- 家校攜手 同心共育 四年期中考試家長會 課件
- 《配電網(wǎng)保護分級配置及整定技術(shù)規(guī)范》
- 企業(yè)檔案管理辦法培訓
- 《室內(nèi)設(shè)計基礎(chǔ)》課件
- 《戲劇基本常識》課件
- 侮辱罪的立案標準
- 有限空間作業(yè)審批表
- 左宗棠生平及評價
評論
0/150
提交評論