Unity WebGL の実行環境が PC かモバイル端末かを判別するスクリプトを公開しました

PC モバイル

はじめに

  • PC では Post Processing を有効にしたいけど、モバイル端末では重たいので無効にしたい。
  • モバイル端末の場合はOnPointer*を切ってInput.Touchesを使いたい。

……というように、PC とモバイル端末で処理を分けたいという場合がたまにあります。そんな時、このスクリプトを導入することで、実行環境が PC かモバイル端末かを判別することができます。

github.com

使い方

CheckIfMobileForUnityWebGL.jslib内のIsMobile()を呼ぶと、モバイル端末ならtrue、PC ならfalseが返ってきます。以下のように呼び出してください。

#if !UNITY_EDITOR && UNITY_WEBGL
    [System.Runtime.InteropServices.DllImport("__Internal")]
    private static extern bool IsMobile();
#endif

    private void CheckIfMobile()
    {
        var isMobile = false;

#if !UNITY_EDITOR && UNITY_WEBGL
        isMobile = IsMobile();
#endif

        GetComponent<Text>().text = isMobile ? "Mobile" : "PC";
    }

インストール

Package Manager

https://github.com/gigacee/CheckIfMobileForUnityWebGL.git?path=Assets/Plugins/CheckIfMobileForUnityWebGL

手動

Assets/Plugins/CheckIfMobileForUnityWebGL/CheckIfMobileForUnityWebGL.jslibを、自分のプロジェクトにコピーしてください。

※ 必ずAssets/Plugins/に配置してください。でないと機能しません。

The coloring of this site is Dracula PRO🧛🏻‍♂️
This website uses the FontAwesome icons licensed under CC BY 4.0.

2020 GIGA CREATION