【问题标题】:Sprite animation left to right, what should I choose? Dynamic or Kinematic?精灵动画从左到右,我应该选择什么?动态的还是运动的?
【发布时间】:2016-11-03 00:55:53
【问题描述】:

我正在尝试使用 Sprite 图像制作动画。动画是一个角色从屏幕的左向右移动,然后从右向左不停地移动(循环)。我该怎么做呢?我应该分配角色(演员)的物理动力学还是运动学?

【问题讨论】:

    标签: java android android-studio libgdx


    【解决方案1】:

    基本上,动态物体是通过力来控制的,而运动物体则可以直接分配位置。因此,运动体更符合您的要求。那么问题就变成了你是否需要对这个角色进行碰撞检测。

    计算一个左右移动的角色的位置可以这样完成:

    float x = t % (2 * width);
    if (x > width) x = 2 * width - x;
    

    其中tSystem.currentTimeMillis 或等效项的输出。或者你可以使用 TweenEngine 来达到同样的效果。然后可以像下面这样绘制精灵:

    sprite.setX(x);
    sprite.draw(spriteBatch);
    

    【讨论】:

    • 要记住的一点是,在 Libgdx 中,使用 box2d,运动物体也可以具有速度,而不是通过设置不推荐用于物理游戏的位置。此外,运动体仍然允许碰撞检测,但不对任何力做出反应
    猜你喜欢
    • 2012-10-08
    • 1970-01-01
    • 1970-01-01
    • 2015-02-02
    • 1970-01-01
    • 2014-01-27
    • 2019-09-04
    • 2011-07-06
    • 1970-01-01
    相关资源
    最近更新 更多