IsRenderOutput() should go over the remote proxy

This commit is contained in:
baldurk
2016-06-08 15:30:38 -07:00
parent b722ddf16d
commit 8f7ca2974c
2 changed files with 14 additions and 9 deletions
+13 -9
View File
@@ -1729,6 +1729,7 @@ bool ProxySerialiser::Tick()
case eCommand_GetUsage: GetUsage(ResourceId()); break;
case eCommand_GetLiveID: GetLiveID(ResourceId()); break;
case eCommand_GetFrameRecord: GetFrameRecord(); break;
case eCommand_IsRenderOutput: IsRenderOutput(ResourceId()); break;
case eCommand_HasResolver: HasCallstacks(); break;
case eCommand_InitStackResolver: InitCallstackResolver(); break;
case eCommand_HasStackResolver: GetCallstackResolver(); break;
@@ -1807,20 +1808,23 @@ bool ProxySerialiser::Tick()
bool ProxySerialiser::IsRenderOutput(ResourceId id)
{
// TODO this should go remote
bool ret = false;
for(int32_t i = 0; i < m_D3D11PipelineState.m_OM.RenderTargets.count; i++)
m_ToReplaySerialiser->Serialise("", id);
if(m_ReplayHost)
{
if(m_D3D11PipelineState.m_OM.RenderTargets[i].View == id ||
m_D3D11PipelineState.m_OM.RenderTargets[i].Resource == id)
return true;
ret = m_Remote->IsRenderOutput(id);
}
else
{
if(!SendReplayCommand(eCommand_IsRenderOutput))
return ret;
}
if(m_D3D11PipelineState.m_OM.DepthTarget.View == id ||
m_D3D11PipelineState.m_OM.DepthTarget.Resource == id)
return true;
m_FromReplaySerialiser->Serialise("", ret);
return false;
return ret;
}
APIProperties ProxySerialiser::GetAPIProperties()
+1
View File
@@ -51,6 +51,7 @@ enum CommandPacketType
eCommand_GetUsage,
eCommand_GetLiveID,
eCommand_GetFrameRecord,
eCommand_IsRenderOutput,
eCommand_FreeResource,
eCommand_HasResolver,