Wiki
Validation rules
Asset validation checks run at check-in: the 9 built-in rules, the error / warning / info severities, JSON config, export / import / reset.
Introduction
Validation rules are Unreal asset checks run at check-in time: naming, texture size, missing dependencies, and so on. They enforce studio conventions automatically, before content enters the repository. They are configured per repository.
Access and roles
The Rules tab is available to the super admin and to the project_admin on the repositories they administer.
Severities
| Severity | Effect at check-in |
|---|---|
error | Blocks the check-in until the problem is fixed. |
warning | Warns but lets it through. |
info | Purely informational. |
The 9 built-in rules
| Rule | Default | What it checks |
|---|---|---|
blueprint_compilation | error | Blueprints compile without errors before check-in. |
naming_convention | warning | Naming prefixes (Allar UE5 style): T_ textures, M_ materials, BP_ blueprints, SM_ static meshes, WBP_ widgets, and so on. |
max_texture_size | warning | Maximum texture size: 4096 × 4096 by default, power of 2 required. |
material_complexity | warning | Material complexity: by default max 256 instructions, 16 texture samples. |
import_settings | warning | Compliant import settings (textures, meshes). |
missing_dependency | error | No missing dependency (ignores engine content by default). |
circular_dependency | error | No circular dependency (search depth 20 by default). |
unreferenced_asset | info | Flags unreferenced assets (excludes maps and widgets by default). |
duplicate_asset | warning | Detects duplicate assets (ignores .umap by default). |
Enable and configure
For each rule:
- Toggle: enables / disables the rule. Saved immediately.
- Severity: error / warning / info dropdown. Saved immediately.
- Configuration (JSON): expand the rule (chevron) to edit its parameters in JSON, then Save Config. Invalid JSON blocks the save with the error detail.
Example: lower max_texture_size to 2048 for a mobile project, or switch
naming_convention to error to enforce it strictly.
Export, import, reset
- Export: downloads a
rules.jsonfile containing the state of every rule (enablement, severity, config). - Import: reloads a
rules.jsonand applies each entry to the corresponding rules (unknown keys are ignored). - Reset to Defaults: resets all rules to their default values. Custom configurations are lost (confirmation required).
Export / import is used to replicate a validation policy from one repository to another, or to version it offline.
rules.json in the repository
.uversion/rules.json file is applied to the repository policy only if the author of the
commit holds the manage_rules capability. Otherwise the file is stored but the rules do not change.
This is a safeguard: a contributor with write access on that path cannot disable validation by committing a file.
Common pitfalls
A check-in is blocked
A rule set to error failed. The message tells you which one. Fix the asset, or (if the rule is too
strict for your context) lower its severity to warning.
Reset wipes my settings
Reset to Defaults is destructive for your custom configurations. Do an Export first if you want to be able to roll back.
A rule seems to do nothing
Check that it is enabled (toggle) and that its severity is not info if you were expecting a block.
Only error blocks the check-in.