D3D12SerializeVersionedRootSignature function

Serializes a root signature of any version that can be passed to ID3D12Device::CreateRootSignature.

Syntax


HRESULT WINAPI D3D12SerializeVersionedRootSignature(
  _In_      const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *pRootSignature,
  _Out_           ID3DBlob                            **ppBlob,
  _Out_opt_       ID3DBlob                            **ppErrorBlob
);

Parameters

pRootSignature [in]

Type: const D3D12_VERSIONED_ROOT_SIGNATURE_DESC*

Specifies a D3D12_VERSIONED_ROOT_SIGNATURE_DESC that contains a description of any version of a 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

If an application procedurally generates a D3D12_ROOT_SIGNATURE_DESC1 data structure, it must pass a pointer to this D3D12_ROOT_SIGNATURE_DESC1 in a call to D3D12SerializeVersionedRootSignature 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 (when that capability is added), the compiled shader will contain a serialized root signature in it already.

The function signature PFN_D3D12_SERIALIZE_VERSIONED_ROOT_SIGNATURE is provided as a typedef, so that you can use dynamic linking techniques (GetProcAddress) instead of statically linking.

This function was released with the Windows 10 Anniversary Update (14393) and supersedes D3D12SerializeRootSignature.

Requirements

Header

D3d12.h

Library

D3d12.lib

DLL

D3d12.dll

See also

Core Functions
Creating a Root Signature
D3DX12SerializeVersionedRootSignature
Root Signature Version 1.1

 

 

Show: