蒼い海に溺れて2nd season

なんとなく作ってみたけど、しばらく様子見

古いPCゲームで遊ぶ

古いDirectXゲームで遊ぶお話。

ふと、手元にあった古いPCゲームってWindows 10で動くのかなーと試してみたら、意外と動作が遅くてカクカクする。
DirectX関係の動作条件の問題なのはすぐに理解できたが、対処法までは詳しくないので調べてみた。

まず最初にこれかなーって試したのはDirectXのバージョン。
古いバージョンのDirectXをインストールしないと満足に動かないとのことなのでインストールしてみたが、全く改善しなかった。aprico-media.com
次に試してみたのはd3d9.dllっていうファイルを実行ファイルと同じディレクトリに置いてみること。
しかし、改善は微々たるものであり、カクカクした動作は全く改善しなかった。
この方が間違っているのではないのだろうが、自分の環境はそれだけでは上手く行かないようだ。qiita.com

じゃぁどうすれば良いんだと更に調べてみたところ、今のパソコンはGPU処理を行っているが、古いゲームはCPU処理を行っているとのことであった。
DirectX9をインストールした上でこのパッチファイルを実行ファイルと同じディレクトリに置くことで、スムーズに動くとのこと。
実際に試してみたところ、カクカクだったゲームが無事に、従来のように安定してスムーズに動くようになった。
こうやって技術を提供してくれる方々には感謝しかない。

silight.hatenablog.jp

つまり、DirectXを使った古いPCゲームを動かすためには

  1. DirectX9のインストール
  2. しらいと氏提供のパッチddraw.dll

の2つが必要ということになるらしい。

余談

一体どういう理屈なのか気になったので調べてみたが、ざっくりと捉えればレトロゲームの描画処理はCPU処理で複雑なことをしないので、GPU処理で処理の過程を増やすことが却って遅くなる原因になってるっぽい?
ハードウェア関係には弱いのであんまり正確なことは言えないが、そこは何卒お許し頂きたく。

www.kagoya.jp