我应该如何在屏幕上使跳转时间游戏的角色静止?

我决定学习Pygame,并尝试制作一个由Google的T-rex跳跃游戏启发的简单游戏。 然而,我偶然发现了一个我似乎无法理解的问题:我怎样才能实现一个可以跟上我角色和平台的滚动/相机

现在它只是从屏幕上消失。 我已经这样做了,平台以与角色相同的速度向右移动。 以下是目前看起来像GIF:

在这里输入图像说明

对于这样的游戏来说,这是最好的方式吗?角色的速度总是不变的,还是有更好的方式来增加未来的障碍?

你正在反思。 对于恐龙游戏,你需要2个精灵(不要担心翼手龙或不同大小的仙人掌):

  • 迪诺

恐龙不左右移动 – 他停留在屏幕上的同一个地方,按下空间只会让他跳起来 – 重力让他跌倒。 “地”只是你停下来的y坐标。 用pygame.draw.line()绘制一条线

  • 仙人掌

一个仙人掌会产生一个x位置> screen_width,并且它的x_velocity是<0。这将使它看起来像是从右到左在屏幕上移动。 当一个仙人掌有一个x_pos <0,你删除它。

而已。 不需要相机或移动平台等。幻想是恐龙正在运行,但实际上它只是仙人掌。 一些小小的云层比仙人掌的移动速度要慢一些,这样的错觉会有所改善。

我从来没有使用Pygame,但它看起来好像你移动相机的地形。 也许不是最好的措辞,但你应该只是将地形向左移动,保持T-rex在X轴上的一个恒定点,然后当你只是简单地在Y轴上移动时,将地形移到左侧(以恒定的速度或随时间增加的速度)。 这样看起来就好像T-rex有动静,而实际上地面正在向下移动。