1

我正在对 Flash/AS3 和 Flixel 进行一些试验和错误,以使汽车自行移动到各种航路点。无论如何,我已经找到了一些 Microsoft 用于 XNA/C# 的代码,并正在尝试对其进行转换,但我被困在与向量有关的两个位上......

location = location + (Direction *
                    MoveSpeed * elapsedTime);

“位置”是一个 Vector2。

相似地:

tank.Location + (orth * turningRadius)

“.Location”和“orth”也是Vector2的。

谁能告诉我这实际上在做什么?

我不明白如何将单个数字添加或相乘到 Vector2 但也许我遗漏了一些明显的东西!

干杯

克里斯

4

1 回答 1

2

编译器正在为您做一些好事。实际上,代码在做什么是这样的:

location.X += (orth.X * turningRadius);
location.Y += (orth.Y * turningRadius);

快速简单的矢量数学介绍:http: //johnnygizmo.blogspot.com/2008/10/xna-sidebar-intro-to-vector-math.html

于 2011-08-24T19:34:41.327 回答