Direct3D 12 プログラミング ガイドDirect3D 12 programming guide

Direct3D 12 は、1 つ以上の Direct3D 12 互換 GPU を搭載した PC のグラフィックス機能および計算機能をアプリで利用できるようにするための API およびプラットフォームを提供します。Direct3D 12 provides an API and platform that allows apps to take advantage of the graphics and computing capabilities of PCs equipped with one or more Direct3D 12-compatible GPUs.

このセクションの内容In this section

トピックTopic 説明Description
Direct3D 12 の概要What is Direct3D 12? DirectX 12 では、DirectX の核となる 3D グラフィックス API である Direct3D の次期バージョンが導入されます。DirectX 12 introduces the next version of Direct3D, the 3D graphics API at the heart of DirectX. Direct3D のこのバージョンは、以前のバージョンよりも高速かつ効率的です。This version of Direct3D is faster and more efficient than any previous version. Direct3D 12 は、より豊かなシーン、より多くのオブジェクト、より複雑な効果を実現し、最新の GPU ハードウェアを十分に活用できます。Direct3D 12 enables richer scenes, more objects, more complex effects, and full utilization of modern GPU hardware.
新しいリリースNew releases 最新の SDK リリースとともに入手できる最も重要な新しいドキュメントについて説明します。Describes the most significant new documentation available with the latest SDK release.
Direct3D 12 とはUnderstanding Direct3D 12 Windows 10 および Windows 10 Mobile 用の 3D ゲームおよびアプリを作成するには、Direct3D 12 テクノロジの基礎について、およびこのテクノロジをゲームとアプリで使用できるよう準備する方法について理解する必要があります。To write 3D games and apps for Windows 10 and Windows 10 Mobile, you must understand the basics of the Direct3D 12 technology, and how to prepare to use it in your games and apps.
Direct3D 12 での作業の送信Work submission in Direct3D 12 Direct3D アプリの CPU 効率を向上させるために、Direct3D 12 では、デバイスに関連付けられたイミディエイト コンテキストはサポートされなくなりました。To improve the CPU efficiency of Direct3D apps, Direct3D 12 no longer supports an immediate context associated with a device. 代わりに、アプリでコマンド リストを記録して送信します。これには、描画およびリソース管理の呼び出しが含まれます。Instead, apps record and then submit command lists, which contain drawing and resource management calls. これらのコマンド リストは、複数のスレッドから、コマンドの実行を管理する 1 つ以上のコマンド キューに送信できます。These command lists can be submitted from multiple threads to one or more command queues, which manage the execution of the commands. この根本的な変更によって、後で再使用できるようにアプリでレンダリング処理を事前計算できるようになり、シングル スレッドの効率が向上しました。また、複数のスレッドにレンダリング処理を拡散することで、マルチコア システムを利用できるようになりました。This fundamental change increases single-threaded efficiency by allowing apps to pre-compute rendering work for later re-use, and it takes advantage of multi-core systems by spreading rendering work across multiple threads.
Direct3D 12 でのリソース バインディングResource binding in Direct3D 12 バインディングは、リソース オブジェクトをグラフィックス パイプラインのシェーダーにリンクするプロセスです。Binding is the process of linking resource objects to the shaders of the graphics pipeline.
Direct3D 12 でのメモリ管理Memory management in Direct3D 12 D3D12 への移行には、メモリ常駐状態の適切な同期と管理を行うことも含まれます。Moving to D3D12 involves doing proper synchronization and management of memory residency. メモリ常駐状態の管理は、さらに多くの同期が必要になることを意味します。Managing memory residency means even more synchronization must be done. このセクションでは、メモリ管理の戦略と、ヒープおよびバッファー内のサブ割り当てについて説明します。This section covers memory management strategies, and suballocation within heaps and buffers.
マルチアダプターシステムMulti-adapter systems 複数のアダプターがインストールされているシステムの Direct3D 12 でのサポートについて説明します。アプリケーションが複数の GPU アダプターを明示的にターゲットとするシナリオや、ドライバーが適用.Describes support in Direct3D 12 for systems that have multiple adapters installed, covering scenarios where your application explicitly targets multiple GPU adapters, and scenarios where drivers implicitly use multiple GPU adapters on behalf of your application.
マルチエンジン同期Multi-engine synchronization このトピックでは、最新の Gpu で検出された複数の独立したエンジンへのアクセスの同期について説明します。This topic discusses synchronizing access to the multiple independent engines found in most modern GPUs.
レンダリングRendering このセクションには、Direct3D 12 (および Direct3D 11.3) の新しいレンダリング機能についての情報が含まれます。This section contains information about rendering features new to Direct3D 12 (and Direct3D 11.3).
カウンター、クエリ、およびパフォーマンスの測定Counters, queries and performance measurement 次のセクションでは、クエリ、カウンター、タイミング、プレディケーションなど、パフォーマンスのテストと改善で使用する機能について説明します。The following sections describe features for use in performance testing and improvement, such as queries, counters, timing, and predication.
Direct3D 11、Direct3D 10、および Direct2D での作業Working with Direct3D 11, Direct3D 10 and Direct2D このセクションでは、Direct3D および Direct2D の以前のバージョンとの相互運用手法、Direct3D 11on12 API、および Direct3D 11 から Direct3D 12 への移植のガイドラインについて説明します。This section covers interop techniques with earlier versions of Direct3D and Direct2D, the Direct3D 11on12 API, and porting guidelines from Direct3D 11 to Direct3D 12.
実用的なサンプルWorking samples Direct3D 12 のさまざまな機能の使用方法を示す実用的なサンプルをダウンロードできます。Working samples are available for download, showing the usage of a number of features of Direct3D 12.
D3D12 コードのチュートリアルD3D12 code walk-throughs このセクションでは、サンプル シナリオのコードを示します。This section provides code for sample scenarios. チュートリアルの多くで、シナリオごとに基本的なコンポーネント コードを繰り返さないようにするために、基本的なサンプルにどのようなコーディングを追加する必要があるかについて詳しく説明します。Many of the walk-throughs provide details on what coding is required to be added to a basic sample, to avoid repeating the basic component code for each scenario.
Direct3D 12 でのデバッグと診断Debugging and diagnostics with Direct3D 12 Direct3D 12 デバッグ層と GBV (GPU ベースの検証) を最も適切に使用する方法について説明するトピック、および DRED (削除済みデバイスの拡張データ) の使用方法について説明するトピックが含まれます。Includes topics that describes how to make best use of the Direct3D 12 Debug Layer with GPU-based validation (GBV), and how to use Device Removed Extended Data (DRED).