最近VR機器を使うことが増えてきており、マルチモニター環境においてSteamVRやVRChat等のVRゲームを起動したときに、モニターの接続を解除してあげるとFPSが自環境では5-10FPSの向上が見られたので備忘録。
Table of Contents multimonitortoolの準備 multimonitortoolでモニターIDの確認 batファイルの作成 autohotkeyの構築 参考
multimonitortool をダウンロード。結構下のほうにあるのでCtrl+FでDownloadと検索したほうが幸せかもしれない。Languageにある日本語化ファイルもダウンロードしておく。
起動して、モニターidを取得する。 下部分に表示されているウィンドウと照らし合わせながら、モニターを右クリック
モニターIDをメモしておく
batファイルの作成 off時のbat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 @echo off setlocal :: monitor IDs set "MAIN_MONITOR_ID=MONITOR\*******\{*******-****-****-****-************}\****"set "SUB1_MONITOR_ID=MONITOR\*******\{*******-****-****-****-************}\****"set "SUB2_MONITOR_ID=MONITOR\*******\{*******-****-****-****-************}\****":: MultiMonitorToolで切断 "MultiMonitorTool.exe" /disable "%SUB1_MONITOR_ID% " "MultiMonitorTool.exe" /disable "%SUB2_MONITOR_ID% " :: 自動的に閉じる timeout /t 3 >nul
on時のbat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 @echo off setlocal :: Define monitor IDs set "MAIN_MONITOR_ID=MONITOR\*******\{*******-****-****-****-************}\****"set "SUB1_MONITOR_ID=MONITOR\*******\{*******-****-****-****-************}\****"set "SUB2_MONITOR_ID=MONITOR\*******\{*******-****-****-****-************}\****":: MultiMonitorToolで切断 "MultiMonitorTool.exe" /enable "%SUB1_MONITOR_ID% " "MultiMonitorTool.exe" /enable "%SUB2_MONITOR_ID% " :: 自動的に閉じる timeout /t 3 >nul
まずset MAIN_MONITOR_ID
、set SUB1_MONITOR_ID
、set SUB2_MONITOR_ID
でモニターIDを定義、私はトリプル環境のため三つ定義してあるため、各々そこは変更していただきたい。
"MultiMonitorTool.exe"
はMultiMonitorTool.exeが配置されている絶対パス(エクスプローラーでexeを指定し右クリック -> パスのコピーで取得)を指定
これでとりあえず接続/切断は使えるはず。
autohotkeyの構築 autohotkey を使ってSteamVRvrserver.exe
が起動したときに切断、終了時に接続というようなことをする。ダウンロードしてインストールしておく。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #Persistent SetTimer, CheckSteamVR, 1000 steamVRStarted := false return CheckSteamVR: Process, Exist, vrserver.exeif (ErrorLevel != 0 and !steamVRStarted) { Run, "off.bat" steamVRStarted := true } else if (ErrorLevel == 0 and steamVRStarted) { Run, "on.bat" steamVRStarted := false } return
off.bat
とon.bat
は先ほどのパスをコピーから取得する
先ほど書いたahkファイルを開くと
といわれるのではいを選択、now installみたいなウィンドウが出てきたらok。 またahkファイルを開いてシステムトレイに追加されてたらok。緑でHと書いてあるロゴがそれ
だいぶ駆け足気味で書いているので、わかんなかったら遠慮なくTwitterのDMまでぜひ
参考 WSL2でマルチディスプレイの接続/切断をCLIで行う