mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-10-03 19:07:56 +00:00
Fix handling of overlays when rendering to mips
* Also removes some unnecessary variations in behaviour between APIs
This commit is contained in:
@@ -1054,9 +1054,10 @@ MeshFormat ReplayProxy::GetPostVSBuffers(uint32_t eventId, uint32_t instID, uint
|
||||
|
||||
template <typename ParamSerialiser, typename ReturnSerialiser>
|
||||
ResourceId ReplayProxy::Proxied_RenderOverlay(ParamSerialiser ¶mser, ReturnSerialiser &retser,
|
||||
ResourceId texid, CompType typeCast,
|
||||
FloatVector clearCol, DebugOverlay overlay,
|
||||
uint32_t eventId, const rdcarray<uint32_t> &passEvents)
|
||||
ResourceId texid, const Subresource &sub,
|
||||
CompType typeCast, FloatVector clearCol,
|
||||
DebugOverlay overlay, uint32_t eventId,
|
||||
const rdcarray<uint32_t> &passEvents)
|
||||
{
|
||||
const ReplayProxyPacket expectedPacket = eReplayProxy_RenderOverlay;
|
||||
ReplayProxyPacket packet = eReplayProxy_RenderOverlay;
|
||||
@@ -1065,6 +1066,7 @@ ResourceId ReplayProxy::Proxied_RenderOverlay(ParamSerialiser ¶mser, ReturnS
|
||||
{
|
||||
BEGIN_PARAMS();
|
||||
SERIALISE_ELEMENT(texid);
|
||||
SERIALISE_ELEMENT(sub);
|
||||
SERIALISE_ELEMENT(typeCast);
|
||||
SERIALISE_ELEMENT(overlay);
|
||||
SERIALISE_ELEMENT(clearCol);
|
||||
@@ -1076,7 +1078,7 @@ ResourceId ReplayProxy::Proxied_RenderOverlay(ParamSerialiser ¶mser, ReturnS
|
||||
{
|
||||
REMOTE_EXECUTION();
|
||||
if(paramser.IsReading() && !paramser.IsErrored() && !m_IsErrored)
|
||||
ret = m_Remote->RenderOverlay(texid, typeCast, clearCol, overlay, eventId, passEvents);
|
||||
ret = m_Remote->RenderOverlay(texid, sub, typeCast, clearCol, overlay, eventId, passEvents);
|
||||
}
|
||||
|
||||
SERIALISE_RETURN(ret);
|
||||
@@ -1084,11 +1086,11 @@ ResourceId ReplayProxy::Proxied_RenderOverlay(ParamSerialiser ¶mser, ReturnS
|
||||
return ret;
|
||||
}
|
||||
|
||||
ResourceId ReplayProxy::RenderOverlay(ResourceId texid, CompType typeCast, FloatVector clearCol,
|
||||
DebugOverlay overlay, uint32_t eventId,
|
||||
ResourceId ReplayProxy::RenderOverlay(ResourceId texid, const Subresource &sub, CompType typeCast,
|
||||
FloatVector clearCol, DebugOverlay overlay, uint32_t eventId,
|
||||
const rdcarray<uint32_t> &passEvents)
|
||||
{
|
||||
PROXY_FUNCTION(RenderOverlay, texid, typeCast, clearCol, overlay, eventId, passEvents);
|
||||
PROXY_FUNCTION(RenderOverlay, texid, sub, typeCast, clearCol, overlay, eventId, passEvents);
|
||||
}
|
||||
|
||||
template <typename ParamSerialiser, typename ReturnSerialiser>
|
||||
@@ -2786,8 +2788,8 @@ bool ReplayProxy::Tick(int type)
|
||||
}
|
||||
case eReplayProxy_ContinueDebug: ContinueDebug(NULL); break;
|
||||
case eReplayProxy_RenderOverlay:
|
||||
RenderOverlay(ResourceId(), CompType::Typeless, FloatVector(), DebugOverlay::NoOverlay, 0,
|
||||
rdcarray<uint32_t>());
|
||||
RenderOverlay(ResourceId(), Subresource(), CompType::Typeless, FloatVector(),
|
||||
DebugOverlay::NoOverlay, 0, rdcarray<uint32_t>());
|
||||
break;
|
||||
case eReplayProxy_PixelHistory:
|
||||
PixelHistory(rdcarray<EventUsage>(), ResourceId(), 0, 0, Subresource(), CompType::Typeless);
|
||||
|
||||
Reference in New Issue
Block a user