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)

Example

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?