見出し画像

VRChatでPseudo-hapticsを体験出来るワールドを作った話

みなさんこんにちは.えいと申します.
とあるところでVirtual Realityの研究をしています.飲酒とゲームと淡い色が好きです.VRChatもします.

VRChatでPseudo-hapticsを体験出来るワールド「箱を持ち上げるワールド」を公開しました!(公開していました!)

Pseudo-hapticsとは,身体動作を反映する視覚情報を変化させ,疑似的な触力覚を生み出す錯覚のことです.
例えば,PCの動作が重くなったときにマウスカーソルが動きが遅くなると抵抗力を感じる現象もPseudo-hapticsの一種です.
特別なデバイス無しで触力覚を提示出来るのが魅力的なポイントです.

今回は制作に至ったモチベーションとちょっとだけ実装面について雑まとめしていきます.

モチベーション:VRChatユーザにVR関連研究を知ってもらいたい!

VR研究をしている人間として,実際に普段からVRを使っている方々に研究の内容を体験させてみたい!というところからワールド制作が出発しました.

VR研究をやっている方々に囲まれて私自身もVR研究をしているわけですが,VR研究をしている人々の中で普段からVRゲームで遊んだりVRChatでだべったりしている人があまりいないな~と感じています.
逆に,VRChatでVRの研究について言及されていることもあまりなく(私の交友関係が狭いだけかもしれませんが……),う~~~んという気持ちになったりしていました.

どちらの界隈(?)にもいる身としては,うまくそこを繋げていけないかな~と考え,デバイスなしで出来るPseudo-hapticsに注目しました.
(あと単純にフレンドに体験させて感想聞く奴したかった)

実装について

Pseudo-hapticsを実装するにあたって,「現実のコントローラの位置と表示されているアバタの手の位置をずらす」必要があります.

VRChatではワールド側からユーザのコントローラの位置を取得することはできます.しかしながら,こちらからその情報を上書きして勝手にアバタの手の表示位置を動かせるかというと,できません.
そのため,各々のユーザが使用している各々のアバタのままでは体験していただけません(悲しい).

その解決策として,こちら側で透明なアバタとユーザのコントローラの位置に追従し続ける見かけの手(これはアバタではない)を用意しました.
見かけの手がオブジェクトを掴んだ時にだけずらすような処理を入れてあげることで,Pseudo-hapticsをVRC上でも実現できました.

透明なアバターから自分のアバターに戻ってからも見かけの手が表示され続けるので,「現実のコントローラの位置と表示されている手の位置がずれている」状況が分かりやすく伝えられたかと思います.

雑まとめ

実際にVRCのフレンズにも体験していただいたのですが,おも~い!とかかるーーいとか言っていただけたので作って良かったな~と.HMDを1000時間以上着用している人からの意見はVR研究者としては非常に貴重です!!!!ありがとうございます!!!!

以上,雑まとめでした!
VR研究体験系のワールドがもっと増えればいいな~~~~~~~!

この記事が気に入ったらサポートをしてみませんか?