我有一个比视口(viewport)大得多的游戏世界,主角始终位于视口(viewport)的中央,背景层四处移动以给人以角色移动的印象。我想让游戏世界环绕,这意味着如果角色继续向左或向右移动,他们最终将回到起始位置。游戏世界中会有移动的实体,所以我预见到的最大问题是,如果你走到 map 的最右边,你应该能够看到最左边的第一个小部分内的任何移动实体。 map 。
我对此进行了一些思考,我想出的任何解决方案似乎都太复杂了。就像并排创建两个相同的游戏世界并相应地移动它们一样。我希望有一个优雅的解决方案。如果您能分享任何专业知识,我们将不胜感激。
我在 iPhone 上使用 cocos2d 以防万一。
最佳答案
一个例子可能是为您的相机设置一个 x,y 偏移量,以及一个 Sprite 对象的多维数组。
随着玩家的移动,偏移值会发生变化,例如,xMove = -1.4 和 yMove = +2.6。
然后您将迭代并按该数量更改所有图 block 的位置。
接下来,您将识别离屏幕中心 (0,0) 太远的 Sprite 并将它们重新定位到另一侧,以便它们始终可见。
这一切都将在同一个计划的“滴答”中完成,因此不会出现图形伪影。
我很惊讶还没有人为 cocos2d 制作可包装的瓦片 map 。
关于iphone - 如何在 iPhone 上使用 cocos2d 处理环绕的游戏世界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9394847/