message: Ignore stream-out parameters if no stream-out is enabled on D3D12
diff: @@ -132,11 +132,6 @@ bool WrappedID3D12Device::Serialise_CreatePipelineState(SerialiserType &ser,
  memcpy((void *)wrapped->graphics->StreamOutput.pSODeclaration,
  Descriptor.StreamOutput.pSODeclaration,
  sizeof(D3D12_SO_DECLARATION_ENTRY) * wrapped->graphics->StreamOutput.NumEntries);
  - }
  - else
  - {
  - wrapped->graphics->StreamOutput.pSODeclaration = NULL;
  - }
  if(wrapped->graphics->StreamOutput.NumStrides)
  {
  @@ -150,6 +145,14 @@ bool WrappedID3D12Device::Serialise_CreatePipelineState(SerialiserType &ser,
  {
  wrapped->graphics->StreamOutput.pBufferStrides = NULL;
  }
  + }
  + else
  + {
  + wrapped->graphics->StreamOutput.NumEntries = 0;
  + wrapped->graphics->StreamOutput.NumStrides = 0;
  + wrapped->graphics->StreamOutput.pSODeclaration = NULL;
  + wrapped->graphics->StreamOutput.pBufferStrides = NULL;
  + }
  if(wrapped->graphics->ViewInstancing.ViewInstanceCount)
  {
  @@ -305,11 +308,6 @@ HRESULT WrappedID3D12Device::CreatePipelineState(const D3D12_PIPELINE_STATE_STRE
  memcpy((void *)wrapped->graphics->StreamOutput.pSODeclaration,
  expandedDesc.StreamOutput.pSODeclaration,
  sizeof(D3D12_SO_DECLARATION_ENTRY) * wrapped->graphics->StreamOutput.NumEntries);
  - }
  - else
  - {
  - wrapped->graphics->StreamOutput.pSODeclaration = NULL;
  - }
  if(wrapped->graphics->StreamOutput.NumStrides)
  {
  @@ -321,6 +319,15 @@ HRESULT WrappedID3D12Device::CreatePipelineState(const D3D12_PIPELINE_STATE_STRE
  }
  else
  {
  + wrapped->graphics->StreamOutput.NumStrides = 0;
  + wrapped->graphics->StreamOutput.pBufferStrides = NULL;
  + }
  + }
  + else
  + {
  + wrapped->graphics->StreamOutput.NumStrides = 0;
  + wrapped->graphics->StreamOutput.NumEntries = 0;
  + wrapped->graphics->StreamOutput.pSODeclaration = NULL;
  wrapped->graphics->StreamOutput.pBufferStrides = NULL;
  }
  