小编Sai*_*aku的帖子

向鼠标当前位置旋转图像

我正在尝试在 XNA 中制作一个简单的游戏。

我有一个旁边有精灵表的播放器。精灵表是一种带有尖端的武器。

我怎样才能让这个精灵旋转并使其尖端面向鼠标位置?

        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);
Run Code Online (Sandbox Code Playgroud)

虽然这使它旋转,但它不能正确跟随鼠标,并且表现得很奇怪。

关于如何进行这项工作有任何提示吗?

我遇到的另一个问题是定义一个点,即枪口,并根据角度更新它,以便射击将从该点向鼠标正确射击。

谢谢


截图: 尽早将鼠标和光标放置到位

玩超级激光

对每种类型的敌人使用超级激光

再次感谢,结果证明这是一个有趣的游戏。

c# xna rotation

2
推荐指数
1
解决办法
3338
查看次数

标签 统计

c# ×1

rotation ×1

xna ×1