Status: Scaffolded and under active development. Compilation and live demo in progress on a dedicated UE5 machine.
A custom Unreal Engine 5 editor plugin written in C++ that adds a dockable Slate UI panel for automated asset validation against studio content pipeline standards — with one-click auto-remediation.
Built using the UE5 Asset Registry API, Slate/SlateCore, AssetTools, and the UnrealEd framework. Designed for integration into professional game development pipelines where content quality gates are enforced before check-in.
Key skills demonstrated: UE5 C++ plugin development · Slate UI · Asset Registry querying · Content pipeline tooling · Editor framework integration · Automated asset review · Pipeline standards enforcement
| Rule | What it checks | Auto-Fix |
|---|---|---|
| Naming Convention | Enforces T_, SM_, SK_, M_, MI_, BP_, A_, PS_ prefixes |
✅ Renames via AssetTools |
| Texture Size Budget | Power-of-two dimensions; per-group max sizes (World 2048, Character 4096, UI 1024) | ❌ Manual |
| LOD Requirements | Minimum LOD levels based on triangle count at LOD0 (10K → 3 LODs, 50K → 4 LODs) | ❌ Manual |
Source/AssetValidator/
├── Public/
│ ├── AssetValidator.h Module interface + tab registration
│ ├── AssetValidationRule.h IAssetValidationRule base class + FValidationResult
│ ├── AssetValidatorCommands.h UI command bindings (Ctrl+Shift+V)
│ ├── AssetValidatorStyle.h Slate style set registration
│ ├── SAssetValidatorPanel.h Main Slate compound widget
│ └── Rules/
│ ├── NamingConventionRule.h
│ ├── TextureSizeRule.h
│ └── LODRule.h
└── Private/
├── AssetValidator.cpp Startup, shutdown, menu registration
├── AssetValidatorCommands.cpp
├── AssetValidatorStyle.cpp
├── SAssetValidatorPanel.cpp Full Slate UI: toolbar, rules list, results table
└── Rules/
├── NamingConventionRule.cpp
├── TextureSizeRule.cpp
└── LODRule.cpp
Config/
└── AssetValidatorRules.ini Configurable thresholds (no recompile needed)
- Copy this folder into your UE5 project's
Plugins/directory. - Right-click your
.uproject→ Generate Visual Studio project files. - Build the
[ProjectName]Editortarget in Visual Studio or Rider. - Enable the plugin in Edit → Plugins → Pipeline Tools.
- Window → Asset Validator — opens the dockable panel
- Select assets in the Content Browser → Validate Selected
- Select a folder → Validate Folder
- Click Auto-Fix All to apply all fixable findings (naming renames)
Add a new rule by:
- Creating
Public/Rules/MyRule.h— implementIAssetValidationRule - Creating
Private/Rules/MyRule.cpp— implementValidate()and optionallyAutoFix() - Registering an instance in
SAssetValidatorPanel::Construct()
Edit Config/AssetValidatorRules.ini to change naming prefixes, texture budgets, and LOD thresholds without recompiling.
- Content pipeline enforcement at studios using Unreal Engine 5
- Pre-commit asset review before Perforce check-in or Git LFS push
- Automated QA for texture budgets, mesh complexity, and naming standards
- Onboarding new artists to studio asset conventions with immediate feedback
MIT — see LICENSE
Built by MMKPC Studios · C++ · Unreal Engine 5 · Slate UI · Pipeline Tools · Asset Validation · Game Development