在 XBOX One X 和 XBOX Series X 開發套件上設定遊戲記憶體
在 XBOX One X 和 XBOX Series X 上執行的遊戲,分別可存取最多 8.9 GB 和 13 GB 的記憶體。由於新式遊戲的需求差異很大,此值可由遊戲開發人員設定。有些遊戲可能希望在 XBOX 系列主機之間維持一致的記憶體設定檔,而其他遊戲可能需要更多記憶體來載入更高解析度的紋理,或執行 XBOX One X/XBOX Series X 特定的最佳化。您可以在 XBOX One X 和 XBOX Series X 上為您的遊戲記憶體設定選擇兩種狀態。
如需設定主機模式的詳細資訊,請參閱 Microsoft Game Development Kit 主機模式。
在 MicrosoftGame.config 中設定遊戲記憶體
在 MicrosoftGame.config 中,有三個元素可管理遊戲記憶體模式。XboxOneXTitleMemory 元素可管理在 XBOX One X 上執行之 XBOX One 遊戲的遊戲記憶體模式。XboxLockhartTitleMemory 和 XboxAnacondaTitleMemory 元素可管理在 XBOX Series X 開發套件上以 “LockhartProfiling” 或 “AnacondaProfiling” 模式執行之 XBOX Series X|S 遊戲的遊戲記憶體模式。這些元素允許的值為 “Standard” 和 “Advanced”。 對於 XBOX One X,Standard 提供 7.9 GB,而 Advanced 為遊戲提供 8.9 GB。選擇 Standard 時,1 GB 的差額不會還給系統,而是套用至 XBOX 遊戲快取,以提升遊戲的 I/O 效能。 對於 XBOX Series S,Standard 提供 7.7 GB 的記憶體。其中大部分 (7904 MiB) 是「GPU 最佳頻寬」記憶體,尖峰存取速度為 224 GB/s,其餘 (94 MiB) 則為標準 (56 GB/s)。Advanced 額外提供 574 MiB,其中 128 MiB 為「GPU 最佳頻寬」。選擇 Standard 記憶體模式時,差額會還給系統,以免除在特定情況下 (例如在前景中以系統網頁瀏覽器啟動 URL) 需要暫停並快速繼續遊戲的必要。 對於 XBOX Series X,Standard 提供 10 GB 的記憶體,以 GPU 可用的尖峰頻寬 560 GB/sec 運作 (GPU 最佳頻寬)。Advanced 讓遊戲可額外存取 3 GB,其對 GPU 的尖峰頻寬可達 336 GB/sec (標準頻寬)。與 XBOX One X 相同,如果選擇 Standard 記憶體模式,差額不會還給系統,而是套用至 XBOX 遊戲快取等系統功能,以在遊戲作用中時加強對遊戲的支援。在開發期間設定及存取額外記憶體
啟用 ProfilingMode 時,您的遊戲可使用額外的記憶體,可在開發期間用於從遊戲引擎工具到未最佳化遊戲資產等任何用途。 這些額外記憶體由遊戲和 PIX 等工具共用。啟用 ProfilingMode 時可用的記憶體總量取決於開發套件硬體,而對於 XBOX One X 開發套件和 XBOX Series X 開發套件,還取決於主機模式。 額外記憶體會以兩種方式提供給遊戲:- ExtraTitleMemory 組態設定可用來指定透過所有標準記憶體配置常式直接提供給您遊戲的額外記憶體量。
- 任何未透過 ExtraTitleMemory 設定指派的記憶體,都可以在呼叫 XMemVirtualAlloc 或 XMemCreateWin32Heap 時指定 XMEM_TOOL 旗標來存取。如需如何在工具中使用 XMEM_TOOL 堆積的詳細資訊,請參閱下方的「在 XMEM_TOOL 堆積上配置記憶體」一節。
在開發期間使用額外記憶體的其他資訊
- 在遊戲中使用額外記憶體,會減少 PIX 等工具可用的記憶體量。我們建議至少為 PIX 保留 512MB 的記憶體。
- 工具通常會使用平台記憶體保留區來執行。在某些情況下,工具會需要使用遊戲記憶體。這些配置會使用 XMEM_TOOL 旗標進行,直到 XMEM_TOOL 集區用盡為止,之後會嘗試從預設記憶體集區配置。可以將 ToolingMemoryOverflow 旗標設定為 false 以防止這種溢出。請注意,在某些情況下,即使您已使用 ToolingMemoryOverflow 設定指定不應使用遊戲記憶體,PIX 和其他工具仍可能會佔用遊戲記憶體。這些情況將在 GDK 的未來版本中修正。
- 變更主機模式不會變更分析模式設定。您的遊戲以及 PIX 和工具仍可使用額外記憶體。若要關閉額外記憶體,請關閉分析模式。如需主機模式的詳細資訊,請參閱使用主機模式測試您的遊戲。
開啟分析模式
若要存取額外的遊戲記憶體,請在 DevHome 的 [效能] 索引標籤、XBOX Manager 的 [設定] 索引標籤、XBOX Device Portal (XBOX 上的 Windows Device Portal) 的 [設定] 頁面,或 xbConfig 命令列工具中開啟分析模式。 在 DevHome 中,使用 [效能] 索引標籤中的 PIX 設定來開啟分析模式。如果您希望工具 (在需要時) 溢出至遊戲記憶體,請選取 Allow PIX and other tools to overflow and use your game’s memory。
設定額外的遊戲記憶體
開啟分析模式後,您可以設定有多少額外記憶體直接提供給您的遊戲,以及有多少提供於 XMEM_TOOL 堆積上。根據預設,不會提供額外記憶體給您的遊戲。您可以在 DevHome 的 [效能] 索引標籤、XBOX Manager 的 [設定] 索引標籤、XBOX Device Portal (XBOX 上的 Windows Device Portal) 的 [設定] 頁面,或 xbConfig 命令列工具中變更此預設設定。 在 Dev Home 中,選取 [效能] 索引標籤中 PIX 設定的 Manage tool memory 按鈕,會顯示滑桿控制項,讓您設定要提供多少額外記憶體給您的遊戲:

