试图寻求和逃离行为。无法隐式转换类型' void'到' Microsoft.Xna.Framework.Vector2'

时间:2015-03-18 04:11:24

标签: c# xna artificial-intelligence behavior seek

我正在尝试为AI项目制作一个Seek and Flee行为。我尝试了算法,但是我得到了这个错误。我不明白为什么它不起作用我可以使用一些指导。

以下是无效的代码段:

public Vector2 Seek(Vector2 source, Vector2 target, float maxAccel)
{
     Vector2 acceleration = (target - source).Normalize() * maxAccel;
     return acceleration;

}

1 个答案:

答案 0 :(得分:1)

documentation for the Normalize() function表示它返回空格,但您尝试将其分配给Vector2类型的变量。您可能希望使用Normalize()函数的this variant,如下所示:

Vector2 acceleration = Vector2.Normalize(target - source) * maxAccel;

我假设targetsource都属于Vector2maxAccel是标量值。