模型法線的計算以及調整

2021-10-02 07:43:08 字數 1169 閱讀 5478

在①中,總結了幾種根據 face normal 計算  vertex normal 的方法:

簡單來說,就是根據頂點周圍的共光滑組的面法線的和求平均來得到該點的頂點法線

這個方法,在考慮了每個三角面的兩條邊的角度作為權重,來計算最後的頂點法線

根據三角面的兩條邊的長度的積的倒數來作為權重計算最後的法線。

如下圖,實現細節陰影ao 的效果

在②中,用了一種計算自遮擋的方法來計算ao。

對每個頂點,採用重要性半球面取樣,計算遮擋情況。根據miss 的取樣點,計算出 bentnormal, 以及乙個包圍miss 區域的圓。 angle 即為 上圖中 中心角 。結合下公式 得到最後的ao

ao= scale(1-cos(angle)).  

可以達到一些比較好的細節陰影的效果

todo

①a comparison of algorithms for vertex normal computation

②precomputed lighting in call of duty infinite wa***re

Threejs模型 調整模型的視角

x y z軸的位置 建立盒子 modelbounds new three.box3 建立乙個盒子 賦值為每乙個模型的構件的盒子 data if modelbounds.isempty else 思路是 假設相機位於模型的正上方,那麼相機相對於模型的兩邊的夾角相同,設定乙個夾角為60度,那麼可以知道相...

關於點法線向量的計算

我在學習opengl的過程中,發現光照模型的渲染是需要指定法線向量的。無論是面法線還是點法線,不指定的話可能會造成不可預知的渲染效 果。面法線的計算相對來說容易一些,說說點法線如何計算的。當然我在網上也找了好些資料。計算點法線,必須先計算它所在的面的面法線向量,再對所有面法線向量做歸一化才可以。那如...

點雲的平滑與法線計算

需要平滑的情況 1 用rgb d雷射掃瞄器等裝置掃瞄物體,尤其是比較小的物體時,往往會有測量誤差。這些誤差所造成的不規則資料如果直接拿來曲面重建的話,會使得重建的曲面不光滑或者有漏洞,而且這種不規則資料很難用前面我們提到過的統計分析等濾波方法消除 2 後處理過程中,對同乙個物體從不同方向進行了多次掃...