PascalCase
Use Textures/Trees
, Models/Trees
and not Trees/Textures
, Trees/Models
. That way its easy to set up root directories for the different software involved, for example, Substance Painter would always be set to save to the Textures directory.
Trees/Jungle
, Trees/City
not Jungle/Trees
, City/Trees
.Since it makes it easier to compare similar assets from different art sets to ensure continuity across art sets.
[PascalCase]
[Assets]
and Assets
folder.
[SNAKE_CASE]
tree_small
not small_tree
. While the latter sounds better in English, it is much more effective to group all tree objects together instead of all small objects.camelCase
where necessary. Use weapon_miniGun
instead of weapon_gun_mini
.vehicles_fighterJet
should be vehicles_jet_fighter
if you plan to have multiple types of jets.vehicle_truck_damaged
not vehicle_truck_01
. git
.
_snake_case
Root
+---Assets
+---Build
/---Tools // Programs to aid development: compilers, asset managers, etc.
Assets
+---Art
| +---Materials
| +---Models // FBX and BLEND files
| +---Textures // PNG files
+---Audio
| +---Music
| \---Sound // Samples and sound effects
+---Scripts
+---ScriptableObjects
+---Shaders // Shader files and shader graphs
+---Docs // Wiki, concept art, marketing material
+---Level // Anything related to game design in Unity
| +---Prefabs
| +---Scenes
| \---UI
\---Resources // Configuration files, localization text and other user files.
A Framework directory is great for having code that can be reused across projects.
The Scripts folder varies depending on the project, however, Environment
, Framework
, Tools
and UI
should be consistent across projects.
Scripts
+---Environment
+---Framework
+---NPC
+---Player
+---Tools
\---UI
Models
+---Blend
\---FBX