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

# XBOX Texture Compressor 概觀

> XBOX Texture Compressor 概觀

XBOX Series X|S 系列主機具備硬體解壓縮單元，能夠在幾乎不需要 CPU 協助的情況下，直接將資料從 NVMe 儲存體解壓縮到記憶體中。支援兩種壓縮演算法。第一種是專為 BC\_n\_ 紋理資料設計的全新 rANS 型壓縮演算法，我們稱之為 *BCPack*。第二種是熟悉的 Deflate 演算法 (即 Zlib)，現在具有完整的 32 KB 視窗。

解壓縮管線允許串聯使用兩種演算法，而不會損失輸送量。有兩個平行運作的解壓縮單元，合併寫入速度可超過每秒 6 GB。若要使用解壓縮單元，開發人員應利用 [DirectStorage](/zh-TW/reference/system/dstorage/dstorage_members) API。此低階非同步 API 的設計目的是在發出 NVMe 讀取要求時將 CPU 額外負荷降到最低，並公開解壓縮和紋理拌和作業等固定功能。

如需詳細資訊，請參閱範例：Graphics\TextureCompression

## XBOX Texture Compressor 工具 (XBTC)

為了充分利用 XBOX Series X|S 的內建硬體解壓縮功能，我們提供名為 [*XBTC.exe*](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc) 的軟體壓縮工具。目前，此工具僅支援壓縮 BC\_n\_ 紋理，但非 BC\_n\_ 紋理可以視需要進行 BC 編碼 (當您提供目標 BC\_n\_ 格式時)。

XBTC 以[命令列工具](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc)的形式提供，用於離線紋理處理。此工具會輸出專為與 DirectStorage 有效率互動而設計的 [XBTC 封存檔案](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc-archive-format)。另外也提供供您的 XBOX Series X|S 遊戲包含的標頭檔 (`XBTC.h`)。這可讓您輕鬆使用封存檔案格式。*如果您使用 BC 編碼器，且輸出路徑具有 .dds 副檔名，此工具也可以輸出區塊壓縮的 DDS 檔案。*

[XBTC.exe](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc) 會取用紋理檔案，並將其壓縮成單一紋理封存。根據串流偏好設定 (記憶體分頁或 mip 層級)，壓縮串流的數目可能有所不同。封存目錄 (TOC) 可讓您搜尋個別的壓縮串流。封存可以包含多個紋理 (和緩衝區)，讓 TOC 可以保存在記憶體中，以便使用 DirectStorage 有效率地擷取特定子串流。

[XBTC.exe](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc) 也可以處理一批紋理，並將其壓縮成多紋理封存。若要使用此功能，請在 JSON 檔案中定義封存內容和壓縮選項，並以此檔案取代影像檔案作為輸入。

## XBTC 自訂工具 DLL

另一種使用 XBTC 壓縮的方法，是撰寫您自己的 C++ 工具並從 DLL 利用 XBTC。XBTC.dll 以 Windows 二進位檔的形式提供。匯出項目定義於 XBTC.h 中，包含區塊壓縮 (BCn 編碼)、並排/解除並排，以及壓縮/解壓縮的功能。將 XBTC.lib 新增至工具的連結器輸入，以匯入 DLL。

## 本節內容

[XBOX Texture Compressor 工具 (XBTC.exe)](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc) 說明 XBTC.exe 這個工具，可壓縮 BC 編碼的 DDS 紋理以在 XBOX Series X|S 上使用。

[XBTC 封存檔案規格](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc-archive-format) 說明 XBOX Texture Compressor (XBTC) 工具所使用的封存檔案規格。

[JSON 批次設定](/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc-json-batch-configuration) 說明 JSON 批次設定。可以使用 JSON 設定檔將一系列紋理壓縮成單一封存。JSON 檔案包含全域選項區段，以及紋理清單與其相關聯的選項。

## 參考 API 文件

* [Dstorage (API 內容)](/zh-TW/reference/system/dstorage/dstorage_members)

## 另請參閱

[XBOX Series X|S 圖形功能概觀](/zh-TW/build/core-features/graphics/graphics-newfeatures-toc) [圖形概觀](/zh-TW/build/core-features/graphics/overviews/graphics) [圖形](/zh-TW/build/core-features/graphics/gc-graphics-toc) [使用 DirectStorage 和 XBTC 最佳化壓縮內容](/zh-TW/build/console-features/storage/directstorage/directstorage-compression)


## Related topics

- [NDA 主題目錄 - Microsoft Learn 線上連結](/zh-TW/nda/nda-topic-directory.md)
- [XBOX Texture Compressor (XBTC) tool reference](/build/core-features/graphics/newfeatures/xbtc/index.md)
- [XBOX Texture Compressor (XBTC) 도구 참고서](/ko/build/core-features/graphics/newfeatures/xbtc/index.md)
- [Referencia de la herramienta XBOX Texture Compressor (XBTC)](/es/build/core-features/graphics/newfeatures/xbtc/index.md)
- [XBOX Texture Compressor (XBTC) 工具参考](/zh-CN/build/core-features/graphics/newfeatures/xbtc/index.md)
