求绕圆心的向量

1.背景

在CG制作中经常会使用到旋转场。比如龙卷风、漩涡的制作等。也就是需要求围着座标中心的切向量。如下图:

2.制作方法

通常会有几种方法:三角函数法、矩阵法

2.1.三角函数法

根据切向量的定义,如下图

 

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

在houdini中链接如下图:

 

 

这个式子因为使用了tan函数,引入了正切的周期性取值对最终结果的影响。如下图

 

 

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

 

 

这种方法节点连得比较多,也比较麻烦。还有一种方法,根据旋转90°所得的公式 tan(θ+90°) = -cot(θ)。连法如下图:

 

 

2.2.矩阵法

根据矩阵的叉乘可求正交向量的特性,可轻松求得切线量。连法如下图:

 

 

3.总结

至此三种基本连法已经尝试完毕,总体来说矩阵法相对简单快速。而三角计算在来回转换的过程中会引入周期性的问题,需要进行调整。

而且矩阵法的可扩展性会强很多,比如在vec2连入一个法线向量等。会轻松得出一些特别的效果。

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