在C#中添加vector2?怎么会这样?

时间:2011-08-24 19:21:04

标签: c# actionscript-3 vector xna flixel

我正在尝试使用Flash / AS3和Flixel进行一些试验,以使汽车自行移动到各种航点。无论如何,我已经找到了微软为XNA / C#编写的一些代码,并且我正在尝试转换它,但我仍然坚持使用矢量两个位...

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

“location”是Vector2。

类似地:

tank.Location + (orth * turningRadius)

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

有人可以告诉我这实际上在做什么吗?

我不明白你如何将单个数字添加或乘以Vector2,但也许我错过了一些明显的东西!!

干杯

克里斯

1 个答案:

答案 0 :(得分:2)

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

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

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