> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Direct3D 12 程式設計指南

> Direct3D 12 提供 API 和平台，可讓應用程式充分運用配備一或多個 Direct3D 12 相容 GPU 之電腦的圖形和運算功能。

Direct3D 12 提供 API 和平台，可讓應用程式充分運用配備一或多個 Direct3D 12 相容 GPU 之電腦的圖形和運算功能。

## 本節內容

| 主題 | 描述 |
| - | - |
| [什麼是 Direct3D 12？](https://learn.microsoft.com/en-us/windows/win32/direct3d12/what-is-directx-12-) | DirectX 12 引進新一代的 Direct3D，也就是 DirectX 核心的 3D 圖形 API。此版本的 Direct3D 比先前任何版本都更快速、更有效率。Direct3D 12 可實現更豐富的場景、更多物件、更複雜的效果，並充分利用新式 GPU 硬體。 |
| [Direct3D 12 的新功能](https://learn.microsoft.com/en-us/windows/win32/direct3d12/new-releases) | 說明最新 SDK 版本所提供最重要的新文件。 |
| [了解 Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/directx-12-getting-started) | 若要為 Windows 10 和 Windows 10 Mobile 撰寫 3D 遊戲和應用程式，您必須了解 Direct3D 12 技術的基本概念，以及如何準備在遊戲和應用程式中使用它。 |
| [Direct3D 12 中的工作提交](https://learn.microsoft.com/en-us/windows/win32/direct3d12/command-queues-and-command-lists) | 為了改善 Direct3D 應用程式的 CPU 效率，Direct3D 12 不再支援與裝置相關聯的即時內容。應用程式會改為記錄然後提交 *命令清單*，其中包含繪圖和資源管理呼叫。這些命令清單可以從多個執行緒提交至一或多個命令佇列，由命令佇列管理命令的執行。這項根本性的變更可讓應用程式預先計算轉譯工作以供之後重複使用，藉此提高單一執行緒的效率，並藉由將轉譯工作分散到多個執行緒來充分利用多核心系統。 |
| [Direct3D 12 中的資源繫結](https://learn.microsoft.com/en-us/windows/win32/direct3d12/resource-binding) | 繫結是將資源物件連結至圖形管線著色器的程序。 |
| [Direct3D 12 中的記憶體管理](https://learn.microsoft.com/en-us/windows/win32/direct3d12/memory-management) | 移轉至 D3D12 需要進行適當的同步處理和記憶體常駐管理。管理記憶體常駐表示必須進行更多同步處理。本節涵蓋記憶體管理策略，以及堆積和緩衝區內的子配置。 |
| [多重介面卡系統](https://learn.microsoft.com/en-us/windows/win32/direct3d12/multi-engine) | 說明 Direct3D 12 對安裝多個介面卡之系統的支援，涵蓋應用程式明確以多個 GPU 介面卡為目標的案例，以及驅動程式代表應用程式隱含使用多個 GPU 介面卡的案例。 |
| [多引擎同步處理](https://learn.microsoft.com/en-us/windows/win32/direct3d12/user-mode-heap-synchronization) | 本主題討論如何同步存取大多數新式 GPU 中的多個獨立引擎。 |
| [轉譯](https://learn.microsoft.com/en-us/windows/win32/direct3d12/rendering) | 本節包含 Direct3D 12（和 Direct3D 11.3）新增轉譯功能的相關資訊。 |
| [Advanced Shader Delivery](https://docs.xbox.com/zh-TW/build/gdk-and-engines/guides/advanced-shader-delivery.md) | Advanced Shader Delivery（進階著色器傳遞）會在雲端預先編譯 Direct3D 12 著色器並在下載時傳遞，減少首次啟動的載入時間、遊戲中的著色器編譯卡頓以及耗電量。 |
| [計數器、查詢和效能測量](https://learn.microsoft.com/en-us/windows/win32/direct3d12/performance-measurement) | 下列各節說明可用於效能測試和改進的功能，例如查詢、計數器、計時和預測。 |
| [使用 Direct3D 11、Direct3D 10 和 Direct2D](https://learn.microsoft.com/en-us/windows/win32/direct3d12/direct3d-12-interop) | 本節涵蓋與舊版 Direct3D 和 Direct2D 的互通技術、Direct3D 11on12 API，以及從 Direct3D 11 移轉至 Direct3D 12 的指導方針。 |
| [運作範例](https://learn.microsoft.com/en-us/windows/win32/direct3d12/working-samples) | 提供可下載的運作範例，示範 Direct3D 12 多項功能的用法。 |
| [D3D12 程式碼逐步解說](https://learn.microsoft.com/en-us/windows/win32/direct3d12/d3d12-code-walk-throughs) | 本節提供範例案例的程式碼。許多逐步解說會詳細說明需要在基本範例中新增哪些程式碼，以避免為每個案例重複基本元件程式碼。 |
| [使用 Direct3D 12 進行偵錯和診斷](https://learn.microsoft.com/en-us/windows/win32/direct3d12/understanding-the-d3d12-debug-layer) | 包含說明如何搭配 GPU 型驗證 (GBV) 充分運用 Direct3D 12 偵錯層，以及如何使用裝置移除擴充資料 (DRED) 的主題。 |

## 相關主題

* [Direct3D 12 圖形](https://learn.microsoft.com/en-us/windows/win32/direct3d12/direct3d-12-graphics)
* [Direct3D 12 參考](https://learn.microsoft.com/en-us/windows/win32/direct3d12/direct3d-12-reference)
* [DirectX 進階學習影片教學課程](https://www.youtube.com/channel/UCiaX2B8XiXR70jaN7NK-FpA)


## Related topics

- [Advanced Shader Delivery](https://docs.xbox.com/zh-TW/build/gdk-and-engines/guides/advanced-shader-delivery.md)
- [事件型排行榜概觀](https://docs.xbox.com/zh-TW/services/xbox-services/player-data/stats-leaderboards/event-based/live-leaderboards-eb-overview.md)
- [SetName](https://docs.xbox.com/zh-TW/reference/graphics/d3d12/interfaces/id3d12object/methods/id3d12object_setname_public.md)
- [ACP 概觀](https://docs.xbox.com/zh-TW/build/console-features/audio/overviews/acp-overview.md)
- [PFAccountManagementClientGetPlayFabIDsFromGameCenterIDsAsync](https://docs.xbox.com/zh-TW/services/playfab/api-references/c/pfaccountmanagement/functions/pfaccountmanagementclientgetplayfabidsfromgamecenteridsasync.md)
