Rename Samples Written to Samples Passed

* This measure the number of samples that pass the depth/stencil tests -
 In the case of early tests, this means it doesn't account for shader discard before writing.
This commit is contained in:
baldurk
2018-06-13 13:22:11 +01:00
parent 0a965045f7
commit 47f3f64fc7
7 changed files with 23 additions and 23 deletions
+1 -1
View File
@@ -703,7 +703,7 @@ std::string DoStringise(const GPUCounter &el)
STRINGISE_ENUM_CLASS(GSPrimitives);
STRINGISE_ENUM_CLASS(RasterizerInvocations);
STRINGISE_ENUM_CLASS(RasterizedPrimitives);
STRINGISE_ENUM_CLASS(SamplesWritten);
STRINGISE_ENUM_CLASS(SamplesPassed);
STRINGISE_ENUM_CLASS(VSInvocations);
STRINGISE_ENUM_CLASS(HSInvocations);
STRINGISE_ENUM_CLASS(DSInvocations);
+2 -2
View File
@@ -2699,7 +2699,7 @@ enumerated with IDs in the appropriate ranges.
Number of primitives that were rendered.
.. data:: SamplesWritten
.. data:: SamplesPassed
Number of samples that passed depth/stencil test.
@@ -2772,7 +2772,7 @@ enum class GPUCounter : uint32_t
GSPrimitives,
RasterizerInvocations,
RasterizedPrimitives,
SamplesWritten,
SamplesPassed,
VSInvocations,
HSInvocations,
TCSInvocations = HSInvocations,
+6 -6
View File
@@ -41,7 +41,7 @@ vector<GPUCounter> D3D11Replay::EnumerateCounters()
ret.push_back(GPUCounter::GSPrimitives);
ret.push_back(GPUCounter::RasterizerInvocations);
ret.push_back(GPUCounter::RasterizedPrimitives);
ret.push_back(GPUCounter::SamplesWritten);
ret.push_back(GPUCounter::SamplesPassed);
ret.push_back(GPUCounter::VSInvocations);
ret.push_back(GPUCounter::HSInvocations);
ret.push_back(GPUCounter::DSInvocations);
@@ -140,8 +140,8 @@ CounterDescription D3D11Replay::DescribeCounter(GPUCounter counterID)
desc.resultType = CompType::UInt;
desc.unit = CounterUnit::Absolute;
break;
case GPUCounter::SamplesWritten:
desc.name = "Samples Written";
case GPUCounter::SamplesPassed:
desc.name = "Samples Passed";
desc.description = "Number of samples that passed depth/stencil test.";
desc.resultByteWidth = 8;
desc.resultType = CompType::UInt;
@@ -649,9 +649,9 @@ vector<CounterResult> D3D11Replay::FetchCounters(const vector<GPUCounter> &count
ret.push_back(CounterResult(ctx.timers[i].eventId, GPUCounter::CSInvocations,
pipelineStats.CSInvocations));
break;
case GPUCounter::SamplesWritten:
case GPUCounter::SamplesPassed:
ret.push_back(
CounterResult(ctx.timers[i].eventId, GPUCounter::SamplesWritten, occlusion));
CounterResult(ctx.timers[i].eventId, GPUCounter::SamplesPassed, occlusion));
break;
}
}
@@ -677,7 +677,7 @@ vector<CounterResult> D3D11Replay::FetchCounters(const vector<GPUCounter> &count
case GPUCounter::GSInvocations:
case GPUCounter::PSInvocations:
case GPUCounter::CSInvocations:
case GPUCounter::SamplesWritten:
case GPUCounter::SamplesPassed:
ret.push_back(
CounterResult(ctx.timers[i].eventId, d3dCounters[c], 0xFFFFFFFFFFFFFFFF));
break;
+4 -4
View File
@@ -40,7 +40,7 @@ vector<GPUCounter> D3D12Replay::EnumerateCounters()
ret.push_back(GPUCounter::GSPrimitives);
ret.push_back(GPUCounter::RasterizerInvocations);
ret.push_back(GPUCounter::RasterizedPrimitives);
ret.push_back(GPUCounter::SamplesWritten);
ret.push_back(GPUCounter::SamplesPassed);
ret.push_back(GPUCounter::VSInvocations);
ret.push_back(GPUCounter::HSInvocations);
ret.push_back(GPUCounter::DSInvocations);
@@ -125,8 +125,8 @@ CounterDescription D3D12Replay::DescribeCounter(GPUCounter counterID)
desc.resultType = CompType::UInt;
desc.unit = CounterUnit::Absolute;
break;
case GPUCounter::SamplesWritten:
desc.name = "Samples Written";
case GPUCounter::SamplesPassed:
desc.name = "Samples Passed";
desc.description = "Number of samples that passed depth/stencil test.";
desc.resultByteWidth = 8;
desc.resultType = CompType::UInt;
@@ -648,7 +648,7 @@ vector<CounterResult> D3D12Replay::FetchCounters(const vector<GPUCounter> &count
case GPUCounter::GSPrimitives: result.value.u64 = pipeStats.GSPrimitives; break;
case GPUCounter::RasterizerInvocations: result.value.u64 = pipeStats.CInvocations; break;
case GPUCounter::RasterizedPrimitives: result.value.u64 = pipeStats.CPrimitives; break;
case GPUCounter::SamplesWritten: result.value.u64 = occl; break;
case GPUCounter::SamplesPassed: result.value.u64 = occl; break;
case GPUCounter::VSInvocations: result.value.u64 = pipeStats.VSInvocations; break;
case GPUCounter::HSInvocations: result.value.u64 = pipeStats.HSInvocations; break;
case GPUCounter::DSInvocations: result.value.u64 = pipeStats.DSInvocations; break;
+4 -4
View File
@@ -76,7 +76,7 @@ vector<GPUCounter> GLReplay::EnumerateCounters()
ret.push_back(GPUCounter::GSPrimitives);
ret.push_back(GPUCounter::RasterizerInvocations);
ret.push_back(GPUCounter::RasterizedPrimitives);
ret.push_back(GPUCounter::SamplesWritten);
ret.push_back(GPUCounter::SamplesPassed);
ret.push_back(GPUCounter::VSInvocations);
ret.push_back(GPUCounter::TCSInvocations);
ret.push_back(GPUCounter::TESInvocations);
@@ -163,8 +163,8 @@ CounterDescription GLReplay::DescribeCounter(GPUCounter counterID)
desc.resultType = CompType::UInt;
desc.unit = CounterUnit::Absolute;
break;
case GPUCounter::SamplesWritten:
desc.name = "Samples Written";
case GPUCounter::SamplesPassed:
desc.name = "Samples Passed";
desc.description = "Number of samples that passed depth/stencil test.";
desc.resultByteWidth = 8;
desc.resultType = CompType::UInt;
@@ -244,7 +244,7 @@ GLenum glCounters[] = {
eGL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB, // GPUCounter::GSPrimitives
eGL_CLIPPING_INPUT_PRIMITIVES_ARB, // GPUCounter::RasterizerInvocations
eGL_CLIPPING_OUTPUT_PRIMITIVES_ARB, // GPUCounter::RasterizedPrimitives
eGL_SAMPLES_PASSED, // GPUCounter::SamplesWritten
eGL_SAMPLES_PASSED, // GPUCounter::SamplesPassed
eGL_VERTEX_SHADER_INVOCATIONS_ARB, // GPUCounter::VSInvocations
eGL_TESS_CONTROL_SHADER_PATCHES_ARB, // GPUCounter::TCSInvocations
eGL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB, // GPUCounter::TESInvocations
+5 -5
View File
@@ -48,7 +48,7 @@ vector<GPUCounter> VulkanReplay::EnumerateCounters()
}
if(availableFeatures.occlusionQueryPrecise)
ret.push_back(GPUCounter::SamplesWritten);
ret.push_back(GPUCounter::SamplesPassed);
if(availableFeatures.pipelineStatisticsQuery)
{
@@ -138,8 +138,8 @@ CounterDescription VulkanReplay::DescribeCounter(GPUCounter counterID)
desc.resultType = CompType::UInt;
desc.unit = CounterUnit::Absolute;
break;
case GPUCounter::SamplesWritten:
desc.name = "Samples Written";
case GPUCounter::SamplesPassed:
desc.name = "Samples Passed";
desc.description = "Number of samples that passed depth/stencil test.";
desc.resultByteWidth = 8;
desc.resultType = CompType::UInt;
@@ -523,7 +523,7 @@ vector<CounterResult> VulkanReplay::FetchCounters(const vector<GPUCounter> &coun
case GPUCounter::GSInvocations:
case GPUCounter::PSInvocations:
case GPUCounter::CSInvocations: statsNeeded = true; break;
case GPUCounter::SamplesWritten: occlNeeded = true; break;
case GPUCounter::SamplesPassed: occlNeeded = true; break;
default: break;
}
}
@@ -633,7 +633,7 @@ vector<CounterResult> VulkanReplay::FetchCounters(const vector<GPUCounter> &coun
case GPUCounter::RasterizedPrimitives:
result.value.u64 = m_PipeStatsData[i * 11 + 6];
break;
case GPUCounter::SamplesWritten: result.value.u64 = m_OcclusionData[i]; break;
case GPUCounter::SamplesPassed: result.value.u64 = m_OcclusionData[i]; break;
case GPUCounter::VSInvocations: result.value.u64 = m_PipeStatsData[i * 11 + 2]; break;
case GPUCounter::TCSInvocations: result.value.u64 = m_PipeStatsData[i * 11 + 8]; break;
case GPUCounter::TESInvocations: result.value.u64 = m_PipeStatsData[i * 11 + 9]; break;
@@ -1765,7 +1765,7 @@ VkResult WrappedVulkan::vkCreateDevice(VkPhysicalDevice physicalDevice,
if(availFeatures.occlusionQueryPrecise)
enabledFeatures.occlusionQueryPrecise = true;
else
RDCWARN("occlusionQueryPrecise = false, samples written counter will not work");
RDCWARN("occlusionQueryPrecise = false, samples passed counter will not be available");
if(availFeatures.pipelineStatisticsQuery)
enabledFeatures.pipelineStatisticsQuery = true;