The Asset Pipeline
Check scale, collision, LODs, texture settings, and naming as assets enter Unreal. A shared import setup makes those checks repeatable and helps the team find problems before they spread across a level.
2.1Scale And Axes: Solve It Once
Unreal works in centimetres, Z-up, left-handed. Match that before modelling: Blender scene units to metric with 0.01 scale (or export at x100), Maya working units to cm. A human should land around 180 units tall. Get scale wrong and physics, lighting, LOD distances, nav, and designer intuition all inherit the mistake.
2.2Importing Meshes
FBX is still the workhorse, though Interchange is the newer path. Either way, the habits are the same:
- Pivots - place the pivot where the object should rotate/snap from (usually the base), at the DCC origin on export.
- Collision - author simple collision in the DCC with
UCX_prefixed meshes, or generate convex collision on import. Never use complex-as-simple collision on gameplay objects. - LODs - import your own LOD chain or set up auto-LODs immediately at import time, not "later". Make the intended LOD setup part of the import review. (Nanite meshes skip LODs - see Meshes & Nanite.)
- Lightmap UVs - if you bake lighting, make sure UV channel 1 is non-overlapping. The importer can generate one, but inspect it.
- Vertex normals - import normals and tangents from the DCC rather than recomputing, or your baked normal maps will shade wrong.
2.3Importing Textures
The importer guesses from suffixes, so help it out: _D, _N, _ORM, and friends. Then check the four settings that matter on almost every texture:
| Setting | Rule |
|---|---|
| Compression | Default (BC1/BC3) for colour; Normalmap (BC5) for normals; Masks (linear) for packed ORM; BC7 only when banding is visible |
| sRGB | ON for color/albedo; OFF for normals, roughness, metallic, masks, and anything that's data, not colour |
| Mip maps | On for everything in the 3D world (needs power-of-two dimensions); off only for UI |
| Texture Group | Assign the right LOD group (World, Character, UI...) so platform scaling works for free |
A normal map imported with sRGB on (or wrong compression) can produce incorrect shading. It’s a useful automated check - the Asset Health Dashboard flags it automatically.
2.4Naming And Folder Structure

Consistent prefixes make assets easier to find and give validation scripts a straightforward way to check names. Agree on the convention with the team and apply it during import or export.
| Prefix | Type | Prefix | Type |
|---|---|---|---|
SM_ | Static Mesh | M_ | Material |
SK_ | Skeletal Mesh | MI_ | Material Instance |
T_ | Texture | MF_ | Material Function |
BP_ | Blueprint | NS_ | Niagara System |
WBP_ | Widget Blueprint | DT_ | Data Table |
Structure Content/ by feature, not file type. /Weapons/Rifle/ should contain its meshes, textures, materials, and Blueprints together. References stay local, and migrating the feature later is much less painful.
2.5Validate On The Way In
Every rule above is scriptable. Big studios wire naming, texture settings, and LOD checks into imports or CI. You can start smaller: run the Asset Health Dashboard export weekly and treat the report like unit tests for the content pipeline.
