精灵动画从左到右,我应该选择啥?动态的还是运动的?

Posted

技术标签:

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

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

【问题讨论】:

【参考方案1】:

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

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

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

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

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

【讨论】:

要记住的一点是,在 Libgdx 中,使用 box2d,运动物体也可以具有速度,而不是通过设置不推荐用于物理游戏的位置。此外,运动体仍然允许碰撞检测,但不对任何力做出反应

以上是关于精灵动画从左到右,我应该选择啥?动态的还是运动的?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 nextjs 应用程序的导航栏上从左到右添加动画?

Tableview 动画从左到右,带段控制

我用css让一个图片从左到右移动,有没有啥办法当鼠标移动到图片上时,图片停止移动,鼠标放开后继续

核心动画从左到右

UIImageView从左到右改变动画

iOS 用从左到右的动画取消隐藏视图