Programming in VRChat

VRChat でのプログラミングについて調べたことの書き溜め

一台のマシンで Steam VR モードとデスクトップモードで同時に同じワールドに入る手順

2018/1/19 追記

  • 最近施されたセキュリティ向上のためのパッチによって、一つのアカウントで同じワールドに入ることは出来なくなったようです。(動作確認バージョン:0.12.0p10)
  • 以下の手順は基本的には有効ですが、二つのアカウントを使う必要があるようです。
    • (一台のマシンでクライアントプログラムを同時に複数実行する事自体は引き続き可能でした)
  • 簡単には VRChat のアカウントを二つ作って、それぞれでログインすれば良さそうです。
    • 二つのアカウントを作るとなるとサービス規約が気になりますが https://www.vrchat.net/legal をざっと見てみましたが、それを禁止する条項は現在は無さそうでした。
    • 二つのアカウントが必要になるので結果的に、合流は下記手順のインスタンスの番号を合わせる方法ではなく、二つのアカウントをフレンドにして invite で行うのが便利でしょう。
  • Steam アカウントと VRChat アカウントを使う場合には、先に Steam アカウントで入る必要があるようです
    • 二つ目のクライアントで Steam アカウントで入ろうとするとエラーになります。VR モードを使う場合は先に起動する必要があり(これは以前の手順から変化なし)、必然的にそちらが Steam アカウントである必要があります。(この点、検証不十分。誤解があるかも)
    • 二つ目を実行しようとすると(この起動は Steam ではなくバッチファイルから)、まずはエラーが発生します。
      • 「Steam エラー」というダイアログに「アップデート中にエラーが発生しました(アプリケーション設定が見つかりません)」というメッセージが表示され、起動できません。
      • 一つ目が VR モードの場合にはそちらに「ゲームを起動できませんでした(アプリケーション設定がみつかりません)」が出ます。そのエラーダイアログを閉じれば既に起動している VR 側は動作し続けます。
    • もう一度(バッチファイルから)起動するとログイン前の状態で立ち上がるので VRChat アカウントでログインできます。
    • (ダイアログが出るのは、直前のログイン状況を復帰するつくりになっているためSteam アカウントで複数ログインしようとして失敗するのだと思われる。失敗するとログインの手前まで戻され、次回立ち上げ時に VRChat アカウントが選べるようになる、という動作をしているようだ)

準備

  1. Steam クライアントで VRChat のプロパティ・ダイアログを開く
    • (Steam メニュー > ライブラリ > VR > VRChat で右クリック > プロパティ を選択)
  2. ローカルファイル タブ > ローカルファイを閲覧... ボタンを押す
  3. launch-novr.bat をダウンロード(リンク先を保存)して、前の手順で開いたフォルダに置く
    • (私が書いたものです。このブログにファイルは置けないので別の所に置きました。)
  4. (好みに応じて)この launch-novr.bat のショートカットを作り、便利なところに移動しておく

合流方法

  1. 通常の操作で、VR モードで目的のワールドに入る
  2. 現在のワールドを表示すると、ワールドの画像の左上にシャープ記号と数字表記があるので覚える
    • f:id:naqtn:20180104124837p:plain:w200
  3. 前述の準備で作ったファイル(launch-no-vr.bat)でデスクトップモードの VRChat を起動する。
  4. ワールド名を頼りに、ワールドに飛ぶ前の画面を表示する
  5. 下に複数のワールドインスタンスが並んでいる中から、前述の数字のものを探し選択する。
    • 左上の数字が同じになったことを確認
    • f:id:naqtn:20180104124851p:plain:w200
  6. "Go" でワールドに飛ぶ
    • 自分が居るはず

Tips

  • アバターは独立して変更できます。
  • 自作アバターモデルの確認などにご活用ください。
    • (細部を見るには鏡だと限界があるので便利なのではないかと。 デスクトップでは動きに制限がありますが…。 ファッションショーのモデルのように、一通り動き回るアニメーションとか誰か)
    • f:id:naqtn:20180104140703p:plain:w200 (点検中。※利用イメージ)
  • 自分で "Invite only" でつくったプライベートインスタンスでも可
    • その場合 invite の操作せずに入り込めます。
    • 自分と自分で二人っきりになれます。
  • デスクトップはさらにもう一つ開けることを確認しました。
    • f:id:naqtn:20180104124904p:plain:w200
    • (ロボな私を訪ねるユニティちゃんを撮影するAFKランプ君、のつもり)

解説

  • バッチファイルは VRChat.exe の引数に --no-vr を付けているだけです。
  • パス指定の面倒を避けるために VRChat のインストールディレクトリを開いてファイルを置いてもらう手順として紹介しました。
  • Steam のメニューからは二つ立ち上がらず既に動いているものをアクティベートするようであること、また二つ目が VR モードの場合はどうもうまくいかないようなので、別途デスクトップモードを起動する手順にしました。
  • これは Launch_URL で紹介している launch.bat の動作を調べた副産物です。

関連

自分メモ

  • TODO 追記の状況を踏まえて手順の方を修正