fix(editor): un-shadow zone mesh detail view as -detail variant

Mirrors the --list-project-meshes-detail rename from 976549fe.
After the c0f2ab75 inventory extraction, the older per-mesh
sorted-by-tris listing was shadowed by the per-zone aggregate
that now lives in cli_zone_inventory.cpp.

Renames the older handler to --list-zone-meshes-detail (and
updates its help text + kArgRequired entry) so both views
coexist:
  --list-zone-meshes        — per-zone aggregate (extracted)
  --list-zone-meshes-detail — sorted-by-tris listing

Removes the last duplicate-flag dead code from main.cpp.
This commit is contained in:
Kelsi 2026-05-08 19:28:18 -07:00
parent bb8580068b
commit 155bb1619c

View file

@ -976,8 +976,8 @@ static void printUsage(const char* argv0) {
std::printf(" Aggregate texture refs across all WOM models in a zone (deduped)\n"); std::printf(" Aggregate texture refs across all WOM models in a zone (deduped)\n");
std::printf(" --info-zone-models-total <zoneDir> [--json]\n"); std::printf(" --info-zone-models-total <zoneDir> [--json]\n");
std::printf(" Aggregate WOM/WOB stats across a zone (verts, tris, bones, batches, doodads)\n"); std::printf(" Aggregate WOM/WOB stats across a zone (verts, tris, bones, batches, doodads)\n");
std::printf(" --list-zone-meshes <zoneDir> [--json]\n"); std::printf(" --list-zone-meshes-detail <zoneDir> [--json]\n");
std::printf(" Per-mesh listing of every .wom in a zone (verts, tris, bones, textures, bytes)\n"); std::printf(" Per-mesh listing of every .wom in a zone, sorted by triangle count\n");
std::printf(" --info-mesh <wom-base> [--json]\n"); std::printf(" --info-mesh <wom-base> [--json]\n");
std::printf(" Single-mesh detail: bounds, version, batches, bones, textures, attachments in one view\n"); std::printf(" Single-mesh detail: bounds, version, batches, bones, textures, attachments in one view\n");
std::printf(" --info-mesh-storage-budget <wom-base> [--json]\n"); std::printf(" --info-mesh-storage-budget <wom-base> [--json]\n");
@ -1116,7 +1116,7 @@ int main(int argc, char* argv[]) {
"--list-project-meshes", "--list-project-audio", "--list-project-meshes", "--list-project-audio",
"--list-project-textures", "--list-project-textures",
"--info-zone-models-total", "--info-project-models-total", "--info-zone-models-total", "--info-project-models-total",
"--list-zone-meshes", "--list-project-meshes-detail", "--info-mesh", "--list-zone-meshes-detail", "--list-project-meshes-detail", "--info-mesh",
"--info-mesh-storage-budget", "--info-mesh-storage-budget",
"--info-wob", "--info-woc", "--info-wot", "--info-wob", "--info-woc", "--info-wot",
"--info-creatures", "--info-objects", "--info-quests", "--info-creatures", "--info-objects", "--info-quests",
@ -2045,15 +2045,14 @@ int main(int argc, char* argv[]) {
std::printf(" vertices : %llu\n", static_cast<unsigned long long>(womVerts + wobVerts)); std::printf(" vertices : %llu\n", static_cast<unsigned long long>(womVerts + wobVerts));
std::printf(" triangles : %llu\n", static_cast<unsigned long long>((womIndices + wobIndices) / 3)); std::printf(" triangles : %llu\n", static_cast<unsigned long long>((womIndices + wobIndices) / 3));
return 0; return 0;
} else if (std::strcmp(argv[i], "--list-zone-meshes") == 0 && i + 1 < argc) { } else if (std::strcmp(argv[i], "--list-zone-meshes-detail") == 0 && i + 1 < argc) {
// Per-mesh breakdown of every .wom file in <zoneDir>. // Per-mesh breakdown of every .wom file in <zoneDir>,
// Complements --info-zone-models-total (aggregate) // sorted by triangle count descending so the heaviest
// by surfacing individual mesh metrics — useful for // meshes float to the top. Complements
// spotting outliers ("which mesh is using 80% of my // --list-zone-meshes (per-zone summary) by surfacing
// triangle budget?") and for content audits. // individual mesh metrics — useful for spotting
// // outliers ("which mesh is using 80% of my triangle
// Sorted by triangle count descending so the heaviest // budget?") and for content audits.
// meshes float to the top of the table.
std::string zoneDir = argv[++i]; std::string zoneDir = argv[++i];
bool jsonOut = (i + 1 < argc && bool jsonOut = (i + 1 < argc &&
std::strcmp(argv[i + 1], "--json") == 0); std::strcmp(argv[i + 1], "--json") == 0);
@ -2061,7 +2060,7 @@ int main(int argc, char* argv[]) {
namespace fs = std::filesystem; namespace fs = std::filesystem;
if (!fs::exists(zoneDir)) { if (!fs::exists(zoneDir)) {
std::fprintf(stderr, std::fprintf(stderr,
"list-zone-meshes: %s does not exist\n", zoneDir.c_str()); "list-zone-meshes-detail: %s does not exist\n", zoneDir.c_str());
return 1; return 1;
} }
struct Row { struct Row {