Content organization
I've worked on a number of projects, in different engines, with all different formats, and one thing that always remains mostly in the artist's control is the organization of files. Its something that no one talks about much, it will be somewhat different for every artist, and is something artists have to figure out for themselves. However, it is worth it to start a discourse about it, because it can become a tremendous hindrance or a great blessing.
Different types of assets have different organizations, generally, so I'll run through my experience and preferences.
General Tips
File Naming: This is the #1 organizational thing you have to create a good system for. Names need to contain three components: the asset name, the iteration (with padding), and the changes. Lots of people miss this last thing, but its VERY important. Don't worry about long names! It is much simpler than having to open up a file (especially a high-poly model, or a giant texture). If I have a shield, I would have:
- shield001
- shield002handle
- shield003boss
- shield004edging
- shieldHP
- shield005lowpoly
- shield006
- shield007uv
- shieldNM
What does this mean?
Characters
I work mostly with characters, so I'll start with that.
The first thing is to figure out, what are the requirements of this asset? Does it need to be broken down into a kit to be reused? How much time do you have to spend, how important is it, how much reference do you need, how many different 'scenes' will you need if you are doing the equipment separately? Do you need anything additional? How much sculpting and high poly work is required?
Workflow
When I start a character, I will begin by building a low-poly "cage" mesh of all quads for a concept, or use one of my existing cages if it is a humanoid character
Example Project Folder
Generally, my project folder will look like this:
- project name
- /data
- /highpoly
- /sculpting
- body001.mud
- bodyL2.obj
- bodyL4.obj
- bodyToMB.obj
- /hard
- shield001.ma
- /sculpting
- /models
- body001.ma
- body002head.ma
- body003uv.ma
- bodyTexture.ma
- shield001.ma
- shield002boss.ma
- shield003uv.ma
- shieldTexture.ma
- /normalMapping
- bodyLP.obj
- bodyHP.obj
- shieldLP.obj
- shieldHP.obj
- /reference
- any concepts or texture references go here
- /rigs
- rig001.max
- rig002fingers.max
- export.max
- /textures
- /cmpr
- body.dds
- shield.dds
- body.psd
- shield.psd
- /cmpr
Explanation
- data
- The data folder is somewhat of a "junk" folder. It contains mostly obj exports between programs, and other stuff that doesn't need to be versioned and isn't essential.