SteamVR

SteamVR

45 ratings
Quest3とPCをUSB有線接続で快適に利用する
By Osinko_pc
Quest3とゲーミングノートPCをUSBで有線接続する方法を解説します。また、接続後はsteamVRの「解像度乗算器」の機能を利用して適切な解像度設定を行い、ゲームのフレームレートを向上させる方法を解説しています。なお、本件の記事の内容は私、個人が調べたものであり確実性が担保されていない情報です。その点はご注意ください。
3
   
Award
Favorite
Favorited
Unfavorite
準備
Quest3とゲーミングノートPCを有線で接続する方法を解説します。

最低限必要なもの:
  • Quest 3
  • ゲーミングノートPC。グラフィックス性能が高い程よい
  • VRストリーミングする為のソフトウェア PC版:Meta Quest Link[www.meta.com]
  • SteamクライアントとSteamVR
  • Steamで購入可能なVRもしくはVR+に対応したゲーム

容量の大きい安定したストリーミング通信が必要となるため必ず以下のものを用意します。

  • USB3.2 Gen1(5Gbps以上)のケーブル

このUSBケーブルの規格は必ず守って用意してください!
適合しているケーブルはパッケージや端子部分に以下のマークが必ずあります。







また、所持しているゲーミングノートPCに対応したUSB入力端子があるか確認してください(メーカーのスペック表を読むのが確実)。接続部がTYPE-A、TYPE-Cか注意してケーブルと合わせてください。該当するケーブルは2メートル程の長さなら2024年時点で1000~4000円程度で買えます。長くなるほど値段が高くなります。Meta公式のQuest用リンクケーブル[www.meta.com]がありますが高額です。規格を守ったケーブルであれば正常に動くのでよく選んで購入してください。

PCの入力端子の詳細がわからない、ケーブルが用意できない場合は以降の作業はしないでください。

接続
  1. PCにMeta Quest Link[www.meta.com]から「Quest Link PCアプリ」をダウンロードしてインストールします。
  2. steamクライアントがすでにインストールされている状態でsteamストアからSteamVRをインストールします。
  3. ゲーミングノートPCとQuest3をUSB3.2_Gen1ケーブルで接続します。

ケーブル転送速度を確認
接続が終わったらケーブルの転送速度を測ります。
Quest3をPCに接続した状態でPC版MetaQuestLinkから左メニューのデバイスを選択します。



次に「Quest3とTouch」から「USBテスト」のウインドウを開きます。
「接続をテスト」をクリックして実行します。



うまくいかない場合はPCとQuest3をUSBで接続した状態でQuest3を頭部に装着してもう一度試してください。2~3回繰り返して試すと計算が動き出す時もあります。



上記の様にテストが完了して2Gbpsを超える速度が出ていたら合格です(2.0Gbps=2000Mbps)。
ここで300Mbps程度の帯域幅であった場合はUSB3としてケーブルが接続されていないという事です。その場合はケーブルの規格が適合していないのでケーブルを換えてください。

また不適合の場合、適合するケーブルを手に入れるまで以降の作業はしないください。

備考:
理論値では転送速度は5Gbps程度になる筈ですが、どんなケーブルを用意しても2Gbps~2.6Gbpsになるようです(2024年7月時点において:Quest3の仕様で上限を制限している?)
環境の確認
これで以下のような環境が構築されました。

ゲーミングノートPCとQuest3の間を最大容量のデータが転送可能。
ストリーミングで遅延がない理想的な環境です。
GPU負荷に対する基本的な考え方
私たちはすでに転送速度2Gbpsを安定して行う理想的なストリーミング環境を手に入れました。有線なので途中で不意に接続が途切れることもありません。ここからは自分の持つゲーミングノートPCのグラフィックス性能(GPU)に注目して実際にゲーム内で描画を行う画素数を計算し、PC性能に合わせた設定を行います。

その前に知識として知っておくことがあります。以下の事柄を理解してください。簡単な計算を伴いますが理屈として知っておくと今後の設定で役に立ちます。



現在、2024年において一般的に日本で普及しているゲーミングノートPCのデスクトップ画面は1080p(HD)の解像度が多く利用されています。この縦横の画素数は1920*1080ピクセルです。そして、この総画素数は縦横のピクセル数を乗算して1920*1080=2,073,600 ピクセルと計算できます。

一方、Quest3のヘッドマウントディスプレイ(HMD)のハード的な最大解像度は諸元より4128*2208ピクセル。この総画素数を計算すると4128*2208=9,114,624 ピクセル。この数字を見るとゲーミングノートPCと比べQuest3は、よりきめの細かい描画が可能なハードです。表示部と眼球との距離が近いだけ粗が見えないようにする為に必要な解像度だったと予想されます。

以上をふまえ、いつもプレイしている1080pの解像度のゲームをQuest3のHMD内にフルスケールで表示する事を考えてみます。簡単な推測計算です。

Quest3のHMD総画素数 / ゲーミングノートPC総画素数 = GPUの負荷
9,114,624/2,073,600=4.39
このことから単純計算で4.4倍のGPU性能が必要になる事が分かります。


これは例えば、リッチな映像のゲームをギリギリ遊べるような性能のPC、例えばGPUにRTX3060を搭載したPCを持っていた場合、それよりもずっと高価なグラフィックス性能を持つゲーミングノートを買う必要が出てくる事を意味します。

しかし、普通はゲームにそこまでお金は出せない人がほとんどの筈です。

となるとQuest3のレンダリング解像度を規定値に固定したうえで、
それを前提に「SteamVRの解像度乗算器」機能を利用する必要が出てきます。

SteamVRの解像度乗算器の機能
これはVRゲームで表示する内部レンダリングの解像度を意図的に低解像度にして、その映像に対しアップスケーリングとエンコードをGPUハードウェアで行いVR機器のHMDにストリーミングデータを渡すという機能です。

又、少し難しい話をすると全てのVRゲームは片目のインスタンスデータを利用して両目のレンダリング描画を高速で行います。

参考資料:
GDC 2015「SteamVR」とは何か? ValveがそのVRレンダリング技術を語る[www.4gamer.net]



これにより片目のレンダリング解像度のコストで比較的、安価なグラフィックス性能のゲーミングノートでも美しい画面、高いフレームレートを保ったままVRゲームを楽しむ事が可能となります。

この機能を使いこなすには、簡単な推測計算とトライアンドエラーの経験が必要になります。
とにもかくにも体験が必要です。実際に必要な設定をしていきましょう。

Quest3のHMD解像度を固定する
基本となるVRゲームの解像度をQuest3のハード的な解像度に合わせて固定します。

Quest3をPCに接続した状態でPC版のMetaQuestLinkを起動。PCの画面内に起動しているMetaQuestLinkウインドウから「デバイス」>「Quest3とTouch」>「グラフィック設定」を開きます。以下のようにQuest3のリフレッシュレートを72Hz。レンダリング解像度を4128*2208に設定します。自動(推奨)はオフにしてください。



リフレッシュレートの意味ですが、これは一秒間に何回、画面を書き換えるかを値で示しています。72Hzなら1秒間に72回、画面を書き換えます。この値が増える程、人間の目になめらかにクッキリとアニメーションが見えGPUの仕事が増えてゲームが重たくなります。

よくあるfpsという言葉もフレームパーセコンドと呼ばれ同じ意味を持っています。「60fps」は「リフレッシュレート60Hz」と同じ意味になります。

参考資料:
[CEDEC]脳の動作クロックは33Hz? 人間のスペックに適合させたゲームの遅延対策とは[jp.gamesindustry.biz]

これでVRゲームのベースとなるレンダリング解像度とフレームレートが固定されました。
今後、この値を絶対に動かさない様にしてください。
すべての解像度操作はSteamVR側で行う事にします。


これはQuest3とSteamVRで操作する解像度比率を1:1で対応させやすくする為のルールです。守ってください。

PC版MetaQuestLinkの設定はこれで完了です。
次にPCのsteamVRの設定に移ります。
steamVRを設定する
まず最初に「一般的な片目あたりの解像度」を設定します。
QuestのHMD側からSteamVRを起動します。



PCとリンクした状態である事を確認して設定を行います。
起動したsteamVRの画面から設定を選択します。



設定ウインドウが開きますので「一般」ウインドウ内の「片目あたりの解像度」に「2064*2272 100%」を設定します。



ちなみに同様の事はPC側からも操作可能です。リンクがしっかり接続されている事を確認した上で
PC側の画面にあるSteamVRウインドウを右クリックしてください。表示されるメニューから「設定」を実行すると設定ウインドウが表示されます。



その内容から「一般」の「片目あたりの解像度」を見つけて「2064*2272 100%」と設定します。



これで各ゲームの解像度のデフォルト値として100%が適用されました。

片目あたりの解像度が2064*2272、つまり両目の場合は4128*2272でQuest3の最大解像度の4128*2208ピクセルと近似値になり問題ありません。ちなみに何故、微妙に値がズレるのかは、Quest3のディスプレイのサブピクセル構成がPCのRGB Stripeと違ってPenTile Diamondになっている事に起因しているようです(ピクセルの根本的なレイアウトが違う)



これにアップスケーリング処理、ディストーション処理、エンコーディングが行われます。

以下はディストーション処理に関する分かりやすい動画です(英語)







アプリケーションごとの動画設定1
次に各ゲーム、アプリケーションごとの動画設定をしていきます。これは同メニュー内の動画ウインドウから行えます。



繰り返しますが一般的に日本で普及しているゲーミングノートPCの通常画面は1080p(HD)=1920*1080=2,073,600ピクセルです。フレームレートは諸説ありますが特に指定が無ければ秒間60fpsが日本製のゲームで多いように思われます。例えばPC版ダークソウルやエルデンリングは60fps固定のゲームです(VR+に非対応ですが)。厳密に考えればQuest3でリフレッシュレートを72Hzと設定したので72/60=1.2倍の負荷を計算する必要があります。

しかし、ここはシンプルにGPU負荷1倍として考える事にします。
(Distortion Curvatureやstencil mesh等の軽減する技術が使われていると予想できるため)

レンダリング処理に関して、片目1画面は普通に描画して、もう片方の1画面はインスタンシングで処理する技術があります。この技術が使われている前提でGPU負荷をフェルミ推定します。

パーセンテージでの解像度の変化とQuest3のHMD内で表示される画素数から、1080Pと何倍比であるか下記の表に示します。この画素数比をGPU負荷の指標と考えます。
GPU負荷の指標
1080p(HD)
1920*1080
2,073,600
1倍
これを基準としています
steamVRの%
steamVRの解像度(片目)
総画素数
GPU負荷
備考
100%
2064*2272
4,689,408
2.26 倍
90%
1956*2152
4,209,312
2.03 倍
80%
1844*2032
3,747,008
1.81 倍
70%
1724*1900
3,275,600
1.58 倍
60%
1596*1760
2,808,960
1.35 倍
RTX3070(Laptop)でゲームがHALF-LIFE:ALYX
でこの設定がおすすめでした
50%
1456*1604
2,335,424
1.13 倍
おそらくRTX3060がこれぐらい
40%
1304*1436
1,872,544
0.90 倍

アプリごとの動画設定:HALF-LIFE:ALYXの場合
HALF-LIFE:ALYXの動画設定の例



以下は私のゲーミングノートPCのスペックです。

NVIDIA Geforce RTX 3070 Laptop GPU GDDR6 @ 8GB(256bits)(555.85)
12th Gen Intel(R)Core(TM)i7-12700H
Memory: 63.6GB
OS: Windows 11 Home 23H2

このハード構成でHALF-LIFE:ALYXを実際にプレイするにあたって割り当てたパーセンテージは「1596*1760 60%」です。設定する以前はフレームが飛んだり画質が乱れて音声が途切れるなどの不具合がありましたが、72fpsで非常にスムーズに表示されるようになりました。

どんなゲームも、所持しているPCのGPU性能に合わない高い値にしているとフレームレートが乱れたり画像の表示がおかしくなったりします。上記の表から表示の乱れているゲームのGPU負荷を推定して適切と思われるパーセンテージを割り当て、ゲームを実際にプレイして、ちょうど良い値を探していくと良いでしょう。

アプリごとの動画設定:Rez Infiniteの場合
Rez Infinite は「VR+」の規格に適合したゲームです。
デスクトップでプレイ出来て、さらにVRゲームとしても遊べます。

このゲームはALYXと比べて非常に軽快に動くように作られています。ALYXが象ならRezは猫ぐらい軽く動きます。出自がドリームキャストの頃のゲームですので現代のGPU基準から考えるとデータがシンプルなのでしょう。従って解像度に関しては高めに設定しても快適にプレイできます。

Rezの動画設定の例



今回もALYXの時と同様のハード構成です。Rezは「2064*2272 100%」に割り当てました。
このゲームはアプリ内のコンフィグからVR用の解像度を設定できます。

このようにゲームによってはソフト内部から解像度が変更できるタイプのものもあります。うまく利用してください。ここでは思い切って「Rezの解像度を200%」に、「RezXの解像度を140%」にしています。これはRez側で計算すると4128*4544=18,757,632、実にGPU負荷=9.04倍です。軽いゲームならこれでも動いてしまいます。

またRezXはエフェクトマシマシの少し重い現代風のゲームですが、これも140%にすると映像の精細さと白の発色が段違いに良くなります(光が光に見える。何を言っているかわからないかもしれませんが、これは是非体験して欲しい)

NVIDIA製GPUのチューニング
WIndowsの「NVIDIAコントロールパネル」を利用してVRゲーム用の設定を行います。正常にGPUのドライバがインストールされている場合、Windows11で、右下の「^」からアクセスできる場合が多いです。



低遅延モードをウルトラにします。


バーチャルリアリティー 可変レートスーパーサンプリングを適応にします。





補足
<録画機能の利用について>
VRプレイと、そのVRの映像を録画する場合、内部でエンコードとデコードがより多く発生します。
従ってデータの流れを何も考えず録画機能を利用するとストリーミングの質は必ず低下します。
可能な限り録画は別の録画用ハードを接続してそちらで行うのが理想です。

おわりに
これらは私、個人が調べたものであり確実性がない情報です。
内容の正しさは全く保障されていないので、ご注意ください。

SteamVRの解像度乗算器機能は適切に利用するとVRゲームの体験品質を著しく向上させると思います。軽いゲームはより美しく高解像度に、ヘビーな処理を行うゲームは低解像度にすればなめらかになります。

それでは皆様、良いゲームライフを!




5 Comments
Osinko_pc  [author] 17 Jul @ 6:29pm 
有線接続はUSB3.2Gen1ケーブルを使えば最高品質のストリーミングが「安定して」得られます。VRゲーム環境構築としては手軽なので是非、試してみてください:clealol:
zardKadena 17 Jul @ 5:36am 
詳しい解説ありがとうございます。
普段はVirtualDesktopを使っていますが有線接続も気になっていました。
今回のセールでQuest3を買ったので今度試してみます。:steamhappy:
Stimpy (JUNK-Painter) 15 Jul @ 11:05am 
おぉ~無線設定ガイドも進行中は嬉しい限りです:p2cube:
VirtualDesktopが良いという話はよく聞くので、買ってみようかと検討中です:eli:
無線設定ガイドを読んでから買ったほうが間違い無さそうかな?:lunar2020thinkingtiger:
何はともあれ楽しみに待ってます~:loderunner:
Osinko_pc  [author] 15 Jul @ 4:29am 
設定を詰めると実はQuest3は一定性能以上のWifi6ルーターでVirtualDesktopを使って無線接続するのが「一番良い」です(USBとWiFiのデータ転送速度の上限は同じでVirtualDesktopの自動解像度調整機能とエンコード能率がすさまじく優秀)。では、USB接続が無駄かというとそうではなくて、ネット環境を容易に変更できない、ルーターがQuest3からどうしても離れてしまう、ネット環境がまったくない所、旅行先等で使えます。でも最良はルーターからしっかり設定してQuest3に無線環境を構築する事である事を確認しています。もうひとつ無線用ガイドを書くのが大変なので、先にこの情報だけお伝えしておきます。
Stimpy (JUNK-Painter) 15 Jul @ 2:57am 
素晴らしい解説ありがとうございます!:eli:
ガイドの設定を参考に無事セッティングできました:cuphead:
やはりエアリンクは重めのタイトルだとゲーム中に止まったりしますね~
当分ルーターは買い替えられそうもないので、ケーブル接続と設定を見直して
安定した環境で楽しんでいこうと思います:happy_yeti: