Vibratorクラスを使ったAndroidの振動強弱の制御 その2

あれから振動パターンを事前に用意しなくてもバイブレータの強さを設定することができました.
2行ほどで書けてしまうのでなかなか短くなりました.


//振動の強弱制御用関数
private void TriggerHapticPulse(int durationMicroSec, int power) {
long[] pat = {0, power, durationMicroSec - power};
vib.vibrate(pat,0);
}



関数名から察せるとは思いますがもとはHTCVIVEの振動制御をAndroidでもやりたかったのでなんとか実現できてよかったです.
実際に使ってみた結果,機種によるとは思いますが10~20ms周期が現実的です.それ以上だと強くなっても違いがわからないです.

使い方としては,音声に同期させた振動触覚提示を行いたかったので,以下のようにしてあげると比をとって最大値を振動側に合わせられます.

//FFTの最大値から比を求める
power = power * durationMicroSec / (int)(FFT_PEAK_VALUE);


ちなみにFFTのピーク値って128*√2なんですね.まだまだ分からないことが多い…

拍手

web拍手

FC2カウンター

現在の閲覧者数:

検索フォーム

Twitter...

プロフィール

Head

Author:Head
どもこんにちわHeadです
ゲームのこととか書こうとブログやり始めたら、
もっぱらギターばかりになってました。
最近はVR関連に興味がむいてます。それとunity

{ギター歴:2010.6/27~現在}
{unity:2014.8月~現在}


連絡用のメアド貼っておきます。何かあったら送ってください
head399★gmail.com(★は@に変えてください)

最新トラックバック

ブロとも申請フォーム

QRコード

QRコード