Syntax
Parameters
pRootSignature [in]Type: const D3D12_ROOT_SIGNATURE_DESC * The description of the root signature, as a pointer to a D3D12_ROOT_SIGNATURE_DESC structure. Version [in]
Type: D3D_ROOT_SIGNATURE_VERSION A D3D_ROOT_SIGNATURE_VERSION-typed value that specifies the version of root signature. ppBlob [out]
Type: ID3DBlob ** A pointer to a memory block that receives a pointer to the ID3DBlob interface that you can use to access the serialized root signature. ppErrorBlob [out, optional]
Type: ID3DBlob ** A pointer to a memory block that receives a pointer to the ID3DBlob interface that you can use to access serializer error messages, or NULL if there are no errors.
Return value
Type: HRESULT Returns S_OK if successful; otherwise, returns one of the Direct3D 12 Return Codes.Remarks
This function has been superseded by D3D12SerializeVersionedRootSignature as of the Windows 10 Anniversary Update (14393). If an application procedurally generates a D3D12_ROOT_SIGNATURE_DESC data structure, it must pass a pointer to this D3D12_ROOT_SIGNATURE_DESC in a call to D3D12SerializeRootSignature to make the serialized form. The application then passes the serialized form to which ppBlob points into ID3D12Device::CreateRootSignature. If a shader has been authored with a root signature in it, the compiled shader will contain a serialized root signature in it already. In this case, pass the compiled shader blob to ID3D12Device::CreateRootSignature to obtain the runtime root signature object. The function signature PFN_D3D12_SERIALIZE_ROOT_SIGNATURE is provided as a typedef, so that you can use dynamic linking techniques (GetProcAddress) instead of statically linking.Examples
Create an empty root signature.Requirements
Header: d3d12_xs.h or d3d12_x.hLibrary: d3d12_xs.lib or d3d12_x.lib
Supported Platforms: XBOX Series consoles and XBOX One family
