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

隨筆 - 32  文章 - 94  trackbacks - 0
<2012年8月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用鏈接

留言簿(8)

隨筆分類

隨筆檔案

好友連接

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

這個(gè)問題在normal mapping階段就已經(jīng)出現(xiàn)了,但是效果沒有用parallax mapping后明顯。具體癥狀如下:

當(dāng)攝像機(jī)的z軸在正確角度時(shí),上下左右旋轉(zhuǎn)相機(jī),這時(shí)看起來parallax mapping是正確的。


但當(dāng)攝像機(jī)沿z方向旋轉(zhuǎn)一個(gè)角度后,再上下左右旋轉(zhuǎn)相機(jī),就會發(fā)現(xiàn)貼圖偏移的方向出現(xiàn)了錯(cuò)誤,貼圖偏移的方向仍然按著攝像機(jī)z軸正確時(shí)的偏移方向偏移。

比如說,攝像機(jī)沿z旋轉(zhuǎn)180度后,上/下旋轉(zhuǎn)相機(jī),物體的模型改變當(dāng)然是隨著顯示俯視/仰視,但是貼圖偏移卻反過來,變成了仰視/俯視;這時(shí)左右旋轉(zhuǎn),貼圖也會出現(xiàn)相反的左視/右視.....
而攝像機(jī)沿z旋轉(zhuǎn)90度或270度時(shí),上下旋轉(zhuǎn)相機(jī),貼圖偏移卻是沿左視、右視改變
攝像機(jī)沿z旋轉(zhuǎn)其它角度時(shí),這些改變也隨著變化,感覺上就是:貼圖的偏移效果仍然認(rèn)為你的眼睛還在攝像機(jī)z軸的正確角度處看。



過后問了一個(gè)高手,他說轉(zhuǎn)換到tangent space算錯(cuò)了,然后我再把那本《openGL shading language》normal mapping里面vs的轉(zhuǎn)換tangent space代碼直接拿過來,計(jì)算的結(jié)果卻更加不正確,畫面都不會有動態(tài)的偏移了,后來又去復(fù)習(xí)了向量旋轉(zhuǎn)的公式,覺得自己的應(yīng)該還是沒有錯(cuò)誤,又在網(wǎng)上找了別人寫過的代碼試驗(yàn),弄了半天還是不對,現(xiàn)在感覺仍然是原來的代碼最接近正確的,但找不到原因,望高手解決。
RenderMonkey源文件:parallaxMapping.rar
有問題的代碼:

 1uniform vec3 LightPosition;
 2
 3varying vec3 EyePos_pointTanSpace;
 4varying vec3 LightPos_pointTanSpace;
 5
 6attribute vec3 Tangent;
 7//uniform vec3 Tangent;
 8
 9void main()
10{
11    gl_Position = ftransform();
12    gl_TexCoord[0= gl_MultiTexCoord0;
13    
14    vec3 eyepos=(0,0,0);
15    vec3 Pos_eyeSpace = vec3(gl_ModelViewMatrix * gl_Vertex);
16    
17    // 眼坐標(biāo)系下的TBN
18    vec3 n = normalize(gl_NormalMatrix * gl_Normal);
19    vec3 t = normalize(gl_NormalMatrix * Tangent);
20    vec3 b = cross(n, t);
21    mat3 TBN = mat3(t, b, n);
22
23    vec3 pointLightPos=LightPosition-Pos_eyeSpace;//光相對于點(diǎn),在眼空間的位置
24    LightPos_pointTanSpace=TBN*pointLightPos;//光相對于點(diǎn),在點(diǎn)的tangent坐標(biāo)系下的位置
25    
26    vec3 eyePos=Pos_eyeSpace*-1.0;       //眼睛相對于點(diǎn),在眼空間的位置
27    EyePos_pointTanSpace=TBN*eyePos;//眼睛相對于點(diǎn),在點(diǎn)的tangent坐標(biāo)系下的點(diǎn)位置
28
29
30}

 

 1uniform sampler2D BumpTex;
 2uniform sampler2D BitMapTex;
 3uniform float HeightFactor;
 4
 5varying vec3 EyePos_pointTanSpace;
 6varying vec3 LightPos_pointTanSpace;
 7
 8void main() 
 9{
10    float height = (texture2D(BumpTex, gl_TexCoord[0].xy)).a;//獲得高度
11   height =(height *2.0)-1.0;
12   
13    vec3 LightDir=normalize(LightPos_pointTanSpace);//光方向
14    vec3 viewVec=normalize(EyePos_pointTanSpace);//眼睛方向
15    
16    vec2 texCoord2=gl_TexCoord[0].xy+viewVec.xy*height*HeightFactor;
17    
18    vec3 BumpNorm=vec3(texture2D(BumpTex, texCoord2));
19    
20    BumpNorm=(BumpNorm *2.0)-1.0;
21    
22    vec4 Co=(texture2D(BitMapTex, texCoord2));
23    
24    float diffuse = max(dot(BumpNorm, LightDir), 0.0);
25    
26    
27    vec3 reflectVec=reflect(-LightDir,BumpNorm);
28    
29    float spec = max(dot(reflectVec, viewVec), 0.0);//反射光 
30    spec = pow(spec, 8.0);
31
32    float color=spec+diffuse;
33    
34    gl_FragColor = Co*color;//vec4(color,spec,0.0, 1.0);
35}


 

posted on 2009-10-24 13:36 陳昱(CY) 閱讀(1435) 評論(2)  編輯 收藏 引用 所屬分類: 圖形學(xué)

FeedBack:
# re: 一個(gè)有問題的parallax mapping,望高手解決 2009-10-28 13:49 coloriy
幫你頂了  回復(fù)  更多評論
  
# re: 一個(gè)有問題的parallax mapping,望高手解決 2010-06-19 00:27 陳昱(CY)
問題已經(jīng)在這一篇解決http://www.shnenglu.com/jedi-CY/archive/2010/06/19/118207.html
居然是RenderMonkey的相機(jī)導(dǎo)致  回復(fù)  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              国产精品欧美日韩一区| 在线观看91精品国产麻豆| 一本大道久久a久久综合婷婷| 欧美成人一区在线| 亚洲第一天堂av| 亚洲精品欧美精品| 亚洲欧美另类国产| 香蕉亚洲视频| 国产精品久久久爽爽爽麻豆色哟哟| 欧美一区二区三区四区在线 | 久久午夜电影| 欧美成人资源| 狂野欧美激情性xxxx欧美| 在线精品视频一区二区| 欧美制服第一页| 欧美一区二区三区日韩| 激情综合在线| 国产精品麻豆成人av电影艾秋| 巨胸喷奶水www久久久免费动漫| 欧美激情偷拍| 国产情人节一区| 久久精品亚洲一区| 国产精品99久久久久久有的能看| 欧美三级电影网| 亚洲一区二区少妇| 久久国产一区| 狠狠久久亚洲欧美专区| 亚洲深夜av| 国产亚洲午夜| 在线成人av| 国产综合在线看| 国产日韩欧美亚洲| 国产一区二区精品久久| 欧美日韩国产成人精品| 亚洲免费在线| 亚洲国产一区二区a毛片| 亚洲美女中出| 激情成人在线视频| 国产精品福利片| 欧美激情第二页| 麻豆成人综合网| 欧美精品系列| 亚洲第一天堂av| 中文在线一区| 亚洲精品永久免费| 欧美日韩免费观看一区| 久久蜜桃av一区精品变态类天堂| 亚洲永久免费精品| 午夜亚洲福利| 亚洲电影有码| 国产精品久久一级| 欧美激情一区三区| 久久亚洲一区二区三区四区| 亚洲一区二区三区在线| 亚洲国产精品一区二区尤物区| 亚洲国产黄色片| 亚洲中字黄色| 欧美国产激情| 日韩一级免费观看| 久久精品视频99| 久久久五月天| 午夜精品久久久久| 亚洲久久视频| 亚洲国产精品一区二区尤物区 | 午夜精品三级视频福利| 亚洲成人在线网站| 欧美专区第一页| 久久天天狠狠| 在线观看不卡| 欧美成人a视频| 亚洲激情婷婷| 99国产麻豆精品| 欧美日韩一二三区| 99在线观看免费视频精品观看| 亚洲视频自拍偷拍| 国产精品久线观看视频| 午夜精品久久久久影视| 久久久国产亚洲精品| 韩国久久久久| 欧美电影免费观看高清完整版| 91久久精品国产91久久| 亚洲一区二区不卡免费| 国产精品日本一区二区| 欧美一区二区福利在线| 蘑菇福利视频一区播放| 亚洲欧洲一级| 国产精品高潮呻吟| 欧美在线你懂的| 亚洲黄一区二区三区| 一区二区三区欧美日韩| 国产精品夜夜夜| 久久免费视频观看| 91久久精品国产91性色| 先锋影音一区二区三区| 亚洲第一福利社区| 国产精品国产三级国产aⅴ入口| 欧美在线视频a| 亚洲三级视频| 久久亚洲综合色一区二区三区| 亚洲裸体俱乐部裸体舞表演av| 国产精品九色蝌蚪自拍| 久久婷婷激情| 亚洲视频中文| 欧美国产免费| 午夜欧美精品| 亚洲日本成人在线观看| 国产精品一区二区久久| 久久夜色精品国产欧美乱极品| 99国产精品视频免费观看| 久久综合久久美利坚合众国| 一区二区三区国产精品| 亚洲高清不卡av| 国产人成精品一区二区三| 欧美国产高潮xxxx1819| 在线观看av一区| 免费成人高清视频| 亚洲欧美综合v| 99精品欧美一区| 亚洲高清av| 久久久www成人免费精品| 亚洲午夜日本在线观看| 亚洲欧洲日本在线| 国产一区二区三区最好精华液| 国产精品久久| 欧美日韩日本国产亚洲在线| 欧美成人午夜免费视在线看片 | 欧美在线视频观看| 妖精成人www高清在线观看| 极品尤物久久久av免费看| 国产日韩欧美a| 国产精品麻豆欧美日韩ww| 欧美日韩一区在线观看视频| 欧美激情久久久| 欧美成人免费一级人片100| 久久乐国产精品| 久久成人综合视频| 久久av一区二区三区亚洲| 亚洲欧美视频在线| 午夜伦欧美伦电影理论片| 午夜精品久久久久久99热软件| 日韩一级免费观看| 在线视频你懂得一区| 亚洲视频999| 亚洲嫩草精品久久| 欧美亚洲综合久久| 欧美一区二区三区免费看 | 亚洲欧美成人综合| 亚洲一区二区在线免费观看| 亚洲视频成人| 欧美一区二区三区的| 久久狠狠一本精品综合网| 久久一区二区三区av| 欧美大片在线看| 欧美日韩亚洲一区二区| 国产精品日韩精品欧美精品| 国产精品日韩专区| 国内精品久久久久久久影视麻豆| 精品成人乱色一区二区| 亚洲激情女人| 亚洲亚洲精品三区日韩精品在线视频 | 欧美一级一区| 久久一区二区精品| 欧美日韩高清在线一区| 国产精品福利久久久| 国自产拍偷拍福利精品免费一| 亚洲国产第一| 亚洲一区二区毛片| 久久久无码精品亚洲日韩按摩| 欧美成年人视频网站| 亚洲精品久久久久久一区二区| 一本色道久久综合一区| 亚洲欧美制服另类日韩| 久久久亚洲国产美女国产盗摄| 欧美激情综合| 国产一级揄自揄精品视频| 亚洲人被黑人高潮完整版| 性欧美xxxx视频在线观看| 免费视频一区| 一本高清dvd不卡在线观看| 羞羞色国产精品| 欧美精品三级日韩久久| 国产无一区二区| 正在播放欧美一区| 免费在线观看精品| 亚洲一区二区视频在线观看| 你懂的成人av| 国产欧美日韩另类一区| 日韩天堂av| 老司机一区二区三区| 亚洲午夜在线观看视频在线| 国产精品你懂的在线欣赏| 老牛影视一区二区三区| 亚洲最黄网站| 乱人伦精品视频在线观看| 国产欧美日韩视频| av成人福利| 亚洲国产精品一区二区第四页av| 欧美一区二区三区四区在线观看地址| 欧美精品一区二区三区在线看午夜 | 亚洲精选视频免费看|