オープンソースOSのReactOSは2026年9月25日、DirectX互換基盤をWine 10系の実装へ更新するプルリクエスト(PR)#9352を統合した。変更量は498,142行の追加、119,138行の削除、964ファイルに及ぶ。ただし、この数字をそのまま対応ゲーム数や性能向上の大きさと読むのは早い。今回の中核は、長く隔たっていたWine側のコードを取り込み直し、ReactOS固有の旧世代Windows互換性や限られたテスト環境に合わせて再接続する作業にある。

AD

498,142行が示すのは機能数ではなく同期の規模

PR #9352は19件のコミットで構成される。中心となるコミットの件名は「Reimport all directx from WINE-10.0」であり、Wine由来のDirectX互換コードを広い範囲で再取り込みした。対象にはDirectDrawとDirect3Dがあり、DirectMusicやDirectShow関連も含まれる。PRの統計は498,142行の追加と119,138行の削除を示すが、これは498,142行分の新機能を一から実装したという意味ではない。大規模な再取り込みとファイル同期を含むため、数値は変更範囲の広さを示す指標として見るべきだ。

バージョン表記にも補足が要る。PRの説明は「Wine 10.0へ移す」ことを目標として掲げ、主要コミットもWine 10.0からの再取り込みを明記している。一方、PRの題名はWine-10.1-devの特定スナップショットを指す。したがって、統合後のReactOSがWine 10.1のすべてと同等になったと断定するのではなく、Wine 10.0時代のコードを基準に同期し、その後の開発スナップショットも含む更新と捉えるのが正確である。

開発者Justin Miller氏は、このPRに230時間以上を費やしたと説明している。それでも本人は作業が完了したとはしていない。巨大な変更量が意味するのは到達点の大きさより、旧版から現行世代へ追いつくために解消した距離の長さである。

OpenGLは現実、Vulkanは条件付き

ReactOS上のDirectX互換機能は、Windows用ゲームから見えるAPIをそのままGPUへ渡すのではなく、WineD3Dなどを介してOpenGLやVulkanで描画する。PRの説明では、OpenGLが現時点で主に使われる描画経路であり、Vulkan経路には条件が付く。Vulkanを利用するにはカスタムブランチ、またはMesaのソフトウェア描画環境が必要とされており、標準構成で広く使える状態だとは示されていない。

この制約は、更新の価値を小さくする話ではない。むしろ、DirectX APIの取り込みと、実際に画面へ描く経路の整備が別の層であることを明確にする。API側の同期が進んでも、GPUドライバー、OpenGLの対応水準、Vulkan経路の統合状況によって、ゲームごとの結果は変わり得る。

実際、コミットにはWineD3Dを利用できない環境を検出する処理と、3D描画が使えない場合の警告をプロセスごとに一度だけ表示する変更が含まれる。これは性能改善の証明ではなく、描画経路を確立できない状況をOS側が認識し、利用者へ伝えるための仕組みである。互換性改善を評価する際は、起動の可否、正しく描画できるか、十分な速度が出るかを分けて見る必要がある。

AD

取り込み、OS世代、テスト環境の三つの境界

今回のDirectX更新は、Wine 10.0のコード取り込み、NT5.x向け依存削減とVista以降DLLのビルド分離、テスト環境のOpenGL 2.0制約という三つの仕事を同時に含む。

境界 該当コミット 実際の作業 読み違えてはいけない点
Wineとの同期 9fff962、76d0793 DirectX関連コードの再取り込みとDirectMusicの同期 変更行数は新機能数や性能向上率ではない
OS世代の差 a34ee87、479b23d NT5.xで不要な依存を外し、Vista以降向けDLLのビルドを分離 Wineのコードを無変更で移したわけではない
テスト環境 c725e6a、bd6c202、edc88d4 OpenGL 2.0を満たさないテスト機で一部試験を無効化し、対応環境での試験を調整 無効化された試験は機能の合格を意味しない

この表は、同じPRに含まれる19件のコミットについて、件名で明示された役割を「同期」「OS世代」「テスト環境」に分類したものである。各変更の性能寄与や重要度を数値化したものではなく、個々の変更内容を網羅的に監査した結果でもない。特に、D3DX9のシェーダーテストやQuartz関連テストをOpenGL 2.0対応まで無効化する変更は、テスト設備の限界を回避した措置であり、対象機能の完成を証明しない。

PRにはKVM上のx86版とx64版を比較するReactOS Testmanへのリンクも置かれている。しかし、今回取得できた資料だけでは個別テストの成否や回帰の有無を確定できない。大規模同期が統合された事実と、幅広いハードウェアやゲームで安定して動くという評価は切り離す必要がある。

「数百本」は成果ではなく次の検証仮説

Miller氏は、今回の更新とほかの未統合PRを合わせれば、これまで起動できなかった数百本のゲームが動く可能性があるとの見通しを示した。具体例として挙げたのが「Dragon Age: Origins」である。旧来のNT5.x互換環境で同作を起動するための依存関係を減らす変更も含まれるため、方向性を示す例としては理解できる。

ただし、「数百本」は検証済みリストの集計ではなく、開発者による見積もりである。しかも今回のPR単独ではなく、ほかの未統合PRとの組み合わせを前提としている。ゲームが起動することと、映像・音声・入力が正しく動くこと、実用的なフレームレートで遊べることも同義ではない。公開されたPRには、ゲーム別の再現条件、GPU構成、フレームレート、合否一覧は示されていない。

次に確かめる点は三つある。Vulkanを使う描画経路が標準構成へ入るか、OpenGL 2.0以上を備えたテスト環境で無効化した試験を戻せるか、そしてゲーム別の結果を再現可能な条件とともに積み上げられるかである。今回の統合はReactOSのゲーム互換性を即座に保証する完成宣言ではない。Wineとの距離を縮め、互換性を測り直すための大きな基盤更新である。