網友評分: 9.7分
Vertex Normal Tool是一款C4D軟件的法線貼圖插件,這款插件主要用于C4D的多邊形對象創建和操縱頂點法線,更智能化地處理三維模型的光線、邊緣。
幾乎所有其他高端三維軟件(3ds Max,Maya,…)都支持頂點法線編輯,雖然c4d支持導入和渲染頂點法線,但它缺乏任何接口或工具用于創建或編輯它們。Vertex Normal Tool旨在解決這個問題,通過給藝術家完全控制頂點法線。
Vertex Normal Tool輕松添加新的頂點法標記對象,同時保留任何phong角和邊緣斷裂。輕松地更新和操作頂點法線,執行所有常見的任務:flipping, averaging, normalizing、設置硬邊或軟邊緣、通過選集或角等等…內置函數,輕松地處理常見的頂點法線技巧。
復制插件到C:\Program Files\MAXON\CINEMA 4D R18\plugins即可
插件支持(Win/Mac):
Cinema 4D R18,R17,R16
1、頂點法線定義
在3D世界中每一個頂點都有顏色,除了使用光源和物體的材質信息之外,還需要知道每個頂點的法向量,根據光照入射方向和法向量的夾角,計算頂點的最終顏色。
頂點法線::每一個頂點都有法向量,就能知道光線到達物體表面的入射角。
面法線: 垂直一個平面的直線叫面法線
一般情況下頂點法線和面法線的方向是相同的
2、怎樣計算模型的頂點切線?
一、疑問
頂點Normal可以通過加權平均共享該頂點的所有三角形面法線得到,而Tangent呢?難道是任意選擇一條切平面上的直線作為該頂點的Tangent嗎?
非也,該頂點Tangent的方向與該點紋理坐標軸U的方向是平行的,另外Binormal的方向與紋理坐標軸V的方向是平行的。這點能想清楚,就能理解怎樣計算Tangent了。
二、計算步驟
假設三角形的3個頂點的坐標分別是p0(x0,y0,z0)、p1(x1,y1,z1)和p2(x2,y2,z2),紋理坐標分別是uv0(u0,v0)、uv1(u1,v1)和uv2(u2,v2)。
1、計算該三角面上的切線(記為T’)和副法線(記為B’)
2、計算頂點法線(記為N)
頂點Normal可以通過加權平均共享該頂點的所有三角形面法線得到,細節就不再表述了。
3、計算頂點切線(記為T)
第1步得到了面切線T’,T’與N就構成了一個平面P,而頂點切線T就在這個平面p上,并且垂直于頂點法線N。
4、計算頂點副法線(記為B)
通常情況下,頂點結構中并不需要保存副法線B,只要通過Cross(N,T)就能計算出來,但是不同的引擎或是圖形接口可能是左手坐標系,也可能是右手坐標系,這就導致Cross(N,T)的方向(正確的方向應該與紋理坐標軸V軸平行)有可能是錯誤的,所以需要把修正值value保存起來,通常保存在T.w中,這樣就有:
B = Cross(N,T) *T.w
T.w = dot(Cross(N,T) ,B’) > 0 ? 1 : -1