0

所以我问了一个与这个问题稍微相似的问题,但没有得到答案,所以我想我会更多地自己研究它,并缩小我的问题范围,让它更简单。

在我的 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) 永远不会加载?

如果有更多信息有帮助,请告诉我!

太感谢了!

:)

4

0 回答 0