Just as using a standard naming convention for C# classes helps ensure clarity and consistency in a project, adopting a naming convention for game assets is equally beneficial. While Unity doesn’t enforce specific rules for asset names, following a standardized system can greatly improve project organization, collaboration, and portability. Epic Games provides detailed guidance for naming assets in Unreal Engine, and these conventions can be applied universally across any game engine. By using a consistent naming schema, you can quickly identify assets both inside and outside your game engine, maintain clarity across large teams, and make it easier to move projects between engines.
Asset Naming: More Than Just Organization
Within a game engine, different asset types are often visually distinguished, and filters can be used to quickly locate specific assets. However, implementing a standardized naming convention, like the one Epic Games recommends, adds another layer of clarity. In Unreal Engine, many automated tools (such as importing assets, building shaders, or generating references) rely on consistent naming patterns to function smoothly. Following a naming convention not only makes assets easier to identify outside the engine but also ensures consistency across project files and simplifies collaboration when moving assets between projects or engines.
Common Asset Naming Guidelines
The list below outlines asset naming conventions for the most common types of game assets. While it builds on the Epic Games naming convention, I’ve also added my own conventions for Unity-specific assets, such as prefabs. Using these conventions consistently will help you organize your project more efficiently and make assets easier to locate, reference, and manage throughout development.
Animation Assets
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| Animation | ANM_ | ANM_Spinner | Animation Clips or sequences are animations attached to a model or prefab | |
| Animation Controller | ANM_ | _CNTRL | ANM_Spinner_CNTRL | Animation controllers allow for the management and arrangement of various Animation Clips and the Transitions between them using a State Machine. |
Audio Assets
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| Music | MX_ | MX_IslandTheme | ||
| Music Background Ambience | MX_ | _BKG | MX_JollyRythm_BKG | Background music, designed to loop |
| Music Cinematic | MX_ | _CIN | MX_CityIntro_CIN | |
| Sound Effect | SX_ | SX_ScratchingMetal | ||
| Sound Effect Ambience | SX_ | _AMB | SX_ScratchingMetal | |
| Sound Effect Environmental | SX_ | _ENV | SX_BabblingCreek_ENV | |
| Sound Effect Interactable | SX_ | _INT | SX_ClickMe_Int | |
| Dialog Voice | DV_ | See Notes | DV_DarkKnight_attack_01 or DV_DarkKnight_00001 | Suffix should denote the sound or sequence that the dialog is played |
Light Assets
In addition to the prefix and suffix rules below an additional suffix of an index number is commonly added to distinguish between multiple lights in a scene.
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| Area Light | Light_ | _A | Light_Overhead_A_02 | Area light emits light from a rectangular or circular area, used for even and diffuse illumination like overhead lights. |
| Directional Light | Light_ | _D | Light_MainHall_D_01 | Directional light simulates sunlight or other distant light sources with parallel light rays for general illumination. |
| IES Light | Light_ | _I | Light_Corridor_I_01 | IES light uses real-world photometric data for accurate light distribution. Commonly supported in Unreal Engine. |
| Light Map | LightMap_ | N/A | LightMap_Scene_Baked | Light maps store baked lighting information to enhance scene realism and improve performance for static objects. |
| Light Probe | LightProbe_ | N/A | LightProbe_ScenePoint_01 | Light probes capture and store lighting data to simulate realistic lighting for dynamic objects. |
| Point Light | Light_ | _P | Light_Lamp_P_01 | Point light emits light in all directions from a single point, simulating sources like lamps. |
| Rectangular Light | Light_ | _R | Light_Window_R_01 | Rectangular light emits light from a rectangular shape, simulating sources such as windows or large fixtures. Commonly supported in Unreal Engine. |
| Spot Light | Light_ | _S | Light_RedGlow_S_01 | Spot light emits light in a cone-shaped beam, ideal for highlighting specific areas like red glow effects. |
Materials and Textures
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| Material | M_ | N/A | M_BrickWall | |
| Material Decal | M_ | _Decal | M_WarningSign_Decal | Decals are materials that decorate the surface of other materials, used for effects like splatters, signs, and stickers. |
| UI Material | M_ | _UI | M_ButtonBackground_UI | Materials specific to UI elements. |
| Procedural Material | M_ | _Proc | M_ProceduralBrick_Proc | Procedural materials generated by code. |
| Texture | T_ | N/A | T_RubbyJewel | The base map texture image. |
| Texture Ambient Occlusion | T_ | _AO | T_RubbyJewel_AO | An ambient occlusion texture simulates subtle shading and depth cues based on light reach. |
| Texture Emission Map | T_ | _E | T_RubbyJewel_E | An emission map texture defines which parts of an object emit light or glow, creating emissive effects. |
| Texture Height Map | T_ | _H | T_RubbyJewel_H | A height map texture creates detailed terrain or landscape features by defining elevation. |
| Texture Metallic Map | T_ | _M | T_RubbyJewel_M | A metallic map texture controls reflectivity, simulating various materials with different levels of metal-like properties. |
| Texture Normal Map | T_ | _N | T_RubbyJewel_N | A normal map texture adds surface detail or “bumpiness” to a 3D model, creating the illusion of raised or depressed areas. |
| Texture Cube | TC_ | N/A | TC_ParkDaylight | A cubemap is a collection of six square textures representing environment reflections, often used for skyboxes. |
Models and Prefabs
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| Static Mesh | SM_ | N/A | SM_ParkBench | |
| Skeletal Mesh | SK_ | N/A | SK_VikingDwarf | Any model with a rig, typically characters. |
| Prefab | – | – | ParkBench | Prefabs are named descriptively and displayed in blue, making them easily identifiable. |
| Prefab Variant | V_ | N/A | V_ParkBench | Variant of an existing prefab for different states. |
Scenes
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| Level | Level_ | _01,_02, etc. | Level_City_01 | Use for gameplay levels, e.g., a city level in an open-world game. |
| UI | UI_ | _MainMenu,_Options, etc. | UI_MainMenu | Use for menus and user interfaces, such as the main menu or options screen. |
| Cutscene | Cutscene_ | _Level3_End,_Intro, etc. | Cutscene_Level3_End | Use for narrative moments that interrupt gameplay, like cutscenes at the end of a level. |
| Loading | Loading_ | _Level2, _GameStart, etc. | Loading_Level2 | Use for load screens that appear between levels or during game loading. |
| Start | Start_ | _SplashScreen, _TitleCard, etc. | Start_SplashScreen | Use for intro/start scenes that display before the main game begins, such as a splash screen. |
| End | End_ | _Credits,_GameOver, etc. | End_Credits | Use for end screens that play after completing a level or finishing the game, like credits rolls. |
| Test | Test_ | N/A | Test_Physics, Test_Climb | Use for testing scenes and prototypes, e.g., to test physics simulations or other gameplay mechanics. |
Shaders
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| Surface Shader | SHD_ | N/A | SHD_Reflective | Standard or custom shaders used for surface materials. |
| Post Processing | SHD_ | _PP | SHD_Blur_PP | Shaders used in post-processing effects. |
Special Effects
| Type | Prefix | Suffix | Example | Notes |
|---|---|---|---|---|
| General Effect | PS_ | N/A | PS_Fireball, PS_Smoke,PS_Explosion | A particle system is a framework for generating and controlling multiple small graphical elements (particles) to create complex visual effects like fire, smoke, or explosions. |
| Post- Processing | Vol_ | _PP | Vol_Cityscape_PP, Vol_Underwater_PP | Defines areas with specific post-processing effects, such as color grading or bloom. |
| Trigger Zone | Vol_ | _Trigger | Vol_PlayerEnter_Trigger,Vol_EnemySpawn_Trigger | Defines areas that trigger events or logic when a player or object enters them. |
By following a consistent asset naming convention, you not only keep your project organized but also make collaboration, automation, and cross-engine work much smoother. Whether you’re using Unreal, Unity, or moving assets between engines, these guidelines help ensure clarity, efficiency, and maintainability throughout development. Adopting a clear naming system early in your project will save time, reduce errors, and make your workflow more professional.
