Add MeshLabArtifactValidator to detect bad external MeshLab settings - #109
Merged
SashaRX merged 2 commits intoMay 2, 2026
Merged
Conversation
Detects three classes of artifacts left by the desktop MeshLab tool when processing FBX before Unity import: - Collapsed UV seams (Merge Close / Remove Duplicate Vertices) - Recalculated normals (UseExistingNormals OFF on FBX export) - Broken or wiped UV1 parameterization (Flat Plane filter) Exposed via Tools/Mesh Lab/Validators/Check Imported MeshLab Artifacts. Operates on selected GameObject, Mesh asset, or imported FBX. Read-only; logs through UvtLog. EXPERIMENTS.md gets a new section listing the safe MeshLab filter and export settings, mapped to the symptoms the validator emits.
Object.Instantiate(resultMesh) produced clones named "Original(Clone)" which Unity FBX Exporter writes with empty/auto-generated mesh node names; the FBX SDK then defaults the FbxMesh node to the scene name. On reimport every mesh asset shows up as "Scene", erasing per-LOD and per-renderer identifiers needed by sidecar lookup, scene relinking and the new MeshLabArtifactValidator report. Mirrors the existing fix at CopyVertexDataToClone (in-place overwrite path): assign mesh.name = ResolveExportMeshName(...) before handing the mesh to ExportObjects.
Owner
Author
|
@codex review |
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
SashaRX
merged commit May 2, 2026
8f3a24c
into
claude/bake-ao-single-hierarchy-27AwS
2 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
MeshLabArtifactValidator— a read-only mesh inspection tool that detects three common symptoms of bad external MeshLab export settings: collapsed UV seams (from Merge Close Vertices), recalculated normals (UseExistingNormals OFF), and broken UV1 parameterization (Flat Plane / wiped channels).Tools → Mesh Lab → Validators → Check Imported MeshLab Artifacts) with support for selecting GameObjects, Mesh assets, and FBX files.EXPERIMENTS.mdcovering MeshLab filters to avoid, required FBX export settings, symptom descriptions, and verification workflow.LightmapTransferTool.ExportFbx()to ensure exported meshes retain their canonical names instead of falling back to "Scene" on reimport.Changed Zones
Editor/— Editor tools / UIEXPERIMENTS.md)Checklist
.metafiles present for all new files/directoriesTest Plan
Tools → Mesh Lab → Validators → Check Imported MeshLab Artifacts.Review Notes
LightmapTransferToolis a small but important correctness improvement that prevents all exported meshes from being named "Scene" on reimport.https://claude.ai/code/session_01VcWmB88w3XUQMKQoDrohEp