所以我问了一个与此问题略有相似的问题,但没有得到答案所以我想我会更多地调查它并缩小我的问题以使其更简单。
在我的Box2D游戏中,我使用物理编辑器来处理我的碰撞检测。在我的主类(GameLayer)中,我有一个设置ShapeCache的方法,我把它放在init中:
- (void)setupShapeCache
{
[[ShapeCache sharedShapeCache] addShapesWithFile:@"shapes.plist"];
}
“shapes.plist”在我的目标中(在复制包资源下),它位于我项目的资源文件夹中,其名称与我在整个xcode项目中使用的名称相同。
当我运行游戏时,我的ShapeCache类中出现断言失败错误。我已经发现这是因为“shapes.plist”文件永远不会加载。
确切的错误如下:
Assertion failed: (so), function -[ShapeCache addFixturesToBody:forShapeName:userdataCallBack:],
file /Users/***/Desktop/***/***/ShapeCache.mm, line 92.
我的ShapeCache类改编自Space Game Starter Kit,但我不认为这有所不同(SpaceGame ShapeCache vs PhysicsEditor ShapeCache)
有没有人知道为什么我的物理编辑器plist(shapes.plist)永远不会加载?
如果有更多信息有帮助,请告诉我!
非常感谢你!
:)