New naming convention proposal #149

Merged
Demeter Dzadik merged 12 commits from Mets/blender-studio-pipeline:mets-naming-conventions into main 2023-11-23 17:11:47 +01:00
3 changed files with 12 additions and 25 deletions
Showing only changes of commit 44c9a38e76 - Show all commits

Binary file not shown.

BIN
docs/media/naming-conventions/hierarchy_name_example.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -36,19 +36,8 @@ Note that there's no technical distinction between different types of assets. Th
The immediate sub-collections of the root collection should be named according to the Task Layers configured in our Asset Pipeline add-on, but this is not strictly required. Task Layers are the different data layers that make up an asset, such as Modeling, Rigging, and Shading. Collections nested beyond this can be named freely, as long as they still start with the namespace identifier.
So, here's what an asset's collection hierarchy might look like:
```txt
CH-elder_sprite
esprite-model
esprite-head
esprite-teeth_and_tongue
esprite-rig
esprite-widgets
esprite-helpers
esprite-eye.L
esprite-eye.R
esprite-shading
esprite-outlines
```
![Collection Hierarchy Naming Example](/media/naming-conventions/collection_hierarchy_naming_example.png)
## Name Prefixes
All Object names (not just in Assets) must start with a prefix describing the object's purpose:
@ -73,15 +62,7 @@ All local datablocks of an asset (Object, Mesh, Material, Action, etc.) must als
## Indicating Hierarchy
For complex assets, try to use dashes to indicate a nested hierarchy of objects, eg:
```
PR-wardrobe
wardrobe.model
GEO-wardrobe-base
GEO-wardrobe-drawer_01
GEO-wardrobe-drawer_01-knob
GEO-wardrobe-drawer_02
GEO-wardrobe-drawer_02-knob
```
![Indicating Hierarchy in names](/media/naming-conventions/hierarchy_name_example.png)
## Indicating Asset Variants
@ -110,7 +91,7 @@ And as always, the namespace identifier must be included, eg. `GN-esprite-proced
### Pose Library
Pose Library actions also need a namespace identifier. For easy consistency, use lowercase words separated by underscores, as usual.
Pose Library actions also need a namespace identifier. Other than that, stick to lowercase and underscores.
Examples:
```
@ -123,7 +104,7 @@ rex-eyes_surprised
```
### Rig Actions
Rigs may use Actions for Action Constraint based control set-ups. Since these are datablocks and part of the character asset, they must start with the asset identifier.
Rigs may use Actions for Action Constraint based control set-ups. Since these are datablocks and part of the character asset, they must include the namespace identifier.
Corrective Actions are ones which are meant to activate when two other actions activate. These should use the name of the two trigger actions, separated by a "+".
Examples:
@ -134,7 +115,7 @@ RIG-esprite-mouth_open+lips_wide
```
### Animations of Shots
Actions created for shots should be named `ANI-{asset_identifier}-{scene_name}-{version}`
Actions created for shots should be named `ANI-{namespace_identifier}-{scene_name}-{version}`
Examples:
```