鼠标左上角坐标变为负数

时间:2014-02-08 03:58:40

标签: c# xna mouse coordinates

我正在制作游戏,而且我处于非常非常早期的阶段。

现在,如果按CTRL + S,我会在鼠标坐标处创建一个船(精灵)。每次单击鼠标时,单击多次会创建一个新船。右键单击任意位置时,最后创建的船只会移动到该鼠标位置。

在Draw方法的主要Game1.cs文件中,我显示了一堆调试信息,包括鼠标X和Y坐标。

我注意到船只在奇怪的路径上移动,而不是完全朝向鼠标坐标。所以我认为这是一个数学错误或其他什么,直到我注意到鼠标坐标 - 左上角坐标突然变为负数。

调试此问题时,我会逐步查看监视窗口中Microsoft.Xna.Framework.Input.Mouse.GetState()的左上角坐标,我注意到当我创建一个继承自Entity的船的实例时,它继承了来自Microsoft.Xna.Framework.Game - 一旦实体构造函数被命中,左上角坐标就会变为负数。

为什么会发生这种情况,我该如何防止这种情况?

谢谢

PS:一些可能有用的信息: - 我有2台显示器 - 在窗口或全屏模式下播放无济于事

编辑:如果我从Microsoft.Xna.Framework.Game类删除Entity继承,问题就会消失。我仍然想知道为什么会这样。

0 个答案:

没有答案