【问题标题】:How to attach a weapon to players hand and implement dynamic aiming?如何将武器附在玩家手上并实现动态瞄准?
【发布时间】:2020-05-28 19:49:51
【问题描述】:

我希望武器指向鼠标所在的方向,[![This is my player texture][1]][1]

我想要的是,如果武器在玩家手中,那么武器与手一起,与鼠标所在方向的身体完全同步

我不知道如何实现这个机制,请帮助

【问题讨论】:

    标签: libgdx 2d game-engine lwjgl game-development


    【解决方案1】:

    首先,这完全取决于角色的装配方式。您是否正在使用 Spriter 或类似的东西来制作 2d 骨骼动画装备?如果是这样,那么如果您只是将武器附加到手骨上,那么其中的 IK 应该会处理武器。如果不是,那么简单的触发将成为您的朋友。获取鼠标与角色或角色手部中心的角度,然后 cos 为武器的 X 位置,sin 为 Y 位置。

    【讨论】:

    • 旋转很好,但是如何将手部纹理与玩家身体同步?定位也是困难的部分
    • 同样,如果您使用骨骼动画,那么您只需将手部骨骼添加到与手臂相连的装备中。在程序中,您将每帧获取该骨骼在世界坐标中的位置和旋转,并将您的剑精灵移动/旋转到这些坐标。如果您不使用骨骼动画,那么 IMO 您会在尝试添加这样的功能而不是需要时让自己更加困难。查看 Spriter 或 Spine(2 个最常用的骨骼动画框架)自己做,或者我很确定 Unity 和 Unreal Engine 都具有 2D 骨骼动画功能。
    • 此外,如果您一心只想在大多数情况下使用静态精灵,那么您基本上需要打开图像编辑器,找出手在每一帧的局部坐标,然后在您的动画数据包括一个向量2,用于每帧的武器偏移,以将剑附加到每一帧。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 2018-06-15
    相关资源
    最近更新 更多