MSFS_202408_20NoevirStadium

Microsoft Flight Simulator 2020(以下 MSFS)は各地の気象情報を元にしたライブな気象条件を反映してフライトすることも可能なので、台風接近中の京阪神で飛んでみた一コマ。強風に翻弄され、現実だと完全に自殺行為だと存分に理解できました😅

台風通過直後の九州をライブ気象条件にて VR でフライトした時は、離陸直後に雲の幻想的な風景を仮想空間で楽しんだ後、雲中で強風に揉みくちゃにされ、擬似的な空間識失調を体験したような気持ちになり、遊びとはいえ洒落にならないプレイ後感でありました。

MSFS_202408_43VR_DepartureAmakusa

そんな各地に大きな被害をもたらせ、多数の人の予定を狂わせた台風10号。大阪ではあまり台風感はなかったものの週末のアウェイ大阪ダービーが中止になってしまいました。私も雨中観戦応援を覚悟していましたが、結局試合時間には雨も止んでいて、仕方ないけど残念ではありました。

ということで先週末は急に時間ができ、おまけに雨や曇り空続きで酷暑が(一時的に)収まったことで、久しぶりにまとまった時間を MSFS のプレイに充てることができました。

少し前に導入した新しいゲーミング PC は懐の限界までスペックを頑張ったため(RTX 4090 は懐具合以外も含めて無理だったけど)性能には満足していますが、ハイスペックゆえの発熱量が半端なく、この季節は足元に置いてある筐体からの熱気ムンムンが堪りません(>_<)

MSFS など負荷の高いゲームをしていると部屋の温度を確実に上げてくれますので、エアコンの効きがイマイチな部屋では夏場は時間があってもなかなか電源を入れる気がしません。ので、昨日のような「時間がポッカリできて、尚且つ外気温30℃以下で室内は快適温度」な日は貴重でした☺️

MSFS_202408_21MtFujiFromSDJ2ITM

さて、表題の話。フライトシミュレーターマニアの方々には周知の話、当たり前の解決策のことかもしれませんが、1ヶ月くらい悩んで少し前に解決できたことなので、自分的メモも兼ねて記しておこうと思います。まぁ誰かのヒントになり得る可能性もゼロではないですし。

(先に言っておくと原因は未だ掴めていません。対処療法で解決しただけです)

数ヶ月前、MSFS のために新しいゲーミング PC 導入してからしばらくは、

さすが Ryzen 7 7800X3D + GeForce RTX 4080 SUPER だわ、WQHD 解像度 (1440p) なら画質 ULTRA プリセットでアップスケーラーなし (TAA) でも、ほとんどの条件でフレームレート高め、処理落ちスタッタリングが気にならず快適に飛べるわ〜


と大満足、厳しい出費に見合うモノであったと納得できるものでした。

Core i7-12700H & RTX4060のゲーミングノートから Ryzen7 7800X3D & RTX 4080 SUPER のゲーミングPC に乗り換えた結果【2】 〜雑感編

特に、それまで使っていた Core i7-12700H & GeForce RTX 4060 Laptop のゲーミングノート PC のように見た目と動きのバランスを取るため設定をアレコレ苦労する必要がなく、VR ヘッドセットをかぶってのプレイも随分快適になったこと(負荷の高い VR は完全に快適とまではいかない)で、大いに満足していました。

ところが、1ヶ月半ほど前から MSFS の World Update や City Update で地上データーが詳細化されたエリア=負荷の高いエリアでスタッタリング、映像が一瞬止まってカクカクとコマ送り的になる瞬間が目立つようになりました。

平均フレームレートは大して落ちてなく高い値を維持できているし、低 FPS の時間が増えたわけでもないのに、スタッタリングだけが増えて不快すぎる……

という状況に陥りました。

MSFS_202408_26WinsorCastle
MSFS_202408_28CFX_EGLF2EGLL1

UK & アイルランド対象の World Update 17 リリース直後にプレイした時から「負荷が高いなー、1,000ft 以下の低空飛行してると重いなー」と感じていたイギリス・ファンボロー空港からウィンザー城を経由してヒースロー空港という短距離フライトでも上記⬆️この程度、 CapFrame X の統計値でスタッタリング頻度が 2% 前後でした。

(この計測を行ったときは、画質は ULTRA プリセットでアップスケーラーは DLSS 品質優先、航空トラフィックはリアルタイム反映、DLSS Frame Generation(以下 DLSS FG)は(断りがない限り)常時オン、という設定。ルート中、前半は重くないけどヒースロー空港圏内に入ると重くなる)

ところがプレイするたびに動きが悪くなってるような気がして、気がつけば⬇️以下のようにスタッタリング頻度が倍増。

MSFS_202408_29CFX_EGLF2EGLL2

プロペラ機やターボプロップ機で 1,000 ft.(約 300m)以下の低空〜超低空中心に飛んでいて、CapFrame X の統計値でスタッタリング率が 2% というのは、体感的には「たまにカクツクことはあるけど、不快なほどではない」という印象。快適とまでは言わないが許容範囲。

フレームレートを見ても 0.1% Low Average こそ 10 fps 台半ばではあるものの、P0.2 で 30fps、1% Low Average で 35 fps 出ているので、厳しいシーンはあってもプレイ可能だし、そもそも少し上昇して 1,500ft くらいだと全くスムースに飛べる状況です(TPS / FPS 系のゲームと違って MSFS は 30fps をクリアしていれば実用範囲)。

ところがスタッタリング率 4% となると、フレームレートの統計数値的には前の 2% 程度と大差なくても体感的には結構ストレスを感じるようになります。平均 FPS が 100 fps を超えていようが、P0.2 や 1% Low Average が 30 fps あろうが、ちょっと不快。

あと通常プレイで DLSS アップスケーラー入りなのにスタッタリング率が 4〜5% だと経験上、Quest 2 でも VR プレイはかなり厳しくなります(かなりカクツク)。

ただ、この程度はまだ序の口でした。


World Update 17 でイギリスが充実したのなら今度こそマンチェスターの2大クラブのホームスタジアムくらいリアルになってるだろ…と思って飛んだら相変わらず板状の絵だったので、有志の造った無料 MOD を入れさせてもらってマンチェスターエリアを飛んでいると、やっぱり動きが悪い。

MSFS_202408_18OldTraffordMSFS_202408_19EdhihadStadium

試しに、バートン・エアロドーム (EGCB) からマンチェスター市内を遊覧しつつ、オールド・トラッフォードとエティハド・スタジアムを上から見学してマンチェスター空港へと飛んでみた時に CapFrame X で計測してみると……

MSFS_202408_36CFX_EGCB2EGCCviaOldTrafford1

酷いw 実際にはスタッタリング率 12% の数字から受ける印象ほど酷くはないのだけど、それでもカクツクところは多くて快適フライトには遠く、

負荷の高さは普通の都市部程度っぽいのに、なんでこんな酷いん?


と。

さらにエジンバラ界隈を遊覧飛行していた時も……

MSFS_202408_16ForthBridgeAtEdinburgh
MSFS_202408_25CFX_Edinburgh2EGPH_HIGH_DLSSB

⬆️マンチェスター市内を遊覧していた時と変わらぬ酷さ。あまりにスタッタリング率が高いので、ここでは画質プリセットをウルトラからハイエンドに落とし、DLSS アップスケーラーも品質優先からバランスに落としたにも関わらず、この状況😩

また、City Update 9 でデーター強化されたワシントン観光するべく、ロナルドレーガン・ワシントン国際空港からペンタゴンやホワイトハウスを上空から見学してカレッジパーク空港 (KCGS) まで短距離フライトをした時も、スタッタリング率は控えめなものの同じような状況に😑⬇️

MSFS_202408_39CFX_KDCA2KCGSviaWhiteHouse1

当初は World Update や City Update で地形詳細化負荷の高いエリアで起きていたので、

最近のアップデートされたエリアは細かく造り込んでいるせいか、新調した PC でもちょっと重いなー


と思っていたのですが(実際に最近のアップデートで詳細化されたエリアの一部がかなり重いのは事実)、最近データー強化されたわけでもないエリアでも以前(新 PC 導入当初)より動きが悪くなり、今まで快適に飛べていたはずの「いつも飛んでいるエリア、コース」でもスタッタリング頻度が増えてきました。

むかし何度も通った釧路湿原を眺めるために釧路空港から中標津空港まで飛んだ時も⬇️以下の有様で、小規模な地方都市以外はひたすら原野と丘陵、牧場地帯ばかりなのに、さすがにスタッタリング 8% ってどういうこと?って感じに(平均 200fps とあるように、実際のプレイではそこまで酷いカクツキ頻度はなかった)。

MSFS_202408_23KushiroCity
MSFS_202408_24CFX_Kushiro2Nakashibetsu

ちなみに、釧路湿原は1ミリも湿原っぽくなくて、MSFS もそのあたりは(航空写真からの自動生成では)再現できないよねー、って感じでした。分かってましたけど。MSFS 2024 で改善されていたら嬉しいですが(期待はしない)。

いずれにしても、こうなるとさすがに

これはちょっとおかしいぞ、単に詳細化されたエリアがデーター的に重いだけじゃない


と気づいて、原因と対策を考えるようになりました。

画質プリセット「ハイエンド」で DLSS アップスケーラーが「バランス」という設定で、スタッタリング率がここまで多いと、それこそ以前使っていたゲーミングノート PC と大差ないわけで(平均 FPS は倍以上違うけど)、流石に高い金出して新ゲーミング PC を導入した意味がなくなります。

MSFS_202408_17LakeToruroAtKushiro
(釧路湿原、塘路駅付近。夏も冬も何度も来ましたねえ)


まず、今回のスタッタリング増大現象のポイントは、当初あれこれやっていて

画質設定を下げても
スタッタリング頻度は大差ない


ことが判っていました。先にも書いたように画質設定を ULTRA → HIGHEND、DLSS アップスケーラーを有効にしたり、DLSS の設定を品質優先からバランスへ落としたりしても変わらず。平均 FPS は上がるが、スタッタリング頻度は大差ないまま。

なので、最初に考えたのはスタッタリング頻度が増え始めたのが7月半ばくらいだったこともあって、

もしかして熱対策が足りずサーマルスロットリングによる一瞬の処理落ちが頻発して、それがスタッタリング頻発に繋がってる?


という疑問。できるだけ暑くない場所、熱がこもらない措置はしているものの、先に書いたように PC を置いてある部屋のエアコンの効きが悪いので、夏場になって冷やしきれないのかな?と。

とはいえ、CPU (Ryzen 7 7800X3D) は TDP 120W で空冷でもしっかりとしたファンなら大丈夫と言われつつも簡易水冷にしましたし、負荷の高いエリアを飛びながら HWMonitor その他のツールで監視計測しても CPU / GPU その他見ても、熱的にヤバそうな結果はなし(SSD は使ってる製品のセンサーが当てにならず)。

G-Gear_7800X3D_RTX4080_25

もっとも真夏の稼働には不安もありましたので、ケースファンを増設すべく既にファンを購入してあったこともあり、それを装着するついでにセカンダリ SSD の位置を移動しました。

使っているマザーボード ASUS ProArt X670E-CREATOR WIFI には SSD スロットが4つあって、そのうちスロット1 とスロット 2 は CPU 直結の PCI Express Gen.5 対応スロットで、増設した 2TB SSD はスロット2 に差してあったのですが(スロット1 は最初から使っているシステム用 SSD)、位置的には GPU の真下。

センサー数値的には GPU の冷却もまずまず問題ないけれど、GPU の真下にある SSD は熱的にちょっと厳しくて、夏場になってケース内温度が上がってサーマルスロットリングを起こしがちなのかもしれない、のかも…


と思って、スロット3 へ移動しました。ASUS ProArt X670E の SSD スロット 3/4 は PCI Gen.5 ではなく Gen.4 対応ですが、使っている SSD も Gen.4 なのでそこは全く問題なし。

ただ、スロット 3/4 は CPU 直結ではなく X670 チップセット経由で繋がる分だけ速度的には若干不利。とはいえ、そこまでシビアに速度を要求されるようなことでもないので問題ないかな、と。

G-Gear_7800X3D_RTX4080_26

で、GPU 外したりなんだり面倒なことをしてやったものの、

ケースファン増設と
セカンダリSSDの位置変更
を行っても状況は何も変わらず


判ってました。私も今回のことが特に熱が原因とは思ってませんでした。

そもそも

MSFS以外のゲームでは影響が出ていない


わけですからね。負荷の高いゲームは他に Cyberpunk 2077 と Kayak VR くらいしかやってませんけど。

MSFS_202408_22ShimanamiKaido

で、次に考えたのは、アドオン/MOD の入れすぎ。日本中心に各地の空港をリアルにする MOD、都市風景をリアルにするアドオンを入れまくってます。起動も遅くなれば、マシン負荷にも影響を与えています。

以前使っていたゲーミングノートPC ではアドオン/MOD を入れすぎたことでプレイ途中で必ずフリーズするポイントがあったりしました。

ので、マーケットプレイスで購入したアドオンはそのままに、外部から(Community フォルダに)追加しているアドオン/MOD を最小限(6分の1くらい)にして起動比較してみると……

MSFS_202408_29CFX_EGLF2EGLL2MSFS_202408_30CFX_EGLF2EGLL3minimumAddonDLSSQ(ファンボロー→ウィンザー城→ヒースロー)

MSFS_202408_36CFX_EGCB2EGCCviaOldTrafford1MSFS_202408_37CFX_EGCB2EGCCviaOldTrafford2minimumAddon(マンチェスター界隈)


ファンボロー空港からヒースロー空港へ飛ぶルートでは多少ですが、マンチェスター市内の遊覧飛行ではそれなりに効果があったようで、アドオン/MOD の量を抑えることはスタッタリング抑制やフレームレート向上、システム安定に寄与することは確かなようです。

とはいえ、ファンボロー空港からヒースロー空港へ飛ぶルートの変化でも判るように

アドオン/MODの使用抑制効果は
多少マシになる程度


であり、そもそも画質プリセットも DLSS アップスケーラーも以前快適に飛んでいた時の設定より落としたままですから、今回頻発していたスタッタリング抑制の有効手段かというと微妙でした。

MSFS_202408_27FlightPlan_EGLF2EGLLviaWindsorCastle

ということで、しばらくは⬆️上記のような「ファンボロー空港からウィンザー城経由でヒースロー空港へ 1,000ft. の超低空を飛ぶフライトプラン」を AI で自動フライトさせて、設定を変えつつ定点観測することに。CapFrame X の計測値を見て、どんな設定が有効なのかをアレコレ試していました。

まず、このルートだとヒースロー空港にある程度近づいたところで急に動きが悪くなることがあるので、航空トラフィックをリアルタイム設定(現実の民間フライトをリアルタイムに反映)からトラフィック・オフ(他の飛行機を飛ばさない)にしたところ、

MSFS_202408_29CFX_EGLF2EGLL2MSFS_202408_31CFX_EGLF2EGLL4AirTraffic0DLSSQ


と、トラフィックをオフにすることは負荷軽減に寄与しました。まぁこれは MSFS の負荷軽減策としては一般的なものです。

ただ、これ以外の設定変更は今ひとつ効果がなく、そもそも「購入当時のような画質設定を最上にしても快適に飛べる」環境への復帰には届いていませんでした。

そんな中、ふと

もしかしてキャッシュが悪さしているのかも?


と思って、テンポラリ・キャッシュをオフにしてみると……

MSFS_202408_29CFX_EGLF2EGLL2MSFS_202408_32CFX_EGLF2EGLL5CacheOffDLSSQ


一気にスタッタリング頻度が改善!というか、ほぼゼロに!!

そして画質設定を落としていたのを画質プリセット「ウルトラ」、DLSS アップスケーラーを使わず TAA 100% に、航空トラフィックもリアルタイムに全部戻してみても……

MSFS_202408_33CFX_EGLF2EGLL6CacheOffTAA

おおっ!画質設定を戻しても、スタッタリングがほぼゼロ。購入当初のようなマシンスペックに相応しい「画質最上にしても WQHD 解像度なら余裕」な性能に戻ってきました👏👏👏

なんか知らんけどキャッシュが悪さしてた


というのが結論。CapFrame X で計測はしていませんが他のエリアを飛んでいても、しばらく動きの悪さ、カクツキの多さに悩まされていたのが嘘のように快適フライト。

ただ、MSFS はデーターバカ喰いアプリであり、「ファンボロー空港からウィンザー城経由でヒースロー空港へ」という十数分のフライトでもサーバーから 1.5GB くらいのデーターをダウンロードしてきます。

キャッシュオフのままずっとプレイするとなると毎回バカみたいな量のデーターをダウンロードすることになり、いくら事実上無尽蔵な高速回線を使っているとはいえ、さすがにキャッシュオフのまま使いたくはない。

ということで、今まで使っていたキャッシュファイルを消してから再度キャッシュを有効にして、また同じように AI フライトで同じルートをフライトさせてみる。と……

MSFS_202408_34CFX_EGLF2EGLL7CacheONTAA

はああ?(゚Д゚)ハァ? キャッシュを完全にクリーンにしたはずなのに、

キャッシュを有効化すると
高いスタッタリング率が再発


して、なんじゃそりゃ?と ┐(´д`)┌

そう思いながら、このままキャッシュオフでプレイし続けるしかないのかと考えていたわけですが、

もしかしてシステム SSD にキャッシュ作っていたのがダメなのか?マシン使用開始からしばらくは問題なかったしそれで大丈夫だと思うんだけど、ひとまずキャッシュファイルの場所をゲームアプリ用のセカンダリ SSD に変えて試してみるか……


とキャッシュファイルをセカンダリ SSD に作り直して、同じく AI フライトで同じコースを飛ばしてみると……

MSFS_202408_45CacheSetting
MSFS_202408_35CFX_EGLF2EGLL8CacheDTAA

問題なし!キャッシュオフの時と同じように、ほぼスタッタリングなしの快適フライト動作👍👍👍

キャッシュファイルをセカンダリSSDに指定したら、キャッシュを有効にしてもスタッタリング率は悪化せず快適動作!!

先に挙げた他のエリアのフライトを試してみても……

MSFS_202408_36CFX_EGCB2EGCCviaOldTrafford1MSFS_202408_38CFX_EGCB2EGCCviaOldTrafford3(マンチェスター界隈)

MSFS_202408_39CFX_KDCA2KCGSviaWhiteHouse1MSFS_202408_40CFX_KDCA2KCGSviaWhiteHouse2(ワシントン界隈)


バートン・エアロドームからマンチェスター市内を遊覧してマンチェスター空港へ飛ぶフライトも、ロナルドレーガン・ワシントン国際空港からカレッジパーク空港まで飛びながらホワイトハウス始めワシントン観光しながら飛ぶ場合も、また他のフライトも多くの場合はスタッタリング率 1% 未満に収束👏

いやー、キャッシュの問題に辿り着くまでアレコレ試行錯誤していたのは何だったのか……


とアホらしくなる思い。

猛暑酷暑の季節でしたので、MSFS は外気温も室温もある程度下がった深夜に、1時間程度少しずつチマチマと試しながらでしたので、解決まで1ヶ月くらいかかりましたからねえ。

ぶっちゃけ、
  • なぜ、キャッシュオフにしたら酷くなったスタッタリングが解決したのか
  • なぜ、クリーンにしたキャッシュを有効化したら酷いスタッタリングが再発するのか
  • なぜ、キャッシュファイル位置をセカンダリ SSD へ変更したら問題なく全てが解決したのか

どれも私の乏しい知識では判らないことばかりです。想像できる要因がないわけではないですが、現状確認のしようもないし、台風が通り過ぎても真夏の酷暑が終わらない毎日では、ひとまず解決したのにさらに追求する気も起きておりません。まぁ涼しくなってからの課題ということで(たぶん忘却)。

MSFS_202408_44VR_HeavyRainAtTokyo
VRでゲリラ豪雨に突っ込んでいったらヤバかった(当然)


というわけで、原因究明もしないまま終わるのは決して本意ではありませんが、ひとまず

しばらく MSFS をプレイしていたら、なんか知らんけどスタッタリングが増えて快適なフライトが阻害されてきたけど、キャッシュをオフったら解決、キャッシュを再度有効にする時は作成するドライブをシステム SSD 以外にしたら問題なし


という対処療法的な話でございました。原因が突き止めないままは気持ち悪いですけど、とりあえず今日はこの辺で。


Amazon_DIWANGUS_HotasStand
(ジョイスティックスタンドを買うか悩み中…)