mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-09 18:43:51 +00:00
fix(editor): un-shadow project mesh detail view as -detail variant
Batch 34's --list-project-meshes (per-zone aggregate) introduced a flag collision with a pre-existing per-mesh sorted listing that's been in the codebase. The dispatch chain ran the new handler first, leaving the older detail view as dead code. Resolves the duplicate by renaming the older handler to --list-project-meshes-detail. Both views are now reachable: the per-zone aggregate stays under the simpler name (covers the common "how heavy is each zone" case), and the per-mesh sorted-by-tris detail listing is back as -detail (used for project-wide outlier detection and mesh-sharing audits).
This commit is contained in:
parent
e3ab0f8587
commit
976549fea7
1 changed files with 11 additions and 10 deletions
|
|
@ -941,7 +941,7 @@ static void printUsage(const char* argv0) {
|
||||||
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");
|
||||||
std::printf(" Estimated bytes-per-category breakdown for a single WOM (vertices/indices/bones/...)\n");
|
std::printf(" Estimated bytes-per-category breakdown for a single WOM (vertices/indices/bones/...)\n");
|
||||||
std::printf(" --list-project-meshes <projectDir> [--json]\n");
|
std::printf(" --list-project-meshes-detail <projectDir> [--json]\n");
|
||||||
std::printf(" Per-mesh listing across every zone in a project (sorted by triangle count)\n");
|
std::printf(" Per-mesh listing across every zone in a project (sorted by triangle count)\n");
|
||||||
std::printf(" --info-project-models-total <projectDir> [--json]\n");
|
std::printf(" --info-project-models-total <projectDir> [--json]\n");
|
||||||
std::printf(" Aggregate WOM/WOB stats across an entire project (per-zone breakdown + totals)\n");
|
std::printf(" Aggregate WOM/WOB stats across an entire project (per-zone breakdown + totals)\n");
|
||||||
|
|
@ -1075,7 +1075,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", "--info-mesh",
|
"--list-zone-meshes", "--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",
|
||||||
|
|
@ -2676,16 +2676,17 @@ int main(int argc, char* argv[]) {
|
||||||
r.path.c_str());
|
r.path.c_str());
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
} else if (std::strcmp(argv[i], "--list-project-meshes") == 0 && i + 1 < argc) {
|
} else if (std::strcmp(argv[i], "--list-project-meshes-detail") == 0 && i + 1 < argc) {
|
||||||
// Project-wide companion to --list-zone-meshes. Walks
|
// Per-mesh sorted listing across an entire project.
|
||||||
// every zone in <projectDir>, collects every .wom across
|
// Walks every zone in <projectDir>, collects every .wom,
|
||||||
// all zones, sorts by triangle count descending, and
|
// sorts by triangle count descending, and reports a
|
||||||
// reports a global per-mesh table with the originating
|
// global per-mesh table with the originating zone in
|
||||||
// zone in the first column.
|
// the first column.
|
||||||
//
|
//
|
||||||
// Useful for project-wide outlier detection ("which mesh
|
// Useful for project-wide outlier detection ("which mesh
|
||||||
// anywhere in the project is the heaviest?") and for
|
// anywhere in the project is the heaviest?") and for
|
||||||
// mesh-sharing audits.
|
// mesh-sharing audits. Companion to --list-project-meshes
|
||||||
|
// (which gives the per-zone aggregate view).
|
||||||
std::string projectDir = argv[++i];
|
std::string projectDir = 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);
|
||||||
|
|
@ -2693,7 +2694,7 @@ int main(int argc, char* argv[]) {
|
||||||
namespace fs = std::filesystem;
|
namespace fs = std::filesystem;
|
||||||
if (!fs::exists(projectDir) || !fs::is_directory(projectDir)) {
|
if (!fs::exists(projectDir) || !fs::is_directory(projectDir)) {
|
||||||
std::fprintf(stderr,
|
std::fprintf(stderr,
|
||||||
"list-project-meshes: %s is not a directory\n",
|
"list-project-meshes-detail: %s is not a directory\n",
|
||||||
projectDir.c_str());
|
projectDir.c_str());
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue