UnityのSteamVR Pluginで波のような複雑な振動を実現するツール
HTC ViveのHD振動について,SteamVR Pluginでは毎フレーム振動の強さを指定する関数しか用意されていません.
参考
Unity+HTC Vive開発メモ - フレームシンセシス
そこで,AnimationCurveで複雑な振動を作成し,それを再生するツールを実装しました.
使い方
ツールの使用方法を説明します.
HapticClipを作成
Projectビューで右クリック→Haptic/HapticClipでNewHapticClipを作成
length : Clipの長さ
min : 振動の強さの最小値
max : 振動の強さの最大値
loop : trueにすると振動がループする
curve : 再生する振動のカーブ(x,y共に0〜1の値で作成してください)
HapticClipを再生
SteamVR_TrackedObjectがアタッチされたGameObjectにHapticListenerをアタッチ
適当なオブジェクトにHapticSourceをアタッチ
HapticSourceに再生したいClipと振動させたいデバイスのHapticListenerをアタッチ
HapticSource.Play(); で再生
今後
今後は,短い音源ファイルからHapticClipを自動生成する機能の追加を考えています.