求繞圓心的向量

1.背景

在CG製作中經常會使用到旋轉場。比如龍捲風、漩渦的製作等。也就是需要求圍着座標中心的切向量。如下圖:

2.製作方法

通常會有幾種方法:三角函數法、矩陣法

2.1.三角函數法

根據切向量的定義,如下圖

 

可以知道切向量等於 magnitude * tan(θ+90°),θ = arctan(y, x)

在houdini中鏈接如下圖:

 

 

這個式子因爲使用了tan函數,引入了正切的週期性取值對最終結果的影響。如下圖

 

 

只需要把下面部分的向量求反,即可。連法如下圖:

 

 

這種方法節點連得比較多,也比較麻煩。還有一種方法,根據旋轉90°所得的公式 tan(θ+90°) = -cot(θ)。連法如下圖:

 

 

2.2.矩陣法

根據矩陣的叉乘可求正交向量的特性,可輕鬆求得切線量。連法如下圖:

 

 

3.總結

至此三種基本連法已經嘗試完畢,總體來說矩陣法相對簡單快速。而三角計算在來回轉換的過程中會引入週期性的問題,需要進行調整。

而且矩陣法的可擴展性會強很多,比如在vec2連入一個法線向量等。會輕鬆得出一些特別的效果。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章