VRChat向け下半身トラッキングデバイスHaritoraを個人開発して販売を始めました

概要

VRChat含むアバターコミュニケーションするVR SNSは頭と手をトラッキング出来るVR-HMDの普及に伴い、ユーザが増えています。

その中でもVRChatユーザを対象にした「頭と手だけじゃなくて足も動かせるようになりたい」を安価に実現するために専用ハードウェア+関連ソフトウェアを半年ほど掛けて設計、実装して販売開始しました。

仕組みとしてはジャイロセンサを5個体(腰、太もも、スネ)に取り付けることで、足や腰の動きをトラッキングしています。

こちらからどなたでも購入可能で、予約後の生産(納期1ヶ月-2ヶ月)となります。 haritora.wixsite.com

テスターレビュー

www.youtube.com

www.moguravr.com

現在主流のHMDラッキングの仕組み

頭や手の位置を取得するトラッキング方式は「アウトサイドイン(外部にカメラを置く)」と「インサイドアウトHMD自体にカメラを内蔵してSLAMで解く)」の二種類があります。 f:id:izm_11:20201115131244p:plain

この右側、インサイドアウト方式の方が価格帯としては安いのですが、この方式で足をトラッキングする仕組みの決定打がないので、VRChatの人はアウトサイドイン方式のHMDに買い換える、というコストが発生していました(他にもいろいろ手はありますが、大ざっぱには買い換えが主流)

Haritoraが解決していること

  • アウトサイドインじゃない、インサイドアウト方式のHMDでも足が動く(つまり、OculusQuest2ユーザに優しい)

  • 変なソフトウェアをいろいろ入れなくても全部アプリで完結している。(ファームウェアの書き込みやSteamVR設定の変更などもアプリ内で完結します)

頭と手が動くユーザに対して、全身を動かすためのアップグレードの敷居をなるべく下げる、というのを重視しました。

f:id:izm_11:20201115133407p:plain f:id:izm_11:20201115132853p:plain

ソフトウェア実装の仕組み

  • M5StickCのファームウェアが、5個のジャイロセンサ(IMU)の値を読み込んで、BluetoothでPCに送る
  • PCのHaritoraConfiguratorが足を含む体全体の姿勢をHMD,手の位置とユーザの身長を元に計算する
  • 仮想的に推定したユーザの腰と足の位置を仮想ViveTrackerの位置と姿勢としてSteamVRに送り込む

ハードウェア実装の仕組み

  • メイン基板とサブ基板に分かれていて、M5StickCをメイン基板にマウント
  • サブ基板にはジャイロセンサだけが積んである
  • メイン基板⇔サブ基板のやり取りはI2Cを通して行う

この辺のハードウェアについては、ロボットエンジニアの友人である リュートさんにお願いしました。(プロトタイプまでは僕の趣味でも出来ますが、製品クオリティは出ないため)

ryutoai2xm.hatenablog.com

気の利いたポイント

  • ハードウェアのセンサー間を繋ぐケーブルはRJ45のLANケーブル(独自規格コネクタは大変、RJ45はすっぽ抜けしないツメがついてる)
  • ハードウェアのケースはFDMの3Dプリンタ製。金型を起こすのはコストが高いのと、既存ケースの加工は加工コストの方が高いため。
  • ドキュメントサイトはソシャゲクライアントエンジニア入門以前でも使ったDocusaurus製でデプロイ自動化済み
  • ソフトウェアのUIを割とマジメに作って、分かりにくさを減らした

Haritoraの戦略

  • ハードウェアは既製品を組み合わせることで研究開発コストを削減
  • 市場は大きくないが、需要は確実にある
  • 対象市場が大きくないので企業参入されにくい
  • 個人の趣味開発範囲で作るので自分のエンジニア工数が無料(お手伝いしてくれた各位には改めてお礼します)
  • ケースを個人用3Dプリンタで3Dプリント、PCBは中国発注(Fusion PCB https://www.fusionpcb.jp/ )、センサー類も中国発注(Alibaba, Aliexpress)で少数生産でも原価を抑えられる

みたいな戦略を大ざっぱに立てて作りました。

いただいた反響

Twitterアカウントを分けて運用したところ、2000フォロワーを越えました。(VRChatのJPのDAUは数千人、と聞くのでかなり対象層にはリーチ出来ている予感)

pixiv fanboxで制作過程を公開しつつ、fanbox会員限定の先行オーダーを10/26に開始したところ、プレオーダー時点で ありがたいことに100人以上のオーダー を頂きました。現在死にそうになりながら毎日仕事の後にはんだ付けをしています…

得られた知見

  • ハードウェアスタートアップごっこが出来て楽しかった
  • 電気回路、電子回路、ケース設計、ケース製造、ユーザ認証、ハードウェアのC++ファームウェア、Unityクライアントアプリ、OpenVR互換ドライバ(C++)を一通り触ることが出来て面白かった
  • バックオーダーを受けてから製造するときに、手元にお金がないと資金ショートする、という事を学べた(金策楽しかったです)

その他関連

自室の様子(メチャクチャうるさいので部屋で寝にくい…)

手作業のはんだ付け(まちがい)

運転資金を確保しないと製造時にお金が吹っ飛んでいきます。ドキドキします。