(function() {function signalGooglefcPresent() {if (!window.frames['googlefcPresent']) {if (document.body) {const iframe = document.createElement('iframe'); iframe.style = 'width: 0; height: 0; border: none; z-index: -1000; left: -1000px; top: -1000px;'; iframe.style.display = 'none'; iframe.name = 'googlefcPresent'; document.body.appendChild(iframe);} else {setTimeout(signalGooglefcPresent, 0);}}}signalGooglefcPresent();})();

DirectX9の動作がオカシイ?

いろいろな変化の中で見つけてしまった。

原因不明

先日、DirectX9世代のゲームを新PCで起動させた際、特定の場面に遭遇するとゲームが停止するという現象が発生する事が判明した。
その特定の場面というのが、3Dモデリングされたキャラクターが大きく表示されるシーンで、その直前までも粒度の雑なキャラクターは表示されているものの、この現象が発生するシーンに入った途端に粒度が高いキャラクターが表示されるタイミングなので、原因としてはGPU関係のドライバにあるのではないかと予測はしている。
しかし、実はこのタイミングで結構いろんなアップデートを立て続けにしているので、本当の意味での原因というのがわからない。
たとえば、Windows10 Fall Creators Updateも行っているし、ビデオドライバのRadeon Software Adrenalin Editionへとアップデートもしているし、そもそも以前のPCの環境と比較すればGPUもGeForceからRadeonに変更しているし…変更点が多すぎて、真の原因が今一つわからない。
一番解せないのは、同じプログラムが以前のPCだと動作する、という事である。
新PCでだけ動作しない理由となれば、やはり原因はRadeon&ドライバという事になるのだろうか?

Windows10 FCUでは改善している

そもそも、Windows10 Fall Creators Update(以下Windows10 FCUと略)では、DirectX9関係の問題がいくつか改善されていると言われている。
例えばWindows8.1/10ではDirectX9で4GB以上のVRAMを割り当てる事ができないというバグが存在していた。このバグの存在は古くから知られていて、2015年4月20日にはユーザーから報告されていた問題である。それが今回のWindows10 FCUでようやく解決された。但し、Windows8.1に関しては未修正という事らしいが。
また、Windows10 FCUを適用したが故に、GeForce関連でG-SyncやV-Syncに問題が発生している、という報告例もある。AMD系ではなくNVIDIA系の問題ではあるが、こういう問題がNVIDIA系で出ているとなると、AMD系でも何か問題があってもおかしくはない。まぁ報告例がないからハッキリわからないのだが、報告例がでない程不況していない、という事でもないハズなので、真偽は定かではないのだが。
また、現在では修正パッチが出た(2017年12月1日に出た)が、Windows10 FCUを適用するとDirectX9ゲームでのフレームレートが低くなるという問題もあった。これはウィンドウモードでプレイすれば問題はでない話のようだが、正常ではないという事実に違いは無い。
とにかく、あらゆる面でWindows10 FCU適用による弊害というのが出ていて、徐々に修正はされつつあるものの、イキナリ動作しなくなるなんて問題は出てきても不思議ではない状況にある。
そんな感じなので、今回DirectX9ゲームが特定の場面で停止する、という問題の原因がどこにあるのかが見えないのである。

Radeonだからダメ?

前述したように、以前のPCでは今回の問題は発生していない。
以前のPCの環境としては、Windows10 FCU適用済みで搭載しているGPUはGeForce GTX970、ドライバは最新版を入れている。
この環境下で全く同じプログラムを動作させて問題なく動作しているのだが、これが新PCだと動作しない。
当初、以前のPCと新PCの違いだけで考えた場合に、違うのは搭載しているGPUとそれに関連するドライバだけなので、Radeon側に問題があると限定して考えていた。
しかし、厳密に言えばCPUも違えばマザーボードも違うし、そもそもインストールしたプログラムの順番も違えば構築している細かな環境も異なっている。
そうした相違あるシステムでの比較となれば、確かに原因究明は困難を極めるワケだが、往々にしてある一定の標準というのは存在していて、その標準で考えた時に動作しない問題があれば、まずは大きな違いから注目するのは必然であり当然である。
というわけで、先日アップデートしたRadeon Software Adrenalin EditionでDirectX9との不具合が出ているかをいろいろ探っているのだが、現時点ではそうした報告は見当たらない。
というか、そもそもWindows10 FCU対応として、今回のAdrenalin Editionの前であるCrimson Editionの最新版で対応済みとしていた関係から、Adrenalin Editionでは全く問題が見つかっていない体の記事ばかりである。
というわけで、以前の環境にRadeon RX Vegaを載せて動作させるとどうなるのか? という事を試してみた。
すると…やはり動作しない。同じ条件で途中で停止してしまい、結局プログラムが停止してしまう。GeForce GTX970に戻せばやはり問題なく動作するので、どうもRadeonとの組合せで問題が起きる可能性は低くはないようである。

とりあえず様子見

可能性を追求していくと、とにかくいろんな条件が見えてくるので、キリがない。
ドライバが新しくなったからにしても、Windows10 FCUが原因であったとしても、今後もアップデートは続いてくだろうから、現時点ではしばらく様子見しようかと思う。
もしどうしても解決しないなら、以前使っていたPCをいつでも利用出来るようにする、というのが一つの解決策でもある。
できれば、全てを新PCに移行したいのだが、動かなければやむを得ない。
リモートデスクトップ機能で以前のPCを動作させるという手もあるが…このリモートデスクトップ機能もまた、万能というものではないので、どこまでできるのかをまた確認してみたい。

この記事が気に入ったら
いいね!しよう

Share
アバター画像

武上

18歳の時、人生の最大の選択ミスをしてしまい、いきついた場所として山梨県人となる。 その後、建設業に身を投じ、資格をいくつか取得するものの、結局自分の性格と合わない事を理由に上京。 上京後、世間で話題になりつつあったアニメ・ゲームを主体とする業界の人間となり、デジタルコンテンツ業界を含む数々の著名人と同じ土俵でマルチメディアな仕事をするに至る。 一見華やかなメディアの世界の、その闇の深さたるやハンパない事こそ世間に何となく知られてはいるが、業界人しか知らないその氷山の全体像を十分すぎるほど目の当たりにした後、家庭の事情で再び甲州へと帰還。 しかし、この帰還も人生の選択ミスだったかもしれないなぁ…と今では思うものの、時既に遅し。 今は地元の製造業を営む会社の総務・品質保証という地味ではあるものの堅実な職につき、いつか再びやってくるだろう夢の実現を信じて隠者的生活を送っている…ハズだったのだが、またしても周囲の事情で運命は波乱の様相を見せ始めた。 私の人生は一体どの方向を向いているというのだろうか? ちなみに筆者はPCとの付き合いはかなり長いと思っている。 古くはPC-8801 mk2 SR、X1 Turbo、X68000、FM-Towns、PC-9801シリーズ(互換機含む)、PowerMAC 9500等をリアルタイムで使い、その後は、Windows PCの自作機を中心に現在に続いている。 デジタルガジェットに関しては興味もある事から、その時代の時々において、いろいろ使ったり調べたりして、専門家ほどではないが知識は蓄えてきたと思っている。 そうした経験を元に、今の時代へ情報発信させてもらっている。少々くどい言い回しが多いかも知れないが、お付き合いいただけるとありがたい。 連絡先:takegami@angel-halo.com (@を小文字にしてください)

You may also like...

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


コメントは承認待ちです。表示されるまでしばらく時間がかかるかもしれません。

Desktop Version | Switch To Mobile Version