メインコンテンツへスキップ
Voxel Duke Nukem 3D Has Been Released and It's Retro-Cool

Duke Nukem 3DでDLSS 5を動作させる方法

DOSBox、dgVoodoo2、RenoDX等を使用し、Duke Nukem 3DでDLSS 5を導入する方法を解説。RTX 5090 Mobileでの検証結果は10 fps程度です。

執筆者
Friolt
更新日
読了時間
4分
トピック
ニュース
なぜソースポートではなくDOSBoxなのか
広告

『Duke Nukem 3D』でDLSS 5を動作させるには、他のDOSゲームと同様の過酷なプロセスを経る必要があります。DOSBoxでオリジナルの実行ファイルを起動し、dgVoodoo2でDOSBoxのウィンドウをDirectX 11にラップし、フィーダーでモーションベクターを生成し、RenoDXでアドオンをホストし、最後にNVIDIA公式ライブラリで描画結果を再構築します。検証環境はRTX 5090 Mobile、Core Ultra 9 275HXで、フレームレートは約10 fpsでした。

幸いなことに、『Duke 3D』は一人称視点のゲームであり、これはAIモデルが得意とするシーンです。しかし、それ以外の点については厳しい状況です。

なぜソースポートではなくDOSBoxなのか

EDuke32とDOSBoxのどちらを使うべきかという問いに対する答えは単純です。EDuke32はOpenGL経由でレンダリングを行いますが、dgVoodoo2はOpenGLをラップできないため、DirectX 11に確実に変換できるDOSルートを選択する必要があります。また、1996年当時のソフトウェアレンダラーが2026年のニューラルネットワークによって評価されるという体験は、純粋主義者にとっても興味深いものでしょう。

オプションレンダラーこの構成への適合性
DOSBox上のオリジナルDOS実行ファイルソフトウェア(DirectDrawまたはDirect3D 9経由)適合(dgVoodoo2を使用)
EDuke32OpenGLまたはソフトウェア不適合(dgVoodoo2非対応)
20th Anniversary World Tour独自のレンダラー未検証

ステップ1. DOSBoxのラップ

DOS実行ファイルが含まれる『Duke Nukem 3D Atomic Edition』であればどのコピーでも構いません。Buildエンジンは『Wolfenstein』よりもCPU負荷が高いため、DOSBoxには十分なリソースを割り当ててください。

  1. dosbox.confでcoreをdynamic、cyclesをmaxに設定します。
  2. 標準のDOSBoxではoutputをddrawに、DOSBox-Xではdirect3dに設定します。
  3. dgVoodoo2のMS x86フォルダからDDraw.dllまたはD3D9.dllをコピーし、dosbox.exeと同じ場所に配置します。
  4. dgVoodooCpl.exeとdgVoodoo.confを同じフォルダに追加します。
  5. dgVoodoo2の出力設定をDirect3D 11、Feature Levelを11.0に設定して適用します。
  6. SETUP.EXEを一度実行し、ビデオモードを選択して、ゲーム内にdgVoodooのウォーターマークが表示されることを確認します。

『Duke Nukem 3D』のDOSBox設定で重要なのはこれだけです。VESAモードを上げると見た目は良くなりますがCPU負荷が増大するため、まずは640x480から開始してください。

ステップ2. ベクター、RenoDX、ライブラリ

  1. dosbox.exeにアドオンサポート付きでReShadeをインストールし、DirectX 11を選択します。
  2. RenoDXモーションベクター用の32ビットDLSS5-Feederビルドとシェーダーパックを追加します。
  3. RenoDX DLSS 5アドオンを実行ファイルの隣にコピーします。
  4. DLSS 5対応タイトルの公式ニューラルレンダリングライブラリと、標準のDLSSアップスケーラーファイルを追加します。
  5. ゲームを起動し、Homeキーを押してAdd-onsからNeural Renderingを有効にします。

各DirectXバージョンのフォルダ階層を含む詳細な手順は、ガイド全文を参照してください。

AIモデルがBuildエンジンに与える影響

『Duke Nukem 3D』のBuildエンジンは、本物の3Dモデルではなくセクターとスプライトで描画を行います。壁や床は廊下として認識されるため良好に機能しますが、敵やDukeの手はスプライトであるため、AIモデルが推測で補完します。DLSS 5のマルチパス設定では、x2以上になるとフレーム履歴を無視して各フレームをゼロから再描画するため、AIによるハルシネーション(幻覚)が急速に発生します。

設定初期値理由
Injection pointOutputレンダリングステージでの注入では、変更可能なジオメトリが存在しないため。
IntensityMedium値を上げるとレベル全体の色調が変化してしまうため。
PresetNatural最も控えめなパレット設定。
Passesx1パスを追加するごとにフレームが暗くなるため。
Enable UpscalingOff未完成であり、ちらつきが発生しやすいため。

注意点

  • Pig CopやAssault Trooperは、プリセットを変更すると顔が変わることがあり、意図せず面白い結果になります。
  • ベクターはエンジンから提供されるものではなく推定値であるため、素早くストレイフ移動するとゴーストが発生します。
  • HUDにはマスクがかからないため、HUDも再描画の対象となります。
  • フルスクリーンDOSBoxではオーバーレイが隠れる可能性があるため、ウィンドウモードでデバッグしてください。

DLSS 5を適用したDOSゲームの中で、『Duke 3D』はAIモデルの学習元であるシューターに近いため、最も説得力のある見た目になります。とはいえ、これまでにインストールした中で最も動作の重い『Duke Nukem 3D』グラフィックMODであることに変わりはありません。

結論

動作はし、廊下ではそれなりに興味深い見た目になりますが、フレームレートは10 fpsです。束の間の「王」への敬礼を。

広告