この記事でのバージョン
Unity 2019.4.17f1
はじめに
今回はタイトル通り、Android端末で起動時に
「Error Swappy Failed to initialize SwappyGL」等のエラーが出てクラッシュする場合の対処法です!
Error SwappyCommon Error while getting method: getAppVsyncOffsetNanos
Error Swappy SwappyCommon could not initialize correctly.
Error Swappy Failed to initialize SwappyGL
ちなみに上記のログは以前紹介したUnity上のLogcatで表示しているものです。
原因と対処法
この問題に関するUnity公式のIssue Trackerが以下の物なのですが、
どうやらOptimized Frame Pacingという項目を有効にしていると、
一部のAndroid端末で起こるUnityの不具合のようです。
(自分の場合はAndroid 4.4.2の端末、上記ページでもAndroid 4.4系の端末)
なのでOptimized Frame Pacingを無効にしてビルドし直せば、エラーはなくなるはずです。
ちなみにOptimized Frame PacingとはUnity 2019.2で追加された新機能で、
フレームレートを安定させるための機能らしいです。
Google の Android Gaming and Graphics チームとの共同開発により最適化された Android 用のフレームペーシング機能により、低変動でのフレームの分散を可能にすることで、安定したフレームレートとよりスムーズなゲームプレイ体験を実現します。
なお、2019.4.18f1、2020.2.0b14、2021.1.0a7以降のバージョンでは直ってるので、
Unityをアップデートする事でも解消出来ます。