跳轉到主要內容
序列化可傳遞至 ID3D12Device::CreateRootSignature 的任何版本根簽章。

語法

參數

pRootSignature [in]
類型:const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *
指定包含任何版本根簽章描述的 D3D12_VERSIONED_ROOT_SIGNATURE_DESC。 ppBlob [out]
類型:ID3DBlob **
指向記憶體區塊的指標,該區塊會接收指向 ID3DBlob 介面的指標,您可以使用該介面存取序列化的根簽章。 ppErrorBlob [out, optional]
類型:ID3DBlob **
指向記憶體區塊的指標,該區塊會接收指向 ID3DBlob 介面的指標,您可以使用該介面存取序列化程式錯誤訊息;如果沒有錯誤,則為 NULL。

傳回值

類型:HRESULT 如果成功,則傳回 S_OK;否則傳回其中一個 Direct3D 12 傳回碼。

備註

如果應用程式以程序方式產生 D3D12_ROOT_SIGNATURE_DESC1 資料結構,則必須在呼叫 D3D12SerializeVersionedRootSignature 時傳遞指向此 D3D12_ROOT_SIGNATURE_DESC1 的指標,以產生序列化形式。 接著,應用程式會將 ppBlob 所指向的序列化形式傳遞至 ID3D12Device::CreateRootSignature。 如果著色器在撰寫時已包含根簽章,則編譯後的著色器中已包含序列化的根簽章。在此情況下,請將編譯後的著色器 Blob 傳遞至 ID3D12Device::CreateRootSignature,以取得執行階段根簽章物件。
請注意,對於 XBOX 開發人員,強烈建議使用以 HLSL 撰寫的根簽章。
函式簽章 PFN_D3D12_SERIALIZE_VERSIONED_ROOT_SIGNATURE 以 typedef 形式提供,因此您可以使用動態連結技術 (GetProcAddress) 而非靜態連結。 此函式隨 Windows 10 年度更新版 (14393) 發行,並取代 D3D12SerializeRootSignature。

需求

標頭: d3d12_xs.h 或 d3d12_x.h
程式庫: d3d12_xs.lib 或 d3d12_x.lib
支援的平台:XBOX Series 主機和 XBOX One 系列主機

另請參閱

核心函式 建立根簽章 D3DX12SerializeVersionedRootSignature 根簽章 1.1 版
最後修改於 2026年10月6日