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

# D3D12CreateVersionedRootSignatureDeserializer

> GetUnconvertedRootSignatureDesc を介して逆シリアル化されたデータ構造を返すことができるインターフェイスを生成します。

[GetUnconvertedRootSignatureDesc](/reference/graphics/d3d12/interfaces/id3d12versionedrootsignaturedeserializer/methods/id3d12versionedrootsignaturedeserializer_getunconvertedrootsignaturedesc_public) を介して逆シリアル化されたデータ構造を返すことができるインターフェイスを生成します。

## 構文

```cpp theme={null}
HRESULT D3D12CreateVersionedRootSignatureDeserializer(
    LPCVOID pSrcData,
    SIZE_T SrcDataSizeInBytes,
    const IID & pRootSignatureDeserializerInterface,
    void  ppRootSignatureDeserializer
)
```

### パラメーター

*pSrcData \[in]*\
型: LPCVOID

シリアル化されたルート署名のソース データへのポインター。

*SrcDataSizeInBytes \[in]*\
型: SIZE\_T

<i>pSrcData</i> が指すメモリ ブロックのサイズ (バイト単位)。

*pRootSignatureDeserializerInterface \[in]*\
型: const IID &

ルート署名逆シリアル化インターフェイスのグローバル一意識別子 (**GUID**)。「解説」を参照してください。

*ppRootSignatureDeserializer \[out]*\
型: void \*\*

ルート署名逆シリアル化オブジェクトへのポインターを受け取るメモリ ブロックへのポインター。

### 戻り値

型: HRESULT

成功した場合は **S\_OK** を返します。それ以外の場合は、[Direct3D 12 リターン コード](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/d3d12-graphics-reference-returnvalues) のいずれかを返します。

## 解説

アプリケーションが既にシリアル化されたルート署名を持っているか、ルート署名を含むコンパイル済みシェーダーを持っており、レイアウト定義を判定したい場合は、**D3D12CreateVersionedRootSignatureDeserializer** を呼び出して [ID3D12VersionedRootSignatureDeserializer](/reference/graphics/d3d12/interfaces/id3d12versionedrootsignaturedeserializer/id3d12versionedrootsignaturedeserializer_public) インターフェイスを生成できます。[ID3D12VersionedRootSignatureDeserializer::GetRootSignatureDescAtVersion](/reference/graphics/d3d12/interfaces/id3d12versionedrootsignaturedeserializer/methods/id3d12versionedrootsignaturedeserializer_getrootsignaturedescatversion_public) は、逆シリアル化されたデータ構造 ([D3D12\_ROOT\_SIGNATURE\_DESC1](/reference/graphics/d3d12/structs/d3d12_root_signature_desc1_public)) を返すことができます。
**ID3D12VersionedRootSignatureDeserializer** は、逆シリアル化されたデータ構造のメモリの有効期間のみを所有します。

ルート署名逆シリアル化インターフェイスの **REFIID** または **GUID** は、\_\_uuidof() マクロを使用して取得できます。たとえば、\_\_uuidof([ID3D12VersionedRootSignatureDeserializer](/reference/graphics/d3d12/interfaces/id3d12versionedrootsignaturedeserializer/id3d12versionedrootsignaturedeserializer_public)) は、ルート署名逆シリアル化インターフェイスの **GUID** を取得します。

関数シグネチャ PFN\_D3D12\_CREATE\_ROOT\_SIGNATURE\_DESERIALIZER は typedef として提供されるため、静的リンクではなく、動的リンク手法 ([GetProcAddress](https://learn.microsoft.com/en-us/windows/desktop/api/libloaderapi/nf-libloaderapi-getprocaddress)) を使用できます。

この関数は [D3D12CreateRootSignatureDeserializer](/reference/graphics/d3d12/functions/d3d12createrootsignaturedeserializer_public) に取って代わります。

## 要件

**ヘッダー:** d3d12\_xs.h または d3d12\_x.h\
**ライブラリ:** d3d12\_xs.lib または d3d12\_x.lib\
**サポートされるプラットフォーム**: XBOX Series 本体および XBOX One ファミリ

## 関連項目

[コア関数](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/direct3d-12-functions)

[ルート署名の作成](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/creating-a-root-signature)

[ルート署名バージョン 1.1](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/root-signature-version-1-1)


## Related topics

- [D3D12CreateRootSignatureDeserializer](/ja-jp/reference/graphics/d3d12/functions/d3d12createrootsignaturedeserializer_public.md)
- [ID3D12VersionedRootSignatureDeserializer](/ja-jp/reference/graphics/d3d12/interfaces/id3d12versionedrootsignaturedeserializer/id3d12versionedrootsignaturedeserializer_public.md)
- [ID3D12RootSignatureDeserializer](/ja-jp/reference/graphics/d3d12/interfaces/id3d12rootsignaturedeserializer/id3d12rootsignaturedeserializer_public.md)
- [D3D12_VERSIONED_ROOT_SIGNATURE_DESC](/ja-jp/reference/graphics/d3d12/structs/d3d12_versioned_root_signature_desc_public.md)
- [GetUnconvertedRootSignatureDesc](/ja-jp/reference/graphics/d3d12/interfaces/id3d12versionedrootsignaturedeserializer/methods/id3d12versionedrootsignaturedeserializer_getunconvertedrootsignaturedesc_public.md)
