SpriteKit 示例游戏错误:纹理未加载?

Posted

技术标签:

【中文标题】SpriteKit 示例游戏错误:纹理未加载?【英文标题】:SpriteKit sample game bug: textures not loading? 【发布时间】:2014-02-24 16:05:29 【问题描述】:

今天我尝试在模拟器或 iPhone 上运行简单的、未修改的“Adventure”spritekit 示例 (downloaded from Apple),并遇到了一个非常奇怪的行为:

纹理全部替换为一个大的红色“X”

根本没有运行时错误,但是当我在应该加载纹理的地方中断时,图集似乎是空的(在 [... atlasNamed:@"Tiles"] 之后)。从它打印的描述是“0纹理”。此外,我检查了“复制捆绑资源”阶段,并包含 Tiles.atlas。地图集也没有什么可疑之处,它们被添加到目标中,图片在里面。

正如我所说,我刚刚下载了 .zip,解压缩,打开它并尝试在我的手机上运行它。 我什至做了两次,并清理了所有临时数据等等......

你能帮我吗,或者有没有人遇到过同样奇怪的问题? 提前谢谢!

-------附录---------- 一些更奇怪的事实:

故事板也没有修改,拒绝显示“Archer”和“Warrior”按钮图像,而按钮本身它们只是不可见的框架。当我用相同的设置制作另一个按钮时,它是可见的并且图像就在那里。

同时,我已经完全重启了我的电脑,检查了 diskUitility 中的文件夹权限,多次重启 Xcode,删除了派生数据,尝试删除 Tiles.atlas 文件夹并再次添加,构建时没有 Tiles.atlas 文件夹,重新检查项目设置(纹理图集已启用)等...我很绝望,如您所见。

【问题讨论】:

这很有趣,因为我刚刚从我放入您帖子的链接中下载了它,它完全有效。 是的,真的很奇怪......我看不出它为什么不能工作,当我编译游戏时甚至没有警告。代码看起来很正常,项目设置也很正常。下一步我将完全卸载 xCode 并重新安装它... 在加载任何图集并单击检查器中的信息按钮后中断时,您是否还会得到 0 纹理描述?在这种情况下,我不得不寻找其他地方...... 【参考方案1】:

发现问题:

尝试将游戏放入包含以下任何元音的文件夹中:ä ö ü

那是德语的“元音变音”。这对 Apple 的任何其他 API 来说都没有问题,但 Java 却有问题(例如,BlueJ 看不到带有这些字母的文件夹),而且显然是 SpriteKit。

最后,atlas 文件根本没有复制到包中,因为路径中包含“元音变音”。那是一个 XCode 或编译器错误。在哪里提交报告?或者有人可以帮我做吗?

【讨论】:

我提交了错误报告。编号16152428 您好,感谢您提交雷达。社区因此而爱你。也很抱歉我直到现在才看到你的帖子。 嘿,没有理由道歉!没有人 24/7 在那里 :) 我只是松了一口气,这是一个可重现的错误,我没有疯...

以上是关于SpriteKit 示例游戏错误:纹理未加载?的主要内容,如果未能解决你的问题,请参考以下文章

SpriteKit 在哪里为数千个精灵加载纹理图集

使用 SpriteKit 的自定义框架 - 未加载资产文件

在 SpriteKit 中预加载纹理

如果我稍后使用 SKTextureAtlas,Sprite Kit 是不是会多次加载纹理图集?

obj 模型加载纹理坐标和顶点位置未正确加载

“纹理图集不支持模板渲染”SpriteKit 和 Xcode