> ## 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.

# ID3D12Device11::EnableLiveDebuggingX (XBOX Series 主機)

> 以程式設計方式在 XBOX Series 主機上啟用發生例外狀況時的即時 GPU 偵錯。

以程式設計方式在 XBOX Series 主機上啟用即時 GPU 偵錯。目前即時偵錯僅限於著色器偵錯。我們計劃在不久的將來將其延伸至著色器以外的範圍，並提供即時命令緩衝區偵錯。

提供此 API 是為了偵測擲回例外狀況的著色器，並即時加以偵錯。它會配置 64 KB 的工具記憶體。請使用適當的著色器類型與例外狀況旗標呼叫此 API。每當指定類型的任何著色器擲回指定的例外狀況時，著色器執行就會暫停。

此 API 可在圖形驅動程式的已驗證版本與已檢測版本上使用。如果在呼叫時已附加 CPU 偵錯工具或 PIX 已連線至開發套件，則會以程式設計方式啟用即時偵錯。

另外也提供類似的 API，可隨選即時偵錯著色器。請參閱 [EnableLiveDebuggingX](/zh-TW/reference/graphics/d3d12_xs/interfaces/ID3D12CommandQueue/methods/id3d12commandqueue_enablelivedebuggingx)

## 語法

```cpp theme={null}
HRESULT EnableLiveDebuggingX(
  D3D12XBOX_LIVE_DEBUGGING_GLOBAL_PARAMETERS* pDebugParams
)
```

### 參數

*pDebugParams*   \_In\_opt\_\
類型：[D3D12XBOX\_LIVE\_DEBUGGING\_GLOBAL\_PARAMETERS](/zh-TW/reference/graphics/d3d12_xs/structs/d3d12xbox_live_debugging_global_parameters)

可設定類型與旗標，以指定應啟用即時偵錯的條件。目前即時偵錯僅限於著色器偵錯。我們計劃在不久的將來將其延伸至著色器以外的範圍，並提供即時命令緩衝區偵錯。

### 傳回值

類型：HRESULT

如果成功，會傳回 S\_OK；否則會傳回 E\_FAIL。

如果在啟用例外狀況即時偵錯時無法使用工具記憶體，會傳回 E\_OUTOFMEMORY。

如果未附加 CPU 偵錯工具且 PIX 未連線，會傳回 E\_NOINTERFACE。

在驅動程式的零售版本上會傳回 E\_NOTIMPL，因為這是開發人員功能。

## 備註

如果在執行此 API 時既未附加 CPU 偵錯工具，PIX 也未連線至開發套件，則不會執行任何作業。

當指定類型的任何著色器擲回指定的例外狀況時，GPU 就會暫停。這可能發生在呼叫此 API 之後立即發生，也可能在數分鐘之後發生。GPU 暫停時，必須啟動即時偵錯工作階段。

如果沒有任何指定類型的著色器擲回指定的例外狀況，GPU 就不會暫停，遊戲會繼續執行。

從 2023 年 10 月 GDK 開始，即時偵錯工作階段結束後，例外狀況即時偵錯仍會保持啟用。您可以使用 D3D12XBOX\_LIVE\_DEBUGGING\_NONE 類型呼叫此 API，以明確停用它。

範例 - 在任何著色器擲回 NaN 例外狀況時啟用即時偵錯

```cpp theme={null}
D3D12XBOX_LIVE_DEBUGGING_GLOBAL_PARAMETERS liveDebugParams{ 0 };
liveDebugParams.Type = D3D12XBOX_LIVE_DEBUGGING_SHADER_STAGE_ANY;
liveDebugParams.Flags = D3D12XBOX_LIVE_DEBUGGING_SHADER_GLOBAL_FLAGS_NAN;
pDevice11->EnableLiveDebuggingX(&liveDebugParams);
```

另外也提供類似的 API，可隨選即時偵錯著色器。請參閱 [EnableLiveDebuggingX](/zh-TW/reference/graphics/d3d12_xs/interfaces/ID3D12CommandQueue/methods/id3d12commandqueue_enablelivedebuggingx)

## 需求

必須呼叫 [ReportGpuHaltX](/zh-TW/reference/graphics/d3d12_xs/interfaces/ID3D12Device11/methods/id3d12device11_reportgpuhaltx)，才能偵測著色器例外狀況造成的 GPU 暫停並啟動即時偵錯。

**標頭：** d3d12\_xs.h\
**程式庫：** d3d12\_xs.lib\
**支援的平台：** XBOX Series 主機

## 另請參閱

[d3d12\_xs 成員](/zh-TW/reference/graphics/d3d12_xs/d3d12_xs_members)

[ReportGpuHaltX](/zh-TW/reference/graphics/d3d12_xs/interfaces/ID3D12Device11/methods/id3d12device11_reportgpuhaltx)

[EnableLiveDebuggingX](/zh-TW/reference/graphics/d3d12_xs/interfaces/ID3D12CommandQueue/methods/id3d12commandqueue_enablelivedebuggingx)

[PIX 中的著色器例外狀況即時偵錯](https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/tools-console/xbox-tools-and-apis/pix/pix-shader-exceptions-live-debugging)

[PIX 中的隨選即時偵錯](https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/tools-console/xbox-tools-and-apis/pix/pix-on-demand-live-debugging)


## Related topics

- [NDA topic directory - live Microsoft Learn links](/nda/nda-topic-directory.md)
- [NDA 토픽 디렉터리 - Microsoft Learn 라이브 링크](/ko/nda/nda-topic-directory.md)
- [Répertoire des rubriques NDA : liens actifs vers Microsoft Learn](/fr-CA/nda/nda-topic-directory.md)
- [Diretório de tópicos NDA: links ativos do Microsoft Learn](/pt-BR/nda/nda-topic-directory.md)
- [Directorio de temas NDA: enlaces activos a Microsoft Learn](/es/nda/nda-topic-directory.md)
