【发布时间】:2012-12-10 03:23:02
【问题描述】:
我正在尝试在 XNA 中制作一个简单的游戏。
我有一个播放器旁边有 spritesheet。 spritesheet 是一种武器,带有提示。
我怎样才能让这个精灵旋转,使其尖端朝向鼠标位置?
float y2 = m_Mouse.Y;
float y1 = m_WeaponOrigin.Y;
float x2 = m_Mouse.X;
float x1 = m_WeaponOrigin.X;
// Get angle from mouse position.
m_Radians = (float) Math.Atan2((y2 - y1), (x2 - x1));
Drawing with:
activeSpriteBatch.Draw(m_WeaponImage, m_WeaponPos, r, Color.White, m_Radians, m_WeaponOrigin, 1.0f, SpriteEffects.None, 0.100f);
虽然这使它旋转,但它不能正确跟随鼠标,并且行为怪异。
关于如何完成这项工作的任何提示?
我遇到的另一个问题是定义一个点,即枪口,并根据角度对其进行更新,以便从该点向鼠标正确射击。
谢谢
截图:
再次感谢,原来是个有趣的游戏。
【问题讨论】:
-
你能贴一张武器的图片,让我们看看你想瞄准什么类型的形状吗?