Modelling guidelines: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
(Out of draft state, add software tips)
Line 1: Line 1:
{{draft}}
When modelling an aircraft, building or any other 3D model, you are encouraged to follow the '''modelling guidelines''' outlined in this article.


I started this page with the intention of creating some sort of guidelines for our models. This should eventualy replace some of the texts in our [[Portal:Developer/3D_Modelers|3d modelers portal]].
Feel free to add/modify. (''please leave a comment in the [[Talk:Modelling guidelines|talk page]] for radical modifications'').
Feel free to add/modify. (''please leave a comment in the talk page for radical modifications'').


== Definitions ==
== Definitions ==
*Model = the file (''need some fancy definition here'')
*Model = the file.
*Object/Mesh = part of the Model file. The Model can contain several Objects.
*Object/Mesh = part of the Model file. The Model can contain several Objects.
*Texture = image file (.rgb, .png, .dds) (''need some fancy definition here'')
*Texture = image file (.rgb, .png).


== Modelling guidelines ==
== Modelling guidelines ==
*Vertices are free up to a point - use as many as you need
*Vertices are free up to a point - use as many as you need.
*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.
*Make all faces of the objects single sided (method varies with modelling software used, examples for each of the major ones: Blender, Ac3d, Sketchup)
** Blender: Select some objects and press {{Key press|Ctrl|J}} to group them into one Object.
*Split transparent parts into their own objects, and place at the end of the object list
*Make all faces of the objects single sided.
*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}}.


These are guidelines, not rules. You may need 2 sided surfaces, or use duplicate object names - but be aware that you are sub-optimising, and the results can be uncertain.  
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 ==
*Combine as many parts of a single Model to a single texture as you can - the maximum texture size is 4096 x 4096.
*Combine as many parts of a single Model to a single texture as you can - the maximum texture size is 4096 x 4096 pixels.
*Don't use different parts of a single texture for different models. Split the texture into smaller parts then.
*Do not use different parts of a single texture for different models. Split the texture into smaller parts then.
*If using the same texture on multiple models, use a single file, don't make different copies.
*If using the same texture on multiple models, use a single file, do not make different copies.
*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>.
** Inkscape: Go to <tt>File > Document Properties</tt> and set the "Background" to a non transparent colour.
*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. Don't 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.
*Don't 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 : .dds , .png, .rgb.
*Supported texture formats are: .png and .rgb.


== Animation guidelines ==
== Animation guidelines ==
*''<AndersG> The hierarchy of range animation is also an issue. It is common to have one for each instrument where one could as well has used one for all instruments (by loading the instruments in a submodel XML file). Testing one range animation ought to be cheaper than 47.''
*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]]

Revision as of 14:02, 21 August 2014

When modelling an aircraft, building or any other 3D model, you are encouraged to follow the modelling guidelines outlined in this article.

Feel free to add/modify. (please leave a comment in the talk page for radical modifications).

Definitions

  • Model = the file.
  • Object/Mesh = part of the Model file. The Model can contain several Objects.
  • Texture = image file (.rgb, .png).

Modelling guidelines

  • Vertices are free up to a point - use as many as you need.
  • 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.
    • Blender: Select some objects and press Ctrl+J to group them into one Object.
  • Make all faces of the objects single sided.
  • 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 P.

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

  • Combine as many parts of a single Model to a single texture as you can - the maximum texture size is 4096 x 4096 pixels.
  • Do not use different parts of a single texture for different models. Split the texture into smaller parts then.
  • If using the same texture on multiple models, use a single file, do not make different copies.
  • 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.
    • GIMP: Go to Layers > Transparency > Remove alpha layer.
    • Inkscape: Go to File > Document Properties and set the "Background" to a non transparent colour.
  • Hive off transparent parts of textures into their own textures.
  • Use power of two dimensions for textures (2n, 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.
  • Supported texture formats are: .png and .rgb.

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.