uGUIではなく3年ぶりくらいにNGUIを一時的に使うことになったのだけど、よく出来てるアセットだ。。。(今更orz
— bao_bao_ni (@bao_bao_ni) 2017年10月12日
本記事は私のこのツイートについての詳細を紹介します。
UnityARKitPluginはiOS11から提供されているARKitをUnityでお手軽に使うことが出来るプラグインです。
開発中に解決できなかった問題が発生しましたので共有します。
実機確認時、UnityARKitPluginと同時にuGUIを使用するとuGUI描画が崩れます。具体的にどういうことかというと、こちらの画像を御覧ください。
このように、実機で確認するとuGUI部分がピンク色になってしまいました。
この現象は
- uGUIで使用しているシェーダが見つからない
- マテリアルからシェーダが外れている
- シェーダコンパイルが失敗している
シェーダ関連の何かしらに問題が発生していると思われます。
しかし、uGUIのシェーダ自体はUnity内部のResourcesに格納されているため、
- 見つからないということは考えにくい
- コンパイルにミスっていることも考えにくい
以上の事からシェーダが何かしらの原因で外れている事が推測されます。
今やってる案件がスケジュール的に危うかったので、この問題調査は先送りにしています。
UIをどうしても使いたかったので、解決策としてNGUIを試し、正常に描画処理されることを確認できました。
この案件が終了次第、ソースを追ってみようと思います。
一応フォーラムには報告済みなので、UnityARKitPluginのアップデートで対応されると助かります。
環境
- Unity2017.1.0f3
- NGUI 3.11.4