Files
mesh-project-duplicate-remover/Source/OptimizerEditor/OptimizerEditor.Build.cs
Bonchellon a95b299680 Mesh Optimizer: sibling StaticMesh duplicate remover (UE 5.7)
Editor plugin that detects geometrically-identical sibling StaticMeshes across a
level, rebases each placement onto one canonical mesh with a corrected transform
(W' = D * W, verified by exact vertex matching), and can collapse groups into HISM.
Native Slate tool panel + BlueprintCallable UOptimizerSubsystem.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 18:26:45 +03:00

40 lines
1.5 KiB
C#

// Copyright IHY.
using UnrealBuildTool;
public class OptimizerEditor : ModuleRules
{
public OptimizerEditor(ReadOnlyTargetRules Target) : base(Target)
{
PCHUsage = ModuleRules.PCHUsageMode.UseExplicitOrSharedPCHs;
PublicDependencyModuleNames.AddRange(new string[]
{
"Core",
"CoreUObject",
"Engine", // UStaticMesh, UStaticMeshComponent, AActor, FTransform
});
PrivateDependencyModuleNames.AddRange(new string[]
{
// --- editor core ---
"UnrealEd", // GEditor, FScopedTransaction, UEditorActorSubsystem, editor world context
"EditorSubsystem", // UEditorSubsystem (base of UOptimizerSubsystem)
"Slate", // notifications / future Slate bits
"SlateCore",
"InputCore",
"ToolMenus", // UToolMenus — Tools menu entry
"Projects", // IPluginManager
"UMG", // UWidgetBlueprint chain pulled in by the EUW headers
"UMGEditor", // WidgetBlueprint.h include path (transitive via EditorUtilityWidgetBlueprint.h)
"Blutility", // UEditorUtilitySubsystem / UEditorUtilityWidgetBlueprint (open the EUW panel)
// --- mesh geometry & asset discovery (load-bearing for fingerprinting) ---
"MeshDescription", // FMeshDescription — LOD0 source vertex/poly data
"StaticMeshDescription", // FStaticMeshAttributes, UStaticMesh::GetMeshDescription
"AssetRegistry", // enumerate UStaticMesh assets when needed
"AssetTools", // asset metadata helpers
});
}
}