所以我正在使用 SpriteKit 开发游戏。为了让游戏更有趣,我决定使用 UIDynamicAnimator 为我的游戏中的 UIKit 元素添加一些物理效果。一切都很好,除了有一个主要问题。当我像这样分配/初始化 UIDynamicAnimator 时:
animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view];
我游戏中的物理实体完全抵消了。即使我没有指定参考视图,物理仍然会偏移。
奇怪的是,我在一个完全独立的 ViewController 中创建 UIDynamicAnimator,所以它不像共享相同的参考视图或类似的东西。
更新:即使是像这样简单地创建 UIDynamicItemBehavior 的行为:
UIDynamicBehavior* a = [[UIDynamicBehavior alloc] init];
弄乱了我场景的物理特性。
我假设这是 SpriteKit 和 UIDynamics 共享的物理引擎的内部错误。
有人有什么建议吗?