【Unity3D_Shader】代数相关

【坐标转换】

在坐标转换变换中,我们并不认为几何体发生了什么改变;而是认为我们对参考系进行了转换,改变了几何体坐标的表达方式。相比之下,我们通常认为旋转、平移和缩放会对几何体产生实质性的移动或变形。

由于位置是点的属性,而不是向量的属性,所以点和向量在实现坐标转换变换时要区别对待,使用不同的处理方式。

(1)向量

 pB=xuB+yvB

pB:P点在坐标系B的坐标

uB:X轴单位向量在坐标系B下的向量

vB:Y轴单位向量在坐标系B下的向量

x,y:P点在坐标系下的(x,y)坐标

(2)点

pB=xuB+yvB+QB

pB:P点在坐标系B的坐标

QB:坐标系A原点在坐标系B的坐标

uB:X轴单位向量在坐标系B下的向量

vB:Y轴单位向量在坐标系B下的向量

x,y:P点在坐标系下的(x,y)

坐标向量和点的坐标转换变换分别为:

(xʹ,yʹ,zʹ)=xuB+yvB+zwB用于向量

(xʹ,yʹ,zʹ)=xuB+yvB+zwB+QB用于点

如果我们使用齐次坐标,那么就可以通过一个方程同时处理向量和点:(x′,y′,z′,w)=xuB+yvB+zwB+wQB(方程3.8)

当w设为0时,该方程可用于处理向量的坐标转换变换;当w设为1时,该方程可用于处理点的坐标转换变换。

方程3.8的优点在于只要我们给出正确的w坐标,就可以同时完成向量和点的处理;不再需要定义两个方程(一个用于向量,另一个用于点)。

其中QB=(Qx,Qy,Qz,1)、uB= (ux,uy,uz,0)、vB=(vx,vy,vz,0)、wB=(wx,wy,wz,0)均为齐次坐标,它们描述了参考系A相对于参考系B的原点位置和坐标轴方向。我们将方程3.9中的4×4矩阵称为坐标转换矩阵或参考系转换矩阵,它可以将参考系A的坐标转换(或映射)为参考系B的坐标。

【投影矩阵】



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值