refactor(kit): SM_ asset naming and topology validation per the modeling checklist
- Kit pieces export as SM_Kit_* (Unreal static-mesh convention) while the Blender objects keep their readable names; the kit loader strips the prefix so layout still addresses pieces by short name. - facade_kit_build.py validates each piece before handoff (non-manifold edges, loose vertices, triangle count) and records the result in the part report: 16 pieces, all manifold, no loose geometry, 12 tris each. - ue_import_facade_kit.py removes kit assets the current build no longer produces, so a rename cannot leave two generations of the same piece behind. - Kit re-imported and re-applied (625 pieces); packaged QA still PASS.
This commit is contained in:
1 parent
32dff056c3
commit
1b069188a2
60 files changed
+154
-97
No files matched your search
@@ -42,6 +42,16 @@ def main() -> None:
|
||||
log(f"no FBX files in {SRC}")
|
||||
return
|
||||
|
||||
# Drop kit assets that the current build no longer produces (the pieces were
|
||||
# renamed to follow the SM_ convention), so the folder cannot accumulate two
|
||||
# generations of the same piece.
|
||||
expected = {os.path.splitext(f)[0] for f in files}
|
||||
for existing in unreal.EditorAssetLibrary.list_assets(DEST, recursive=False):
|
||||
name = existing.split("/")[-1].split(".")[0]
|
||||
if name not in expected:
|
||||
unreal.EditorAssetLibrary.delete_asset(f"{DEST}/{name}")
|
||||
log(f"removed stale kit asset {name}")
|
||||
|
||||
for filename in files:
|
||||
asset_name = os.path.splitext(filename)[0]
|
||||
task = unreal.AssetImportTask()
|
||||
|
||||
Reference in new issue
Block a user