最近、Mozilla Hubsを使う機会が増えまして。Hubsってよくできてるんです。よくできてるんですけど、こんな機能あったの?って数ヶ月経ったあとに気付くくらい機能がたくさんあるんですよね。
特に多くの人に役立ちそうなとこだと、「環境設定がデフォルトのままだと使いにくくない?」と思っていて、利用者の環境によるのでHubsにデフォルト仕様の変更を提案するまでではないものの、変更すると快適になるので、個人的におすすめの設定をここに書き記しておきます。
環境設定の変え方
PC・スマホの場合、画面の左上にハンバーガーメニュー(三)があり、その中に環境設定があります。 日本語化されてない場合は、Preferencesです。
VRモードの場合は上記のUIは画面上に表示されていないので、コントローラーのメニューボタンを押します。
そうすると、VRモードが一時的に解除されて設定メニューにアクセスできます。
環境設定の保存について
環境設定はブラウザのローカルストレージに保存されるので、"別のデバイス"や"同じデバイスの別ブラウザ(ChromeとFirefoxなど)"にサインインしても保存・反映はされないです。
逆にサインインしてなくても環境設定は変更できて、ブラウザに保存されます。閲覧履歴と一緒にサイトデータを消してしまうとデフォルトに戻ってしまいます。
そのため、環境設定をしたつもりが反映されてないということもあり、設定変更する機会は頻繁に訪れます。
おすすめ設定
音声(Audio)
Hubsは音源からの距離に応じて、音の大きさが変わる距離減衰が効きます。
周囲の雑音が混ざらなくて便利な反面、実際に試してみると減衰が効きすぎて音が聞こえないケースが多々あります。
近付けばいいじゃんという話なのですが、ボイスチャットではアバター間の距離、動画だとモニターまでの距離が気になって心理的に近付きにくいシチュエーションも割とあります。
対策としてAudio設定でボリュームを大きめに設定するようにしてます。 着信音声ボリュームがボイスチャット、メディアボリュームが動画やBGMの音量に影響します。
MAXにしてても減衰が効くのでちょうどいい感じだったりしますし、大きく聞こえる分には遠ざかったり、PCのボリュームを絞ればいいので。
コントロール(Controls)
ここはあまりいじらなくても問題ないのですが、Hubsで移動速度が物足りないと感じたら、移動速度を大きくすると高速移動が可能になります。MAXにすると広めのルームもスイスイ動けます。
VRデバイスだと逆に動きが早すぎるので、描画のクオリティと相まってVR酔いしやすいように感じます。移動速度を小さくしておくと軽減できるかもしれません(私はワープ移動も併用してます)
もう一つ、スマホやタブレット限定なのですが、タッチスクリーンのカメラ移動の方向がデフォルトで反転になっています。上にスワイプするとカメラが下を向き、右にスワイプすると左に向きます。
操作に違和感を感じる人はチェックを外すとよいと思います。
その他(Misc)
UIの言語設定がMiscにあります。デフォルトはブラウザの言語設定に合わせる形になってますが、日本語になっていない場合はここで設定できます。
また、Hubsは日本語化対応が進んでいるものの、翻訳がおかしく感じるところもあります。英語が不得意でなければ、英語にした方がわかりやすいということもあります。
パフォーマンス面で重要なのが、マテリアル品質です。デフォルトではHighになっているのですが、ルームによってはスペックの低いPC・スマホだと動作が重くなることがあります。
Medium、Lowに設定するとライティングが反映されなかったり見た目のクオリティがかなり落ちてしまうのですが、重くてどうにもならない状態を回避できます。
開発者向けに便利なのが、複数のHubsインスタンスが開いているときに自動終了を無効にするです。
一つのブラウザでHubsを二窓すると古いタブが自動でシャットダウンしてしまうのですが、チェックを入れて自動終了を無効化しておけば、二窓してもセッションが切れないので一人で複数ユーザー入室時のテストができます。
ただ、かなりスペックの高いPCでないと、二窓した瞬間にPCが重くなるので注意ください。
似たような設定のアイドル時またはバックグラウンド時の自動終了を無効にするは、主にモバイル用です。
スマホでブラウザをバックグラウンドにしたり、スマホがロック状態になったりすると、すぐにセッション終了してしまうのですが、このチェックを入れておくとしばらく放置してもセッションを維持します。
環境設定じゃない設定(iPadのみ)
iPadOS13以降のiPadでHubs内の動画が再生されないことがあります。
色々調べたところ、どうやら、デスクトップ用Webサイトを表示(iPadのデフォルト設定)になっていると、PCとタブレットのブラウザ判定ができず、iPadでの動画再生に必要なアクションが実行されない模様です。
関係ありそうな記事
JavaScriptでmacOSとiPadOSを識別する - ビットハイブ
iPadの動画再生に関するIssueは上がっていたので、いずれHubsでも直るかと思いますし、上手く直せそうならIssueやプルリク自分で上げるかもですが、当座の対処としてはHubs使っているサイトをモバイル用Webサイトを表示にしておけば動画が再生されます。
おわりに
せっかくなので、お仕事だけじゃなくて個人でもHubs使って何かやりたいなと考えてたりします。新潟来たので東京の知り合いと集まってみたりとか、勉強会みたいなのやってみるかとか、技術書典っぽい感じのブースをHubs上に作って接客してみたりとか。
どれやるにしても人が集まるか大いに不安ですが。
AWSで簡単に自分のサーバ立てられるのも魅力で、その話はまた別の機会で。