Unity3D 游戏在 Xcode 9 - iOS 11 时崩溃
Unity3D Game Crashes in Xcode 9 - iOS 11
今天我在 Xcode 9、iPhone 6 运行 iOS 11 发布了完全可用的 Unity3D 游戏。它在启动时崩溃。
每次在同一个函数中崩溃:SetupMetalFBO
这是控制台日志:
validateRenderPassDescriptor:487: failed assertion `Texture at colorAttachment[0] has usage (0x01) which doesn't specify MTLTextureUsageRenderTarget (0x04)'
相同的代码与 Xcode 8.3.3 iOS 10.
完美配合
如何修复 Xcode 9 中的崩溃?
UPDATES_SOLUTION :
解决方法很简单,只需转到Xcode->Product->Scheme->Edit Scheme,禁用Metal API Validation。此修复崩溃。
错误中的MTLTextureUsageRenderTarget
说明这是苹果的Metal问题。
Unity 4.6.9 在 iOS11 上工作已经非常老了,并且不再修补以修复 iOS 等平台上的问题。您还应该担心您的最新应用会因 IPv6 兼容问题而被应用商店拒绝。
你有三个选择:
1.在 Xcode
中禁用 Metal API 验证
2。使用 OpenGLES 而不是 Metal。
首先,禁用自动图形 API 然后在 Unity 的播放器设置中将 iOS 图形 API 更改为 OpenGLES2 或 OpenGLES3。
3。如果 #1 和 #2[=33,请将 Unity 更新到最新版本的 Unity =] 失败。如果您更新 Unity 但问题仍然存在,那么您可以从编辑器中提交错误报告。如果您更新 Unity,我希望这个问题会消失。
今天我在 Xcode 9、iPhone 6 运行 iOS 11 发布了完全可用的 Unity3D 游戏。它在启动时崩溃。
每次在同一个函数中崩溃:SetupMetalFBO
这是控制台日志:
validateRenderPassDescriptor:487: failed assertion `Texture at colorAttachment[0] has usage (0x01) which doesn't specify MTLTextureUsageRenderTarget (0x04)'
相同的代码与 Xcode 8.3.3 iOS 10.
完美配合如何修复 Xcode 9 中的崩溃?
UPDATES_SOLUTION :
解决方法很简单,只需转到Xcode->Product->Scheme->Edit Scheme,禁用Metal API Validation。此修复崩溃。
错误中的MTLTextureUsageRenderTarget
说明这是苹果的Metal问题。
Unity 4.6.9 在 iOS11 上工作已经非常老了,并且不再修补以修复 iOS 等平台上的问题。您还应该担心您的最新应用会因 IPv6 兼容问题而被应用商店拒绝。
你有三个选择:
1.在 Xcode
中禁用 Metal API 验证2。使用 OpenGLES 而不是 Metal。
首先,禁用自动图形 API 然后在 Unity 的播放器设置中将 iOS 图形 API 更改为 OpenGLES2 或 OpenGLES3。
3。如果 #1 和 #2[=33,请将 Unity 更新到最新版本的 Unity =] 失败。如果您更新 Unity 但问题仍然存在,那么您可以从编辑器中提交错误报告。如果您更新 Unity,我希望这个问题会消失。