unity3d UnityGfxDeviceWorker 错误解决方法

unity3d打包ios项目每次进入指定ui就会闪退,查看错误信息如下:

Crashed Thread: 34 UnityGfxDeviceWorker

Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY

Application Specific Information: -[MTLTextureDescriptorInternal validateWithDevice:]:783: failed assertion `MTLTextureDescriptor requests 9 mipmap levels, but the dimensions (139, 139, 1) can only support a maxiumum of 8 levels’

一直没有找到问题的解决办法,网上的大多都是关闭苹果的metal api检测,然后强制使用OpenGL ES来处理图形,放弃高效的方法肯定不可取的。一直追查到最后发现有个ui上使用的纹理居然使用了 mipmap