Capture renderer draw mesh inputs

This commit is contained in:
2026-06-02 16:01:29 +02:00
parent 952a00e7d3
commit 881b5271a2
7 changed files with 29 additions and 14 deletions

View File

@@ -2237,7 +2237,7 @@ int record_render(int argc, char** argv)
pp::renderer::RecordingShaderProgram shader("pano-cli-record-render");
pp::renderer::RecordingMesh mesh(pp::renderer::MeshDesc {
.vertex_count = 3,
.index_count = 0,
.index_count = 3,
.topology = pp::renderer::PrimitiveTopology::triangles,
});
@@ -2391,6 +2391,8 @@ int record_render(int argc, char** argv)
std::size_t capture_commands = 0;
std::size_t blit_commands = 0;
std::size_t trace_markers = 0;
std::uint64_t draw_vertices = 0;
std::uint64_t draw_indices = 0;
std::uint64_t upload_bytes = 0;
std::uint64_t bound_texture_bytes = 0;
std::uint64_t readback_bytes = 0;
@@ -2401,6 +2403,8 @@ int record_render(int argc, char** argv)
for (const auto& command : commands) {
if (command.kind == pp::renderer::RecordedRenderCommandKind::draw) {
++draw_commands;
draw_vertices += command.mesh_desc.vertex_count;
draw_indices += command.mesh_desc.index_count;
} else if (command.kind == pp::renderer::RecordedRenderCommandKind::set_scissor) {
++scissor_commands;
} else if (command.kind == pp::renderer::RecordedRenderCommandKind::set_blend_state) {
@@ -2440,6 +2444,8 @@ int record_render(int argc, char** argv)
<< ",\"format\":\"rgba8\"}"
<< ",\"commands\":" << commands.size()
<< ",\"drawCommands\":" << draw_commands
<< ",\"drawVertices\":" << draw_vertices
<< ",\"drawIndices\":" << draw_indices
<< ",\"scissorCommands\":" << scissor_commands
<< ",\"blendCommands\":" << blend_commands
<< ",\"depthCommands\":" << depth_commands