引言
在游戏开发中,向量(Vector)的应用无处不在,诸如碰撞检测,物理仿真,计算机3D图形学中,都可以看到向量的身影。所以,想要学好3D图形学,或者物理仿真之类的技术,向量是必须要掌握的基本功。
在下面将简单介绍一些向量的基本使用方法。
向量的定义
向量指的是同时具有长度和方向的一个量。这样的具有长度和方向的量被称为矢量,而只有长度,没有方向的量被称为标量。所以向量是矢量的一种。在物理上,矢量到处可见,如力,位移,速度等都是矢量,他们有方向,有大小。
向量的表示
在图形上,向量使用一个带箭头的线段来表示。
在数值上,向量用坐标系中的坐标来表示。从这个坐标系的原点,到向量的坐标的一条带箭头的线段,就是向量的图形表示了。
在表达式中,向量使用下图的方式表示:
即表达式的字符,上面带有一个箭头,这整个符号就表示一个向量。
左手坐标系和右手坐标系
在DirectX中使用的是称为左手坐标系的3D坐标系。左手坐标系的判定方法如下:
如果你将你的左手手指指向正X轴,然后自然弯曲,弯曲的方向是朝着正Y轴方向弯曲,将大拇指伸直。如果大拇指指向的方向为正Z轴的话,那么这个坐标系就是左手坐标系。
如果读者看文字,不太清楚的话,可以看下图,图中不仅给出了左手坐标系,还给出了右手坐标系的判定方法:
(Left-handed Cartesian Coordinate 为左手坐标系,即左边的图, Right-handed Cartesian Coordinate为右手坐标系,即右边的图)
向量基本操作及几何意义
在上面我们说过,向量可以使用数值方式来表示,也就是说,可以用下面的方式来表示一个向量: