D3D12XBOX_DESERIALIZE_SHADER Structure

Contains information about deserializing a previously serialized shader, including GPU instructions and metadata.

Syntax

typedef struct D3D12XBOX_DESERIALIZE_SHADER {
    void *pGpuInstructions;
    SIZE_T GpuInstructionsSize;
    void *pMetaData;
    SIZE_T MetaDataSize;
} D3D12XBOX_DESERIALIZE_SHADER;  

Members

pGpuInstructions
Points to copies of the raw shader GPU instructions as supplied by ID3D12Device::SerializeGraphicsPipelineStateX. The caller must persist that memory for the duration of the lifetime of the Pipeline State object, otherwise GPU hangs will result; that is, the caller is expect to manage the placement and lifetimes of the GPU instructions. Direct3D 12.x makes no copy of the GPU instructions and so the GPU will execute the shader directly in place. pGpuInstructions must be allocated using graphics memory, and must be aligned to D3D12XBOX_GPU_INSTRUCTIONS_ALIGNMENT (256) bytes.

GpuInstructionsSize
The total size of the raw shader GPU instructions.

pMetaData
Points to component pieces as supplied by ID3D12Device::SerializeGraphicsPipelineStateX. Direct3D 12.x makes copies of this data so the caller can overwrite that memory as soon as the call completes.

MetaDataSize
The size of the metadata.

Remarks

This structure is used by the D3D12XBOX_DESERIALIZE_GRAPHICS_PIPELINE_STATE structure.

Requirements

Header: Declared in d3d12_x.h.