2011-03-19 49 views
0

在我的cocos2d-iphone项目中,我使用Chipmunk提供物理模型。另外,我正在使用Chipmunk的SpaceManager obj-c包装器。Cocos2d iPhone花栗鼠同步问题

我给Chipmunk一个恒定的时间步。

现在,我遇到的问题是物理模拟与游戏循环不同步。这意味着游戏玩法的时间根据FPS的不同而不同(具体而言,这取决于我是在模拟器,设备还是较新的设备上运行它)。

这对玩法具有灾难性影响。例如,如果FPS出于某种原因而放慢速度,则物理仿真爬行并且对象移动速度要慢得多。这使得关卡设计几乎不可能!

请帮忙!

回答

0

你可以尝试在游戏中使用两个循环。使用NSTimer刺激Chipmunk和CADisplayLink只用于绘图。在每次重绘时,请向物理模型询问物体的当前位置。

0

所以,我通过使用Spacemanager的出血端版本(来自源)解决了这个问题。它具有改进的阶梯函数(只要您使用constantDt),可以“累加”自上次重新计算以来积累的任何额外时间,并对其进行解释。

谢谢MobileBros!