日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

(转)计算切线空间

發布時間:2025/4/16 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (转)计算切线空间 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

切線空間:

因為顯卡一般是以三角形作為最小渲染單位的,我們假設三角形的三點為p1, p2, p3,設該三角形所對應的一個空間為(T,B,N), 其中T和B構成的平面就是三角形所在平面, 而T和B分別對應U和V方向,此空間
的作用是讓任何向量從tangent space變換到world space(實際上我們最終要求的是反過來的,先這樣好作說明,最后求逆即可)

那么P2-P1的向量p必定在T及B所構成的平面上,由此推出:

P2-P1 = (U2-U1)*T+(V2-V1)*B
P3-P1 = (U3-U1)*T+(V3-V1)*B

設v1=P2-P1; v2=P3-P1; s1=U2-U1; s2=U3-U1; t1=V2-V1; t2=V3-V1
整理得出如下矩陣:

|v1|???? |s1? t1?|???? |T|
|?? | =? |????? ? ? | *? |? |
|v2|?? ? |s2? t2?|???? |B|

v1 v2 s1 s2 t1 t2都是已知的,這樣即可求得T和B,而N我們就用T和B的叉乘即可得到。

最后要T和B和N反過來作用向量從world space變換到tangent space, 我們只要對其求逆即可。


好了,有了這個,我們在作Normal map等處理時就可讓光線變到切線空間中再乘上Noraml圖中的法線即可。

總結

以上是生活随笔為你收集整理的(转)计算切线空间的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。