在我目前正在开发的cocos2d游戏中,我在屏幕右侧创建了一些精灵,以固定的速度向左移动,然后移除一次他们不在屏幕上。Sprite不会在屏幕边缘移动
This works great。但是当图像碰到屏幕的左侧时,它跳过一个节拍,然后完美地继续。
这真的很明显,因为我的游戏中的一个元素是2D程序地形。我的游戏产生了一个无限长的山丘,它以相当小的块形式完成。这些块被紧紧地放在一起,并一起移过屏幕。但是当一个块的左边缘碰到屏幕的左边缘时,它会延迟几个像素,并导致难看的重叠。
我用下面的代码来移动大块:
Chunk.position = CGPointMake(Chunk.position.x - panSpeed, Chunk.position.y);
为什么会这样发生?
如何移动相机。一致的速度还是变数? (我认为panSpeed是相机?) – 2012-04-22 02:56:14
没有使用相机。我的游戏只是使用我发布的代码移动每个块。 panSpeed是用于移动块的计算值。该值每帧计算一次,每帧所有块都使用相同的值,因为直到下一帧才重新计算。所以我认为这是一个与cocos2d有关的问题,因为每一个都移动了完全相同的距离,但是当一个点击屏幕的左边缘时,它不能正确移动。 – Bananable 2012-04-22 04:06:51