Project layout

Wanted to start a discussion about how best to layout your project folders. Here’s the basic layout I use (using my Freezo Run project as an example):

- /FreezoRun
  - /Design
  | |
  | - /Cleared
  | - /Uncleared
  - /Build
  - /Assets
  | |
  | - /Standard Assets
  | - /Plugins
  | - /Asset Store Package 1
  | - /Asset Store Package 2
  | - /FreezoRun
  |   |
  |   - /Scripts
  |   - /Scenes
  |   - /Prefabs
  |   - /Fonts
  |   - /Art
  |   - /etc
  - .gitignore

All git controlled folders go into my “workspace” folder on the desktop, so I know where to find them. I keep design assets (GDD, custom art, etc) inside the project (so they get controlled with Git LFS) but outside the Assets, as I don’t necessarily want everything imported into Unity. I also track which assets have copyright clearance (made by me, or with permissive licenses e.g. CC0) and which are uncleared (e.g. placeholder art) in the design folder.

the Build folder is ignored by git, so I don’t have to control those large binaries. As many large Asset Store plugins create their own folder in /Assets, I also create a folder for “my” code to separate it, and have my Scripts/Scenes etc under that. I also gitignore any large asset folders, preferring instead to drag assets that I use into my own structure so they won’t get changed by Asset Store updates.

For reference, my .gitignore:


# Autogenerated VS/MD solution and project files

# Unity3D generated meta files

# Unity3D Generated File On Crash Reports

# Indesign Temp Files

#Big Binaries

# Standard Assets
**/Standard Assets/

# Plugins
**/Medieval Town (base)/
**/Nature pack extended/

Do you do anything different?

Privacy & Terms