Windows 10の基盤となるDirectX 12ゲーミングテクノロジーの期待が、ここ数ヶ月インターネット上で話題になっています。フレームレートが劇的に向上!消費電力が劇的に低下!AMDハードウェアのパフォーマンスが劇的に向上!まさに、 PCゲーミングの新たな時代到来です。
全部本当だよ!いや、たぶん。
Microsoft の段階的なロールアウトの一環として、Windows 10 がまもなく世界中の PC に導入されるので、DirectX 12 について少し理解を深めましょう。DirectX 12 は実際には何をするのか、どこで入手できるのか、そして最も重要なのは、その素晴らしい「本物に近い」素晴らしさをいつから利用できるのかということです。
さらに詳しく: PCWorldの包括的なWindows 10レビュー
DirectX 12 とは何ですか?
まずは概要から始めましょう。DirectX 12は、Windowsベースのシステムでビジュアルやその他のマルチメディアタスクを処理するMicrosoftのDirectXアプリケーションプログラミングインターフェースの最新バージョンです。多くのPCゲームがグラフィック性能の向上に何らかの形でDirectXを利用していることもあり、エンドユーザーの多くはDirectX 12をご存知でしょう。
DirectXは主にWindowsと関連付けられていますが、Microsoftが最近発表した「Windows everywhere」キャンペーンにより、Windows 10のコア機能がほぼすべてのMicrosoftプラットフォームに普及するため、DirectX 12はWindows 10搭載のコンピューターやタブレット、Windows 10 Mobileスマートフォン、さらにはXbox Oneにも搭載される予定です。つまり、Windows 10搭載デバイスであれば、基本的にDirectX 12も動作するということです。
画像: マイクロソフト デバイスで Windows 10 が実行されている場合は、DirectX 12 が実行されます。
豆知識:「Xbox」という名前は「DirectX Box」に由来しています。ちょっと残念な事実ですが、Microsoftは以前のバージョンのWindowsにDirectX 12を導入する計画を発表していないため、DirectX 12を利用するにはWindows 10にアップグレードする必要があるようです。Windows 10はほとんどの人にとって無料なので、ありがたいですね。
DirectX 12 の何が特別なのでしょうか?
短い答え: 開発者が DirectX 12 を最大限に活用することに決めた場合、PC ゲームを高速化できます。
長い答え:DirectXがかつての独自仕様のグラフィックAPI戦争に勝利した理由は、その高度なハードウェア抽象化にあります。PCエコシステムで利用可能なコンポーネントの量は膨大で、それらを組み合わせたシステムの組み合わせの複雑さを考慮すると、なおさらです。DirectX 12では、開発者が高レベルAPIをターゲットにすることができ、ハードウェア互換性に関するあらゆる細部はバックグラウンドで処理されます。
DirectX 12でもこの方針は継承されていますが、開発者がソフトウェアをさらに最適化したい場合、ハードウェアへの低レベルアクセスもオプションで提供されます。このAPIのハイライト機能により、ゲームはCPU使用率をより効率的に管理できるようになり、単一のコアに大量の処理を集中させるのではなく、複数のコア間で負荷分散を最適化できます。また、ゲームのGPUオーバーヘッドも削減され、オーバーヘッドが減れば速度が向上します。
DirectX 12 では、マルチ GPU セットアップの制限が緩和されます。
新機能「Explicit Multiadapter」も同様に魅力的です。Explicit Multiadapterを使用すると、ソフトウェアはPC内の複数のグラフィックプロセッサを、たとえベンダーが異なっていても活用できるようになります。例えば、GeForce GPUが主要な処理を担っている間に、特定のグラフィックタスクにはIntelプロセッサに統合されたグラフィックカードを利用したり、AMD RadeonグラフィックカードとNvidia GeForceグラフィックカードを同一システムで併用したりといったことが可能になります。
各フレームのレンダリングタスクの一部をセカンダリGPUにオフロードすると、フレームレートが向上するだけでなく、全体的にスムーズなゲーム体験を生み出すことにもつながります。これは、Civilization: Beyond EarthがAMDのMantle APIを使用したCrossFireセットアップで「分割フレームレンダリング」を使用していることからも明らかです。(マルチカードセットアップの従来の「交互フレームレンダリング」では、各GPUがフルフレームを交互にレンダリングするため、この名前が付けられています。)
Explicit MultiadapterはPCゲームの聖杯のように聞こえますが、この素晴らしい機能がどれほど広く支持されるかはまだ分かりません。開発者はこれを動作させるのに膨大な労力を費やす必要があるからです。PC Perspectiveはこの複雑なトピックを分かりやすく解説しています。
技術系の方は、DirectX 12 の発表記事から始めて、DirectX 12 全般に関する詳しい情報を DirectX 12 開発者ブログで確認してください。
これはかなり聞き覚えのある話だ
マントルのご冥福をお祈りします。
おっしゃる通りです。DirectX 12は、AMDのRadeonグラフィックプロセッサ向け、現在は廃止されたMantle APIによく似ています。MantleはWindows 10が発表されるずっと前から、このすべてを実現していました。リリース後、AMD幹部はMicrosoftがDirectX 12をリリースする可能性は低いだろうと予想していましたが、突然MicrosoftがDirectX 12を発表しました。これは基本的にMantleの主要機能を、はるかに幅広いハードウェアで模倣したものです。
DirectX 12 は実際にゲームのパフォーマンスにそれほど大きな違いをもたらすのでしょうか?
すべての兆候がイエスを示しています。IntelとMicrosoftによると、DirectX 12は電力節約や50%以上のパフォーマンス向上をもたらす可能性があるとのことです。
インテル この Intel ベンチマークが DX11 から DX12 に切り替わると、CPU 電力使用量がどのように低下するかを確認してください。
「これはまるでハードウェアを無料で手に入れたようなものです」と、マイクロソフトのグラフィックス担当プリンシパル・プログラム・マネージャー、ブライアン・ラングレー氏は3月にPCWorldに語った。「ゲーマーなら、Windows 10にアップグレードしてIris Proを手に入れれば、まるで特別な刺激を得られるようなものです。プレイできないゲームからプレイできるゲームへ、平凡から最高へ、最高からこの世のものとは思えないほど素晴らしいゲームへと、ゲームのレベルが劇的に向上するかもしれません。」
AMDのラジャ・コジュリ氏も、2014年にこの技術を発表した際、DirectX 12は「4世代先のハードウェアを手に入れるようなもの」だと述べた。DX12と同様のマントルを有効にすると、『バトルフィールド4』ではDirectX 11の結果と比べてパフォーマンスが最大58パーセントも向上したが、正確な数値はハードウェアの設定によって大きく異なった。
3DMark の「API オーバーヘッド機能テスト」を使用すれば、今すぐにDirectX 12 の性能を自分でテストすることができます。Gordon Ung のウォークスルーでその方法が説明されていますが、本質だけを知りたいのであれば、DirectX 12 の潜在的なパフォーマンスの飛躍は驚異的です。
PCワールド 当社のベンチマークが示すように、Mantle と DirectX 12 のパフォーマンスは、3DMark API オーバーヘッド機能テストにおいて、古い DX11 と比べて優れています。
とはいえ、現時点で私たちが入手できるDirectX 12のパフォーマンスに関する最も具体的な証拠は、業界ベンダーからの約束と、ドローコールのみに焦点を当てた単一の合成理論ベンチマークの結果です。DX12のポテンシャルについては楽観的になる理由、いや、むしろ興奮する理由が数多くありますが、DirectX 12対応ゲームの最初のベンチマークが登場するまでは、すべてを鵜呑みにしないようにしましょう。
DirectX 12 ゲームをプレイするには新しいグラフィック カードが必要ですか?
おそらくそうではない。
DirectX 12は、ほとんどの最新グラフィックカードで動作します。AMDのGraphics Core Next Architecture(GCN)をベースに構築されたRadeonグラフィックカードまたはAPU(Radeon 7000シリーズ、Radeon 8000シリーズ、Radeon R200シリーズ、Radeon R300シリーズ、そしてFuryとFury X)はすべて、DX12で快適に動作します。つまり、2012年以降にリリースされたAMDグラフィックソリューションは基本的にすべてDX12に対応しています。
ブラッド・チャコス 現在のすべてのグラフィック カード (写真の Asus Strix Fury や EVGA GTX 980 FTW など) は DX12 と互換性があります。
NvidiaのDirectX 12サポートはさらに古くから始まっています。NvidiaのMaxwell、Kepler、またはFermi GPUを搭載したすべてのグラフィックカード(つまり、GeForce GTX 900、700、600、500、400シリーズ)はDirectX 12で動作します。実際、Nvidiaの第2世代Maxwellカード(GTX 980 Tiなど)は、ボリュームタイルリソースやコンサバティブラスタライゼーションなどの機能を含むDirectX 12の12.1機能レベルをサポートすると発表されている唯一のグラフィックカードです。
フォーラムやソーシャルメディアのフィードで一部の人が主張しているように、他のグラフィックカードはすべて「DirectX 12 をフルサポートしていない」ということでしょうか?そうではありません。話は複雑です。より詳しい内容を知りたい方は、ExtremeTech の Joel Hruska による素晴らしい記事「Demystifying DirectX 12 support」をぜひご覧ください。
Intel に関しては、第 4 世代 (Haswell) 以降のすべてのコア プロセッサが DX12 をサポートします。
保守的なラスタライゼーションとその他のいくつかのツールは、DX12 機能レベル 12.1 をサポートするグラフィック カードでのみ機能します。
では、Linux または Mac を実行する場合はどうなるのでしょうか?
DirectX 12は完全に動作しなくなります。もちろん、これは目新しいことではありません。6年前にリリースされたDirectX 11は、CodeWeaversの回避策によって今年後半にようやくLinuxに導入される予定です。
しかし、だからといって、技術の進歩に取り残されるわけではありません。OpenGLを支える強力な業界コンソーシアムであるKhronos Groupは、AMDのMantleの灰の中から蘇った、オープンソースでプラットフォームに依存しない「よりリアルに近い」グラフィックスAPIであるVulkanの開発に尽力しています。そして、ValveのLinux搭載Steam Machineが11月に発売予定であることから、VulkanとOpenGLはPCゲーマーにこれまで以上に大きな影響を与えるでしょう。Linuxゲームの人気が高まっており、DirectXの代替手段も増加しています。
Windows 10 がリリースされました!DirectX 12 でゲームがもっと速くなるはずですよね?
ちょっと待ってください。確かに来週はWindows 10がリリースされ、DirectX 12がそのコア部分に組み込まれ、ゲームのパフォーマンスも向上するかもしれません。しかし、それはDirectX 12のおかげではありません。少なくとも今のところは!
DirectX 12の機能を活用するには、ソフトウェアをDirectX 12専用に開発する必要があります。前述のFuturemarkの3DMarkベンチマークスイートには、DX12のドローコールパフォーマンスをテストするツールが既に含まれていますが、DirectX 12対応ゲームが初めてリリースされるのは2015年末と予想されています。Windows 7の登場後、DirectX 11が広く普及するまでに時間がかかったことを覚えていますか?ゲームの開発には長い時間がかかります。特に、新しい機能を備えた新しいAPIを理解するには時間がかかります。
我慢しろよ、バッタ。待つだけの価値はある。
