Naming Convention and folder structure
Naming convention
Based on Ubisoft’s naming convention
Â
What?
A naming convention is convention for names. It is particularly useful when multiple people use common files for a common project.
Â
Why?Â
A good naming convention makes it easy to find related files and therefore less time is lost just to browse for them.
Â
How?
By setting up a folder structure and rules that everyone should follow.
Â
Â
Folder structure
Â
Here is how the folders will be:
Â
               Rise of the legends
                               Level
                               Packages
                               Concept arts
                              Meshes
                                               Static Meshes
                                                               Props
                                                               SkyBox
                                               Skeletal Meshes
                                                               Characters
                                                               Weapons           Â
                               Textures             Â
                                               Props
                                               SkyBox
                                               Characters
                                               Weapons
                                               Others
                               Animations
                                               Characters
                                               Weapons
Sounds
Â
Basic Rules
Â
The idea is to have as much as possible the same name for the different parts of a whole object.
For example, if you create a character and call it Eve_01, then all the textures associated with it will be called Eve_01_head_D.
Â
Have as specific names as possible.
For example if you know you will create 10 kinds of trees, but all of them are of a different type, you should name them more specifically. For instance, instead of
Tree_01.obj
Tree_02.obj
Tree_03.obj
have
               PineTree_01.obj
               MapleTree_01.obj
               MapleTree_02.obj
Â
All the files must be written using one capital letter at the beginning of each word.
(called Camel Caps convention)
For example,
               Bow_01.obj
               BigBow_01.obj
               MetalArrows_01.obj
Â
Any numbering must always start at 01 and must always be 2 digits long.
So, instead of
Example_1.obj
use
               Example_01.obj
Â
Assets must only use alpha numeric values ( a,b,c …123…0 and underscores ).
Do not use things like the following in any form of naming &,.#$^()… etc.
Above all, DO NOT use punctuation or spaces in the name.
Use a number ending for master objects. A letter is added for child objects (see childObjects).
Â
Convention
Â
General rule
Usually, for any file, the convention
<ObjectName>_XX
will be used.
Example
               PineTree_01
Â
Child objects
Add a lowercase letter at the end when you have a child object (for a table, a child would be its legs):
<ObjectName>_XXx (small x is a letter from a to z for the child)
DinningTable_01a Child object a
DinningTable_01b Child object b
Â
Broken Mesh
A broken mesh is a mesh that changes state when the user “breaks†it in game. For example, if you have a trash can that can be broken when the player attacks it, then you need, for instance, 3 different meshes of this trash can – each of which is a state of the can being broken down. (normal state, partially broken state and totally broken state)
For broken mesh, add the suffix _bk1. _bk stands for broken and the number is the state:
<ObjectName>_XX_bkXX (last X is a number from 1 to 9 for the broken state)
<ObjectName>_XXx_bkXX (same as above but for a child object)
Example
               TrashCan_01 original trash can
               TrashCan_01_bk1 partially broken state
               TrashCan_01_bk2 totally broken state
               TrashCan_01a_bk1 for the cap of the trash can
Â
Â
Collisions
For collisions, you simply add the suffix _COL at the end of the name:
<ObjectName>_XX_COL
Example
               PineTree_01_COL
Â
Textures
Textures are a little special in that they have multiple files.
Usually, to have create a shader, 3 maps must be made – the diffuse, the specular and the normal map. The diffuse sets the colors to be applied on the object. The specular is a black and white map where the white tells where highlights should appear while black areas appear matte. The normal map is a kind of height map that helps create more details on a simple mesh. So far, you have seen and created mostly only diffuse passes.
Â
Unique/Objects textures must be named like the object it is for.
Tiling textures name must be a description of the texture.
<TextureName>_XX_D diffuse texture
<TextureName>_XX_S specular texture
<TextureName>_XX_N normal texture
Example
PineTree_01_D
OldConcrete_01_D Non-unique tiling texture, not named for a specific object
SmallKitchenWall_01_S Unique tiling texture, named for a specific object
Â
Materials / Shaders
(The person that will create the shaders in Unreal must follow this convention.)
Unique/Objects textures must be named like the object it is for.
Tiling textures name must be a description of the texture.
<TextureName>_XX same as its texture minus the ending tag
Example
OldConcrete_01
PineTree_01
SmallKitchen_01
Â
If you need to create two different materials with the unique textures you will have to add a one word description after the ending number.
               <TextureName>_XX_S
Example
FoldingChair_01_Metal
FoldingChair_01_Plastic
              Â
Â
Â
Â
Â
Notes:
Are the clothes made in the mesh of the character or another mesh added?
Do we have breakable assets?
Really useful guide! Thanks
Really useful guide! Thanks