Repository Reference/Naming conventions

From Blood Wiki
(Difference between revisions)
Jump to: navigation, search
(Created page with "{{navigation title|Building a Game}} ==Texture names== Texture name should contain only latin characters, all lowercase. It should have one or two words explaining what this t...")
 
m
 
(17 intermediate revisions by one user not shown)
Line 1: Line 1:
 
{{navigation title|Building a Game}}
 
{{navigation title|Building a Game}}
 +
{{grammar}}
 +
Naming conventions are required to keep repository clean and easy to work with. There is some files violating common rules, making them first candidates for the renaming.
 +
 +
Be sure to follow this conventions when adding new files to the repository.
 +
 
==Texture names==
 
==Texture names==
Texture name should contain only latin characters, all lowercase. It should have one or two words explaining what this texture is for. Special texture should be suffixed according to skinframe rules (see [[texture]])
+
Texture name should be one or two words explaining what this texture is for.
 +
 
 +
Special textures (normalmaps, glowmaps etc.) should have suffix according to skinframe rules (see [[texture]])
  
If there is several variations of this texture, use the following template for naming: '''texturename<group_number>_<texture_number>'''
+
Name template:
 +
: texturename''<group_number>''_''<variation_number>''
  
 
Example:
 
Example:
Line 13: Line 21:
 
  textures/towns/brick2_3
 
  textures/towns/brick2_3
 
  textures/towns/brick3_1
 
  textures/towns/brick3_1
 +
 
==Material names==
 
==Material names==
Material names should mimic texture names where possible. For portability reasons there should be only forward slashes (/).
+
Material names should mimic texture names where possible. For portability reasons there should be only forward ('''/''') slashes.
  
If material is additional variation of a base materia, or additional layer of it, it's name should begin as it's base material
+
If material is additional variation of a base material, or additional layer of it, it's name should begin as it's base material
  
 
Example:
 
Example:
Line 23: Line 32:
  
 
==Texture themes==
 
==Texture themes==
For convenience materials is grouped into different themes, each theme is subfolder of textures/ and separate list item in texture window of map editor.
+
Texture themes is way to categorize textures in map editor. Only one texture theme can be inspected in texture browser at one time. Also it is convenient way to separate files into several folders.
  
 
Texture theme should be one word explaining what it will be (like crypt, mausoleum, inn etc.).
 
Texture theme should be one word explaining what it will be (like crypt, mausoleum, inn etc.).
 +
 +
Examples:
 +
crypt
 +
mausoleum
 +
dungeon
 +
spiritforge
 +
town
 +
 
==Model names==
 
==Model names==
 
Model names can contain lowercase latin characters, numbers and underscore as spacer. Names should be sane, suffixes and numbers should be added only if model is part of some group.
 
Model names can contain lowercase latin characters, numbers and underscore as spacer. Names should be sane, suffixes and numbers should be added only if model is part of some group.
Line 32: Line 49:
  
 
Examples:
 
Examples:
 +
<font color=green>// Correct</font>
 
  models/mapobjects/graveyard/stone1.md3
 
  models/mapobjects/graveyard/stone1.md3
 
  models/mapobjects/graveyard/stone2.md3
 
  models/mapobjects/graveyard/stone2.md3
Line 37: Line 55:
 
  models/mapobjects/misc/bat1.md3
 
  models/mapobjects/misc/bat1.md3
 
  models/mapobjects/misc/bat2.md3
 
  models/mapobjects/misc/bat2.md3
 +
<font color=green>// Wrong</font>
 +
models/mapobjects/my models/barrel.md3
 +
models/mapobjects/graveyard/stone4.MD3
 +
 
==Model themes==
 
==Model themes==
Like texture themes, model themes are subfolders in models/mapobjects/. Model theme name should be one word, explaining what models will be used for.
+
Like texture themes, model themes are subfolders in '''models/mapobjects/'''. Model theme name should be one word, explaining what models will be used for.
  
 
Examples:
 
Examples:
Line 44: Line 66:
 
  dungeon
 
  dungeon
 
  graveyard
 
  graveyard
 +
 
==Map names==
 
==Map names==
Map name should contain lowercase latin characters and position of a map in hierarchy:
+
Map name contains position of a map location in hierarchy:
 
* '''World'''  
 
* '''World'''  
** '''Locations'''
+
** '''Location'''
*** '''Sub-locations'''
+
*** '''Sub-location''' (optional)
Template: '''w'''[''worldnum'']'''m'''[''locationnum'']'''''-'''''[''location_name'']'''-'''[''sub-location_name'']
+
Name template:
 +
:w''<worldnum>''m''<locationnum>''-''<location_name>''-''<sub_location_name>''
  
If sub-location is grouped (there is several crypts, caves etc.) first one doesnt contain 1 in the end.
+
If sub-location is grouped (there is several crypts, caves etc.) first one should not have 1 in the end.
  
 
Examples:  
 
Examples:  
Line 57: Line 81:
 
  w1m2-pillars-crypt
 
  w1m2-pillars-crypt
 
  w1m2-pillars-crypt2
 
  w1m2-pillars-crypt2
Test levels should be prefixed by '''test-'''. They are not added to game release build.
+
 
 +
Test levels are special case, they should be prefixed by '''test-'''. Test levels are not added to game release build.
 +
 
 
==Map props==
 
==Map props==
All level pros is saved to models/maps/<location_name> folders. Yet again, use same names. For example, name terrain mesh as '''terrain.ase''', not '''02.ase''' or '''terr01b.ase'''.
+
All level props is saved to models/maps/<location_name> folders. Use model names convention to name them.
 +
 
 +
Example:
 +
 
 +
<font color=green>// Correct:</font>
 +
'''terrain.ase'''
 +
<font color=green>// Wrong:</font>
 +
'''02.ase'''
 +
'''terr01b.ASE'''
  
{{navigation footer|Repository structure in-depth}}
+
{{navigation footer|}}
 +
{{finished}}

Latest revision as of 23:32, 9 August 2012

Repository Reference | previous chapter: Building a Game

Contents

Naming conventions are required to keep repository clean and easy to work with. There is some files violating common rules, making them first candidates for the renaming.

Be sure to follow this conventions when adding new files to the repository.

[edit] Texture names

Texture name should be one or two words explaining what this texture is for.

Special textures (normalmaps, glowmaps etc.) should have suffix according to skinframe rules (see texture)

Name template:

texturename<group_number>_<variation_number>

Example:

textures/towns/brick1_1
textures/towns/brick1_2
textures/towns/brick1_3
textures/towns/brick2_1
textures/towns/brick2_2
textures/towns/brick2_3
textures/towns/brick3_1

[edit] Material names

Material names should mimic texture names where possible. For portability reasons there should be only forward (/) slashes.

If material is additional variation of a base material, or additional layer of it, it's name should begin as it's base material

Example:

textures/inn/window // base material
textures/inn/window_envmap // additional envmap layer

[edit] Texture themes

Texture themes is way to categorize textures in map editor. Only one texture theme can be inspected in texture browser at one time. Also it is convenient way to separate files into several folders.

Texture theme should be one word explaining what it will be (like crypt, mausoleum, inn etc.).

Examples:

crypt
mausoleum
dungeon
spiritforge
town

[edit] Model names

Model names can contain lowercase latin characters, numbers and underscore as spacer. Names should be sane, suffixes and numbers should be added only if model is part of some group.

Important: Some exporters like a 3D Studio Max ASE exporter always makes file extensions uppercase, should fix this before models get uploaded to repository

Examples:

// Correct
models/mapobjects/graveyard/stone1.md3
models/mapobjects/graveyard/stone2.md3
models/mapobjects/graveyard/stone3.md3
models/mapobjects/misc/bat1.md3
models/mapobjects/misc/bat2.md3
// Wrong
models/mapobjects/my models/barrel.md3
models/mapobjects/graveyard/stone4.MD3

[edit] Model themes

Like texture themes, model themes are subfolders in models/mapobjects/. Model theme name should be one word, explaining what models will be used for.

Examples:

crypt
dungeon
graveyard

[edit] Map names

Map name contains position of a map location in hierarchy:

  • World
    • Location
      • Sub-location (optional)

Name template:

w<worldnum>m<locationnum>-<location_name>-<sub_location_name>

If sub-location is grouped (there is several crypts, caves etc.) first one should not have 1 in the end.

Examples:

w1m1-cemetery
w1m2-pillars-crypt
w1m2-pillars-crypt2

Test levels are special case, they should be prefixed by test-. Test levels are not added to game release build.

[edit] Map props

All level props is saved to models/maps/<location_name> folders. Use model names convention to name them.

Example:

// Correct:
terrain.ase
// Wrong:
02.ase
terr01b.ASE



Back to index | Top of the page

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox