Matthew Bates 12 April 2021

Naming Conventions in Unreal Engine

We take a look at good practices around folder structure within Unreal Engine and ensuring that your files are correctly named when it comes to managing assets within Unreal Engine.

Unreal Engine

Tutorial Overview

This tutorial outlines some of the key folder and naming conventions of files when it comes to working within Unreal Engine.

3D Asset Naming Convention

When it comes to naming files, it makes sense to follow specific guidelines as this help to keep consistency within a production while also providing cleaner management of assets in an Unreal Engine project.

Typical practices follow this standard for 3D Assets: AssetType_SecondaryInfo_TertiatyInfo_AlphaNumericalValue*

*In some cases tertiary information may not be necessary. If this is the case move straight to the alphanumerical value.

Asset types

Asset types consist of Skeletal Meshes and Static Meshes. Each asset type would use a specific naming code to differentiate between the two. Skeletal Mesh would be SK_, and Static Mesh would be SM_.

Secondard and Tertiary Information

The Secondard and Tertiary information relate to what the asset is. In some cases, you may only require the Secondary information, for example you may just have a TV as a full mesh without any separated meshes. However, assets used for modular kits for example, will require multiple pieces so they would require additional information to help identify between to assets.

An example of this would be for modular wall pieces. You would have a straight wall and a corner wall, so you would have Wall_Straight and Wall_Corner

Alpha Numerical Value

This number value is used to determine a variations of a duplicate asset. Looking at modular walls again, you may have a straight piece of wall, but then another straight bit of wall with a handrail. In this instance, you would name your assets as follows Wall_Straight_01a for the first piece, and Wall_Straight_01b for the second piece.

Here is an example of a full name for a mesh file:

  • SM_Wall_Straight_01a
  • SM_Wall_Straight_01b
  • SM_Wall_Straight_Half_02a
  • SM_Wall_Straight_Half_02a

Texture Naming Conventions

Typical practices follow this standard for 3D Assets: T_AssetType_SecondaryInfo_TertiaryInfo*_MapType_AlphaNumericalValue. As you can see, some of this information is the same as the 3D assets setup, so we will take a look at the ones we haven't already discussed.

*In some cases tertiary information may not be necessary. If this is the case move straight to the alphanumerical value.

Map Type

Map Type relates to the specific texture map type. There are a number of different texture maps which are used in 3D productions, some of which have been identified below along with some naming code examples:

  • Diffuse/BaseColour > Diff or D
  • Metallic > Mtl or MT
  • Specular > Spec or S
  • Roughness > Rgh or R
  • Glossiness > Gls or G
  • Emissive Colour > Ems or E
  • Normal > Nrm or N
  • Height > Hgt or H
  • Ambient Occlusion > AOC or AO
  • Subsuface Scattering > SSS
  • Displacement > Dis

In some cases, you may used packed textures containing multiple texture maps. In an example, for Ambient Occlusion, Metallic and Roughness you may use AOMR.

Here is an example of a full name for a texture file:

  • T_Wall_Brick_Red_Nrm_01a
  • T_Floor_Road_Asphalt_Diff_01a

Material Naming Convention

Like 3D Asset and Texture naming, Material naming follows a similar structure. It will start with M_ (the original material) or MI_ (material instance of the original material). A material instance is a clone of the original material, which is used to create variations of the original material by adjusting parameters which will not effect the original material.

Some examples of Materials and Material Instances are as follows:

  • M_Wall_Brick_Red_01a
  • M_Floor_Road_Asphalt_01a
  • MI_Floor_Road_Dirt_02a

Unreal Folder System

Folder structures are generally broken down into 3 primary folders; Meshes, Materials, Textures.

Inside each folder, it is recommended to include a sub-folder system which will contain the required content based on the assets. This is done to help with the management of files and using Textures as an example, it avoids the textures subfolders becoming difficult to navigate and additional sub-folders may also be used to store individual sets of textures.

As an example:
  • Meshes_ArabianEnvironment_ModularWalls_Assets
  • Materials_ArabianEnvironment_Brick_Materials
  • Textures_ArabianEnvironment_Brick_Red_Textures

Want To Learn More?

Check out some of the other great tutorials on CGHero.

Have a CG Project?

Looking for assistance with your next project? Post your project and receive quotes from our Heroes.

Post Your Project

Are you a Freelancer?

We are looking for talented freelance artists with a passion for producing cutting-edge 3D CGI content.

Become a CGHero