UnityEditor上でSteam VR PluginのLeftControllerがdisableになってしまうことへの一時的な対処

この記事は最終更新日から3年以上が経過しています。

8日にViveが届いたのでいろいろと遊んでました。

チュートリアルもそこそこにSteamVRPluginを使ってUnityで何か作ろうと思って

男の子だからどうしてもこういうインタフェースが好きになってしまう…😌 pic.twitter.com/4ZMmMMhp5z

— Negipoyoc (@CST_negi) 2016年7月11日

というのを作っていました。(楽しい!)

開発に際して、今回は片方の手だけ使えれば良かったので特に問題なかったのですが、何故か左コントローラだけDisableになってしまって使えないという状況が発生してました。
UnityEditor上以外(例えばチュートリアルとか)ではコントローラが正しく認識されているし、SteamVRPluginのコードを特にいじってない状況でこうなるのはおかしいなぁと思っていたらフォロワーの方から以下の様なアドバイスがありました。


早く治ってほしいなぁという感じですね。
 
 
しかし、治るの待ってたらいつまでたってもテストアプリ作成すらままならないので、その後いろいろ試していたら手動でdeviceのIndexを割り当ててGameobjectをEnableすれば(コントローラの一部の初期化処理以外は)通常通り動きました

このバグはいずれ治ると信じて簡単な一時的対処をしたコードを以下にあげます。
https://gist.github.com/NegishiTakumi/7e252323a464935926012d879f542ebc

TempBugFix.cs
 tmpConf.index = SteamVR_TrackedObject.EIndex.Device4;

のDevice4というのはもしかしたら人によって違うかもしれないのでいろいろ試して変えてください。
僕の場合はたまたまDevice4だったというだけですね。

コントローラに電源が入ってないなど正しくDisableが働くときでも強制的にEnableするコードなのでそういうところは雑ですが、ひとまず今はテストアプリを書いたりDebugのことしか考えてないのでこんな感じで…。


追記2016/07/19
SteamVR Betaにしたあと、PC再起動で動くようになりました。
なんだったんだ…

ユーザー登録して、Qiitaをもっと便利に使ってみませんか。
  1. あなたにマッチした記事をお届けします
    ユーザーやタグをフォローすることで、あなたが興味を持つ技術分野の情報をまとめてキャッチアップできます
  2. 便利な情報をあとで効率的に読み返せます
    気に入った記事を「ストック」することで、あとからすぐに検索できます
コメント
この記事にコメントはありません。
あなたもコメントしてみませんか :)
すでにアカウントを持っている方は
ユーザーは見つかりませんでした