@@ -1276,17 +1276,22 @@ SRVInfo D3D12APIWrapper::FetchSRV(const BindingSlot &slot)
12761276 }
12771277 }
12781278
1279- RDCERR (" Couldn't find root signature parameter corresponding to SRV %u in space %u" ,
1280- slot.shaderRegister , slot.registerSpace );
1279+ m_Device->AddDebugMessage (
1280+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
1281+ StringFormat::Fmt (
1282+ " Couldn't find root signature parameter corresponding to SRV %u in space %u" ,
1283+ slot.shaderRegister , slot.registerSpace ));
12811284 {
12821285 SCOPED_WRITELOCK (m_SRVsLock);
12831286 m_SRVInfos[slot] = srvData;
12841287 }
12851288 return srvData;
12861289 }
12871290
1288- RDCERR (" No root signature bound, couldn't identify SRV %u in space %u" , slot.shaderRegister ,
1289- slot.registerSpace );
1291+ m_Device->AddDebugMessage (
1292+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
1293+ StringFormat::Fmt (" No root signature bound, couldn't identify SRV %u in space %u" ,
1294+ slot.shaderRegister , slot.registerSpace ));
12901295 {
12911296 SCOPED_WRITELOCK (m_SRVsLock);
12921297 m_SRVInfos[slot] = srvData;
@@ -1379,13 +1384,17 @@ UAVInfo D3D12APIWrapper::FetchUAV(const D3D12Descriptor *resDescriptor, const Bi
13791384 if (counterData.size () == 4 )
13801385 uavData.hiddenCounter = *((uint32_t *)counterData.data ());
13811386 else
1382- RDCERR (" Couldn't read UAV counter data for UAV in slot %u space %u" ,
1383- slot.shaderRegister , slot.registerSpace );
1387+ m_Device->AddDebugMessage (
1388+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
1389+ StringFormat::Fmt (" Couldn't read UAV counter data for UAV in slot %u space %u" ,
1390+ slot.shaderRegister , slot.registerSpace ));
13841391 }
13851392 else
13861393 {
1387- RDCERR (" NULL counter resource for UAV in slot %u space %u" , slot.shaderRegister ,
1388- slot.registerSpace );
1394+ m_Device->AddDebugMessage (
1395+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
1396+ StringFormat::Fmt (" NULL counter resource for UAV in slot %u space %u" ,
1397+ slot.shaderRegister , slot.registerSpace ));
13891398 }
13901399 }
13911400 }
@@ -1563,17 +1572,22 @@ UAVInfo D3D12APIWrapper::FetchUAV(const BindingSlot &slot)
15631572 }
15641573 }
15651574
1566- RDCERR (" Couldn't find root signature parameter corresponding to UAV %u in space %u" ,
1567- slot.shaderRegister , slot.registerSpace );
1575+ m_Device->AddDebugMessage (
1576+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
1577+ StringFormat::Fmt (
1578+ " Couldn't find root signature parameter corresponding to UAV %u in space %u" ,
1579+ slot.shaderRegister , slot.registerSpace ));
15681580 {
15691581 SCOPED_WRITELOCK (m_UAVsLock);
15701582 m_UAVInfos[slot] = uavData;
15711583 }
15721584 return uavData;
15731585 }
15741586
1575- RDCERR (" No root signature bound, couldn't identify UAV %u in space %u" , slot.shaderRegister ,
1576- slot.registerSpace );
1587+ m_Device->AddDebugMessage (
1588+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
1589+ StringFormat::Fmt (" No root signature bound, couldn't identify UAV %u in space %u" ,
1590+ slot.shaderRegister , slot.registerSpace ));
15771591 {
15781592 SCOPED_WRITELOCK (m_UAVsLock);
15791593 m_UAVInfos[slot] = uavData;
@@ -1990,7 +2004,10 @@ ResourceReferenceInfo D3D12APIWrapper::FetchResourceReferenceInfo(const DXDebug:
19902004 }
19912005 else
19922006 {
1993- RDCERR (" Unknown SRV resource at Descriptor Index %u" , descriptorIndex);
2007+ m_Device->AddDebugMessage (
2008+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
2009+ StringFormat::Fmt (" Internal error: Uknown %s resource at Descriptor Index %u" ,
2010+ ToStr (resRefInfo.resClass ).c_str (), descriptorIndex));
19942011 return ResourceReferenceInfo ();
19952012 }
19962013
@@ -2031,7 +2048,10 @@ ResourceReferenceInfo D3D12APIWrapper::FetchResourceReferenceInfo(const DXDebug:
20312048 break ;
20322049 }
20332050 default :
2034- RDCERR (" Unhandled Descriptor Type %s" , ToStr (desc.GetType ()).c_str ());
2051+ m_Device->AddDebugMessage (MessageCategory::Execution, MessageSeverity::High,
2052+ MessageSource::RuntimeWarning,
2053+ StringFormat::Fmt (" Internal error: Unhandled Descriptor Type %s" ,
2054+ ToStr (desc.GetType ()).c_str ()));
20352055 return ResourceReferenceInfo ();
20362056 }
20372057 return resRefInfo;
@@ -2104,7 +2124,9 @@ ShaderDirectAccess D3D12APIWrapper::FetchShaderDirectAccess(DescriptorType type,
21042124 }
21052125 }
21062126 }
2107- RDCERR (" Failed to find descriptor %u %u" , (uint32_t )heapType, descriptorIndex);
2127+ m_Device->AddDebugMessage (
2128+ MessageCategory::Execution, MessageSeverity::High, MessageSource::RuntimeWarning,
2129+ StringFormat::Fmt (" Failed to find descriptor %u %u" , (uint32_t )heapType, descriptorIndex));
21082130 return ShaderDirectAccess ();
21092131}
21102132};
0 commit comments