在 swift 3 转换之前,我的应用程序以前在设备上工作。它仍然适用于模拟器。游戏在设备上加载,然后在 5-6 秒后崩溃。
运行 10.12.1 Beta (16B2333a),设备:10.0.2
错误:
Metal API Validation Enabled/BuildRoot/Library/Caches/com.apple.xbs/Sources/Metal/Metal-85.83/ToolsLayers/Debug/MTLDebugRenderCommandEncoder.mm:130: failed assertion `indexBufferOffset(12) + (indexCount(372) * 2) must be <= [indexBuffer length](240).
无论我的 Sprite 是否在移动,障碍物都会在崩溃之前到达框架的一半。我知道我超出了我的索引范围,看起来它在访问我的金属文件时遇到了问题?我只是不知道该怎么办。帮助表示赞赏!
最佳答案
这对我有用。我必须通过编辑方案来禁用金属验证(Command-Option-R)是到达那里的一种方法,转到选项选项卡。将 Metal API 验证设置为已禁用。
关于ios - Spritekit 应用程序在设备上运行时崩溃,在 swift 3 转换后在模拟器上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39936444/