3D游戏开发所需的数学基础——点和矢量

本文详细介绍了点和矢量的概念,包括它们在笛卡尔坐标系中的表示方式。点是位置,没有大小,而矢量包含模和方向。矢量运算包括与标量的乘法/除法、加法/减法、模的计算、单位矢量的求解以及点积和叉积。点积和叉积提供了描述矢量间关系和角度的方法,而矢量运算在物理学和计算机图形学等领域广泛应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:点(point)

点是N维空间(游戏中主要是二维和三维空间)中的一个位置,它没有大小,宽度这类概念。
在笛卡尔坐标系中,我们可以这样表示一个点。
二维空间中的点如:P=(PxP_{x}Px, PyP_{y}Py)
三维空间中的点如:P=(PxP_{x}Px, PyP_{y}Py, PzP_{z}Pz)

二:矢量(vector, 也称为向量)

通常来讲,矢量是指N维空间中一种包含了模(magnitude)和方向(direction)的有向线段
我们通常讲的速度就是一种典型的矢量,例如:一辆车的速度是向北40km/h。向北指明了矢量的方向,40km/h指明了矢量的模。
而标量只有模没有方向,生活中常说到的距离就是一种标量。例如:我家离公司只要100米,这里的100米就是一个标量。

1. 矢量的模指的是这个矢量的长度。一个矢量的长度可以是任意的非负数。
2. 矢量的方向则描述了这个矢量在空间中的指向。

我们可以用v=(x, y)来表示二维矢量,用v=(x, y, z)来表示三维矢量,用v=(x, y, z, w)来表示四维矢量。

三:点和矢量的区别

  1. 点是一个没有大小之分的空间中的位置,而矢量是一个有模和方向但没有位置的量。
  2. 矢量通常用于描述偏移量,它可以用于描述相对位置,即相对于另一个点的位置。
  3. 如果我们把矢量的尾固定在坐标系原点,那么这个矢量的表示就和点的表示重合了。

四:矢量运算

1. 矢量和标量的乘法/除法

乘法只需把矢量的每个分量和标量相乘即可;
公式如下:kv = (kvxv_{x}vx, kvyv_{y}vy, kvzv_{z}vz)

同理,除法等同于和这个标量的倒数相乘;

注意: 对于乘法,矢量和标量的位置可以互换。但对于除法,只能是矢量被标量除。

几何意义: 把一个矢量v和一个标量k相乘,意味着对矢量v进行一个大小为|k|的缩放。

2. 矢量的加法和减法

只需把两个矢量的对应分量进行相加或相减即可,公式如下:
a + b = (axa_{x}ax + bxb_{x}bx, aya_{y}ay + byb_{y}by, aza_{z}az + bzb_{z}bz)

a - b = (axa_{x}ax - bxb_{x}bx, aya_{y}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神小夜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值