DirectX API レベルと機能レベル

DirectX API レベルと機能レベル

2 つのグラフィック カードには、それぞれ次の DirectX 仕様があります。

  • DirectX 11.2 (機能レベル 11_0)
  • DirectX 12 API (機能レベル 11_0)

違いは何ですか?

答え1

DX のすべてのアップデートには、新しいハードウェアを必要とする機能と、すでにリリースされているハードウェアでサポートされている機能があります。DX12 も例外ではありません。

例えば、DX11の現在のチャートは次のようになります。

ここに画像の説明を入力してください

機能レベル関数の目的は、開発者が別々のコードベースを並行して開発するのではなく、単一の API をターゲットにできるようにして、DX12、DX11、DX10 などのために別々のコードを書くのではなく、ゲームが複数世代の GPU ハードウェアでスムーズに実行できるようにすることです。機能レベル 9_3 の DirectX 11 GPU は、DirectX 11 効果を魔法のように実行することはできませんが、開発者がそれを可能にするために完全に別のエンジン実装を書く必要なく、DirectX 9 モードでゲームを実行することはできます。

DX12 を取り上げているほとんどの Web サイトでは、DX12 によってもたらされるパフォーマンスの大幅な向上の可能性について説明していると思われます。現在お持ちのカードは、これらの変更をサポートします。

これまでにプレビューされた (および Mantle でデモされた) DirectX 12 のマルチスレッド機能とマルチ GPU 機能は、すべての機能レベルで完全に利用可能であることを覚えておくことが重要です。

ここに画像の説明を入力してください

さらに:

現在、Intel IGP は DirectX 12_0 をサポートしておらず、Nvidia の Maxwell ハードウェアのみが 12_0 または 12_1 をサポートしています。

DX12と少し違う点

Microsoft が DirectX 12 をそのように構築した理由を理解するには、別の例を考えてみましょう。DirectX 11 より前は、新しい DirectX バージョンはすべて新しいハードウェア要件に結び付けられていました。AMD や Nvidia は、将来の DirectX 標準の一部になる前に特定の機能をハードウェアに実装することがありましたが、グラフィック カードは、発売時にサポートされていた DirectX API に固定されていました。

ソース

関連情報