我有一个游戏正在进行(2D)游戏,当我尝试获取鼠标坐标时,它们是错误的。我不知道是什么问题,但这里是我的代码,我得到的坐标:为什么我的游戏解释鼠标指针坐标错误
MouseState mouseState;
mouseState = Mouse.GetState();
test = new Tower(TowerTexture, new Vector2(mouseState.X, mouseState.Y));
//test is drawn where mouse pointer is thought to be and it is drawn off
这里是塔绘制代码:
foreach (Tower tower in towers)
{
tower.Draw(spriteBatch);
}
这里是塔绘制函数:
public virtual void Draw(SpriteBatch spriteBatch)
{
spriteBatch.Draw(texture, center, null, Color.White, rotation,
origin, 1.0f, SpriteEffects.None, 0);
}
一件事是,当鼠标指针,真正的一个较为接近,在左上角的假设鼠标坐标偏移量较少,但你去越来越接近右下屏幕的角落假设的鼠标坐标更远。 我真的不知道什么是错,但任何想法可能是错误的将不胜感激。谢谢!
坐标错误...以什么方式? – melak47
你能把代码粘贴到你画塔的地方吗? –
您可能想要提供一些关于'mouseState.X'和'mouseState.Y'返回的位置是“关闭”的更多信息。根据文档,返回的坐标是相对于游戏窗口的左上角。 –