Modelling guidelines: Difference between revisions

Jump to navigation Jump to search
no edit summary
(Out of draft state, add software tips)
No edit summary
Line 12: Line 12:
*Use different unique names for each of the Objects in a Model file. Even more so when the different parts need to be animated.
*Use different unique names for each of the Objects in a Model file. Even more so when the different parts need to be animated.
*Combine all different parts of the Model into one single Object/Mesh, with the exception of parts that need to be animated, or transparent parts.
*Combine all different parts of the Model into one single Object/Mesh, with the exception of parts that need to be animated, or transparent parts.
** Blender: Select some objects and press {{Key press|Ctrl|J}} to group them into one Object.
** '''Blender''': Select some objects and press {{Key press|Ctrl|J}} to join them into one Object. The new object origin/transform/orientation/name will be based on the ones of the last object selected.
*Make all faces of the objects single sided.
*Make all faces of the objects single sided.
*Split transparent parts into their own objects, and place at the end of the object list.
*Split transparent parts into their own objects, and place at the end of the object list.
** Blender: Go into Edit Mode, select the part of the object that you would like to split and press {{Key press|P}}.
** '''Blender''': Go into Edit Mode, select the part of the object that you would like to split and press {{Key press|P}}.
*The interior should be a separate Model. Having it separate enables delayed loading of such models in multiplayer/AI contexts. Such a model is specified as follows in the -set.xml file:
<syntaxhighlight lang="xml">
<model>
<usage>interior</usage> <!--make sure to have this tag-->
<path>Models/interior-model.xml</path>
</model>
</syntaxhighlight>
 


These are guidelines, not rules. You may need two sided surfaces, or use duplicate object names - but be aware that you are sub-optimising, and the results can be uncertain.


== Texturing guidelines ==
== Texturing guidelines ==
Line 25: Line 32:
*Prefer texture replacing animations to textranslate for models that spend large amounts of their time in one state (day/night animations).
*Prefer texture replacing animations to textranslate for models that spend large amounts of their time in one state (day/night animations).
*Avoid transparency like the plague, it kills frame rate like nothing else: remove the alpha channel from textures if they are non-transparent.
*Avoid transparency like the plague, it kills frame rate like nothing else: remove the alpha channel from textures if they are non-transparent.
** GIMP: Go to <tt>Layers > Transparency > Remove alpha layer</tt>.
** '''GIMP''': Go to <tt>Layers > Transparency > Remove alpha layer</tt>.
** Inkscape: Go to <tt>File > Document Properties</tt> and set the "Background" to a non transparent colour.
** '''Inkscape''': Go to <tt>File > Document Properties</tt> and set the "Background" to a non transparent colour (preferably black).
*Hive off transparent parts of textures into their own textures.
*Hive off transparent parts of textures into their own textures.
*Use power of two dimensions for textures (2<sup>n</sup>, e.g. 256x256, 512x1024). Do not worry if your image would get stretched in the texture, you can fix that with the mapping on the model.
*Use power of two dimensions for textures (2<sup>n</sup>, e.g. 256x256, 512x1024). Do not worry if your image would get stretched in the texture, you can fix that with the mapping on the model.
*Do not have textures with the image in one corner and the rest unused.
*Do not have textures with the image in one corner and the rest unused.
*Supported texture formats are: .png and .rgb.
*Recommended texture format is: '''.png'''. In general any texture format supported by OSG could be used, but be aware of varying cross-platform support for such formats, or of lossy compression.
<!--== Animation guidelines ==
*Keep the number of range animations to a minimum. Load the instruments in a submodel XML file, to avoid having one for each instrument. Testing one range animation is cheaper than 47.--> <!--commented out for now-->


== Animation guidelines ==
*Keep the number of range animations to a minimum. Load the instruments in a submodel XML file, to avoid having one for each instrument. Testing one range animation ought to be cheaper than 47.


[[Category:Modeling]]
[[Category:Modeling]]
422

edits

Navigation menu