2017-09-20 10 views
2

今日、私はXcode 9、iOS 11を実行しているiPhone 6でUnity3Dゲームを完全に動作させた。Unity3DゲームがXcode 9でクラッシュする - iOS 11

たびに同じ機能にクラッシュ:

validateRenderPassDescriptor:487: failed assertion `Texture at colorAttachment[0] has usage (0x01) which doesn't specify MTLTextureUsageRenderTarget (0x04)' 

enter image description here

同じコードは

どのようにiOSの10のXcode 8.3.3で完璧に働いた:SetupMetalFBOここ

は、コンソールログですXcode 9のクラッシュを修正するには?


UPDATES_SOLUTION

ソリューションは、ちょうど後藤Xcode->製品 - > Scheme->編集スキーム、シンプルで、メタルAPIの検証を無効にします。この修正プログラムはクラッシュします。 enter image description here

答えて

3

エラーの中のMTLTextureUsageRenderTargetは、これがアップルのメタルの問題であることを示しています。

Unity 4.6.9はiOS 11で動作するには非常に古く、iOSなどのプラットフォームで問題を修正するためにパッチが適用されなくなりました。あなたはまた、IPv6の互換性の問題のために、あなたの最新のアプリがアプリストアから拒否されていることを心配する必要があります。 Xcodeの

.USE OpenGLESの代わりに、金属に

.DISABLEメタルAPI検証:

は、次の3つのオプションがあります。

まず、Auto Graphics APIを無効にしてから、UnityのPlayer SettingsでiOS Graphics APIをOpenGLES2またはOpenGLES3に変更します。

enter image description here

Unityへ.Updateユニティの最新バージョンに#1#2が失敗した場合。 Unityを更新しても問題がまだ残っている場合は、エディタからバグレポートを提出することができます。 Unityをアップデートするとこの問題はなくなると思います。

+0

良いことは、ipaをアーカイブしてデバイスにインストールすると完璧です。だから、アップルが承認するかもしれない。 – Guru

+0

私は、デバイス上で動作していても、IPv6の問題のために非常に多くの拒否を見ました。それはあなたが使用しているAPIに依存しているかもしれません。あるいはUnityがAppleの拒否の問題を修正するために4.6バージョンにパッチを当てることにしたかも – Programmer

+0

溶液1が働いた。 XcodeでMetal API Validationを無効にしました。迅速な回答をいただきありがとうございます。 – Guru

関連する問題