所以我正在开发一款使用SpriteKit的游戏。为了让游戏更有趣,我决定使用UIDynamicAnimator为我的游戏中的UIKit元素添加一些物理元素。除了有一个主要问题,一切都很好。我分配/瞬间初始化一个UIDynamicAnimator像这样:奇怪的SpriteKit + UIDynamics Bug
animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view];
在我的游戏物理学机构得到完全抵消。即使我没有指定参考视图,物理学仍然会得到抵消。
奇怪的是,我在一个完全独立的ViewController中创建了UIDynamicAnimator,所以它不像它共享相同的参考视图或类似的东西。
更新:即使简单地创建UIDynamicItemBehavior像这样的行为:
UIDynamicBehavior* a = [[UIDynamicBehavior alloc] init];
打乱了我的场景的物理。
我假设这是SpriteKit和UIDynamics共享的物理引擎的内部错误。
任何人有任何建议吗?
在WWDC 2013的视频[入门UIKit Dynamics](https: //developer.apple.com/wwdc/videos/?include=206#206)Apple讨论了何时可以使用一个,何时可以使用另一个。很明显,苹果公司将它们视为替代品(在幕后使用相同的物理引擎,请参阅[模拟物理](https://developer.apple.com/library/ios/documentation/GraphicsAnimation/Conceptual/SpriteKit_PG/Physics/Physics.html )),而不是你同时使用的两种技术。 – Rob
DUDE我有同样的问题 – michaelsnowden