首页 > 编程知识 正文

shader和shader graph,shape是矢量数据吗

时间:2023-05-06 15:15:16 阅读:225648 作者:1766

矢量

也叫向量(数学中叫向量,物理中叫矢量),它有自己的方向模长,通常用来表示一个速度或是一个方向,有时候也会用来表示一个距离某点的距离。

矢量的乘法、除法

各分量分别除以除数,意味着矢量被按倍数放大或缩小,但其中向量的除法是没有意义的,应该认为是矢量除法。
乘法:2(1,2,3)=(2,4,6)
除法:(1,2,3)/2=(0.5,1,1.5)

矢量的加法、减法

我们只需要把三个分量分别相加或相减即可:
加法:(1,2,3)+(2,3,4)=(3,5,7)
减法:(5,2,7)-(3,8,4)=(2,-6,3)

一个矢量不可以和一个标量相加或相减,或是和不同维度的矢量进行运算。

矢量的模

即是矢量的长度,计算方法是所有分量 的 平方 的 和,再开方

单位矢量

即是模为1的矢量,也被称为归一化的矢量。一般用于确定方向。

例子:

矢量的点积

也被称为内积和叉积。矢量的点积是一个值,即是每一个分量分别相乘后相加。
如:a.b=(ax,ay,az).(bx,by,bz)=axbx+ayby+az*bz
(1,2,3).(0.5,4,2.5)=0.5+8+7.5=16

矢量几何意义:
**投影:**点乘的值越大,也就说明这两个向量越相似。

夹角:
点乘值>0:夹角小于90度
点乘值=0:夹角等于90度
点乘值<0:夹角大于90度

点乘的性质
性质一:可结合标量乘法
(ka).b=a.(kb) -----k为标量a.b为矢量

性制二:点积可以结合矢量加法和减法
a.(b+c)=a.b+a.c

性制三:矢量和本身进行点乘,是矢量模的平方
a.a=axax+ayay+az*az=|a|2

性制四:等于两个矢量的模长相乘后乘以Cos角度
a.b=|a||b|cos(angle)

矢量的叉乘

也叫叉积,外积,和点乘不同的是它的结果还是一个矢量。计算方式如下:
(ax,ay,az)X(bx,by,bz)=(aybz-azby,azbx-axbz,axby-aybx)

叉乘不满足交换率:
aXb != bXa
但它满足反交换率:
aXb = -bXa
不满足结合率:
(aXb)Xc != aX(bXc)

几何意义
aXb的长度等于a和b的摸的乘积再乘以它们之间的夹角的正弦值:
|aXb|=|a||b|sin(angle)

平行四边型的面积:
面积=底(b)X高=底(|a|sin(angle))=|a||b|sin(angle)=aXb

求法向量:即完全垂直于这两个矢量构成的平面的矢量

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。