我的问题是在使用Vector2.Normalize函数时(特别是在XNA中)
这可能是我对矢量数学的不理解,但正如我所理解的那样,Normalizing会给你一个方向或一个渐变.
如果你在一个方向上施加一个速度,例如向上和向下,它将只返回特定轴的加号或负值1以及对我有意义的方向.
但是如果我要求对矢量2进行标准化,那么对角线移动,比如每1个单位向下一个单位.它返回这个.
{X:0.7071068 Y:0.7071068}
这让我感到惊讶,因为我认为它更像是[X:0.5 Y:0.5]
我的理由是什么?如果一个方向的绝对值为1而另一个方向的绝对值为1,则不应该以45度角移动产生0.5的中点?
并且不会增加0.5和0.5会产生1的大小我认为标准化的矢量应该坚持吗?
我不知道我是否可以使用像DYDX这样的东西看到自己的答案,因为它只是一个方向,而不是一些已知终点的线.
| 归档时间: |
|
| 查看次数: |
862 次 |
| 最近记录: |