TASOGARE GAMES BLOG

タソガレゲイムス :: 神奈川県でゲームを開発する人々のブログです。

Unityで振動(バイブレーション)を扱う

Unity逆引き:振動(バイブレーション)を扱う

  • 端末が振動機能に対応しているかを取得する
  • 端末を振動させる
  • 端末をn秒振動させる

端末が振動機能に対応しているかを取得する

端末がバイブレーションに対応しているかどうかは、SystemInfo.supportsVibrationで確認できます。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void Start()
    {
        if (SystemInfo.supportsVibration) print("振動対応");
        else print("振動非対応");
    }
}

端末を振動させる

端末をバイブレーションさせるにはHandheld.Vibrate()を使います。振動時間は1秒で固定です。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void ExampleHandler()
    {
        Handheld.Vibrate();
    }
}

端末をn秒振動させる

UnityEngineのみでは任意の秒数だけバイブレーションさせることは出来ません。これを実現するには、ネイティブプラグインをアセットストアから購入するか、自前で作成する必要があります。 ネイティブプラグインを用いたバイブレーション方法については、追々執筆します。