It's very important to name correctly, and in an intuitive way the objects in the 3D scene, so when we see them in a list, we can recognize them just looking at their name. When working in the engine, you (or the proggrammer that works with you, if you're an artist and only care about the 3D art) will see the objects and everything only with text, so having the names correctly arranged will help a lot.
Also, some of the features and functions in the Engine use naming conventions in order to let that specific objects be recognized by the engine in a certain way. Here we'll see some advices on how to organize correctly your scene, and the special naming conventions for the specific engine features.
It's always important to have your scene organized, so here you have some suggestions that you can, of course, adapt to your workflow, to keep the names organized:
- It's recommended not to use spaces, better use underscores.
- Use of prefixes that describe the type of object, followed by an underscore, and the object's name. This way, when displayed in a list, all objects would be shown in alphabetical order, so all meshes together, all bones together, all lights together… Example: mesh_rock.
- If names became very big, you can abreviate, and use “m” instead of “mesh”. Example: m_rock
- When you have several objects into the scene, include the name of the object after the object's type and before the specific part's name. Example: mesh_car01_wheel.
- If you're working with a character, for example, usually it will have the same object for the left and right parts of the body. You can use abreviations to define the side to which each object belongs, like l for left and r for right. Example: mesh_character01_hand_r (so just looking at the name, we now that we're talking about the right hand model of the character01).
- If you have a chain of objects or bones, like a finger or a tail, you can name all of them the same, with a number at the end. Example: bone_character01_tail_01, bone_character01_tail_02, and so on…
- Ultimately, when naming objects, use everything that helps you identify that object just looking at its name.
As mentioned before, some features in the engine need an specific naming in the 3D scene's objects so the engine can recognize them. Some of them are controllers and billboards. This naming conventions are based in a specific prefix, and the name of the given object after that prefix. Remember to always add an underscore after the prefix.
Controllers are the bones or structures that control the scene. As artists, in the 3D scene, we have the ability to decide which of the objects the programmer in the engine will be able to transform. This way we prevent them to move objects that should be fixed, or can cause problems. So every object that we want to be transformed into the engine, will follow this naming convention:
Using this convention, once in the engine, the user can call the function to get all the controllers (INSERT FUNCTION HERE) to know what can be transformed.
A billboard is an object, usually a plane, that it's always facing the camera. Can be used for a lot of things: lens flares, always visible icons not affected by the perspective, pois, smoke and fog effects, labels, sprites…
We can use billboards in the engine by adding a prefix to the name: