Ios 滚动与物理相结合,将我的精灵移出屏幕

Ios 滚动与物理相结合,将我的精灵移出屏幕,ios,objective-c,sprite-kit,Ios,Objective C,Sprite Kit,我正在用SpriteKit实现一个侧面滚动游戏: 只要我的精灵留在屏幕中间,我就移动精灵~ 当精灵到达屏幕的左侧或右侧时,我移动的是关卡而不是精灵: 除非我的精灵与另一个对象发生碰撞,否则效果相当好。在这种情况下,级别(由我的代码触发)和精灵(由物理引擎触发)将移动,精灵将移动到屏幕外: 我试图阻止物理引擎产生的冲动。这没用 你知道怎么处理吗 谢谢 Stefan我想“移动关卡”是指移动背景视图 你为什么不在一个与背景大小相同的区域中移动精灵呢?您可以滚动以保持精灵可见,而不会干扰物理逻辑和

我正在用SpriteKit实现一个侧面滚动游戏:

只要我的精灵留在屏幕中间,我就移动精灵~

当精灵到达屏幕的左侧或右侧时,我移动的是关卡而不是精灵:

除非我的精灵与另一个对象发生碰撞,否则效果相当好。在这种情况下,级别(由我的代码触发)和精灵(由物理引擎触发)将移动,精灵将移动到屏幕外:

我试图阻止物理引擎产生的冲动。这没用

你知道怎么处理吗

谢谢 Stefan

我想“移动关卡”是指移动背景视图


你为什么不在一个与背景大小相同的区域中移动精灵呢?您可以滚动以保持精灵可见,而不会干扰物理逻辑和其他运动操作。

谢谢您的回答。我的形象有误导性。这不是背景。问题是我有一个比屏幕还大的关卡。碰撞后,精灵向右移动得更快,因为我的关卡正在滚动。因此,您可能需要调整滚动速度以适应这种情况。这和我在回答中的意思有点相似。我试过了。问题是,我无法检测到精灵的速度。你现在知道,如何得到碰撞产生的速度吗?谢谢,您始终拥有节点的
位置
属性。是的。我试试看。我想现在我走对了方向。只是今天没时间修好。感谢您的帮助。请参阅《spritekit编程指南》中的滚动/相机跟随节点示例,这使物理保持同步非常好!正是我需要的。非常感谢。