-
Notifications
You must be signed in to change notification settings - Fork 67
Material Property Matrix
There are four over-all material-classes:
-
A standard textured material, e.g. with an albedo, optional normal/emissive, etc. Most attributes are legal!
-
An instance-friendly textured material. This is a standard textured material that does not use certain "instance-unfriendly" attributes. For example, instance-friendly textures cannot use ATTR_emissive_rgb or ATTR_no_cull. In other words, an instance-friendly textured material is more restricted than the standard one.
-
A panel-textured material sources its texture from the panel or a panel region.
-
A draped material is used for draped geometry, e.g. geometry that is cut up and applied to the ground. It has a somewhat disjoint set of legal properties compared to standard textured materials. For example, ATTR_emissive_rgb and ATTR_poly_os are both illegal on a draped material, but decals are legal.
This table shows what kinds of materials are legal for a given object being exported.
Export Type | Static Scenery | Instanced Static Scenery | Dynamic Scenery | Aircraft Object | Key Slot |
---|---|---|---|---|---|
Standard Textured | Yes | No | Yes | Yes | Object |
Instance-Textured | Yes | Yes | Yes | Yes | Object |
Panel Textured | No | No | No | Yes | Panel |
Draped | Yes | Yes | No | No | Draped |
Key points:
- Instanced scenery disallows the standard textured material class - only instance-textured materials are legal.
- Aircraft objects allow panel textured materials but -not- draped materials. (Draping is not allowed for aircraft and cannot be used to make a drop shadow!)
(Note: it is an intention of this design that the material class of a texture can be derived -from- the material without knowledge 'from above' about the type of export.)
This next chart lists the legality of various material properties for each class of materials. Note that the material class itself may or may not be legal for a given export -content- (e.g. the user is working on an airplane vs an airport).
Property | Standard Textured | Instance Textured | Draped | Panel Textured |
---|---|---|---|---|
Albedo Tex | Yes | Yes | Yes | Must Be Panel |
Albedo Clamping | No | No | Yes | No |
Lit Tex | Yes | Yes | Yes | Must Be Panel |
Lit Clamping | No | No | Yes | No |
Lit Level | Yes | No | No | No |
Normal Tex | Yes | Yes | Yes | No |
Normal Clamping | No | No | Yes | No |
Normal Bumpiness | No | No | Yes | No |
Normal UV Scaling | No | No | Yes | No |
Specular Tex | Yes | Yes | Yes | No |
Specular Ratio | Yes/Deprecated | Yes/Deprecated | Yes | Yes/Deprecated |
Panel Tex/Regions/Global-lit | No | No | No | Yes |
Draping | No | No | Required | No |
Blending/Alpha Cut | Yes | Yes | Yes | Yes |
Dithering | No | No | Yes | No |
Alpha Stripping | No | No | Yes | No |
Decals | No | No | Yes | No |
Hard/Deck | Yes | Yes | No | No |
No-Draw | Yes | Yes | No | Yes |
Camera Wall | Aircraft-Only | Aircraft-Only | No | Yes |
Polygon Offset | Yes | No | No | Yes |
Manipulation | Aircraft-Only | Aircraft-Only | No | Yes |
Two-sided | Yes/Deprecated | No | No | Yes/Deprecated |
Flat shaded | Yes/Deprecated | No | No | Yes/Deprecated |
Diffuse/Emissive RGB | Yes/Deprecated | No | No | Yes/Deprecated |
Legal properties are in bold face if they must match among all properties of that material class for a single object.
For example, every material of material-class panel must have the same panel region/global lit properties. Every material of material-class draped must have the same albedo texture.
By comparison, every material can have a different hard surface and deck property.
From this logic, any given object may have at most two albedos: either a texture and panel, or a texture + draped albedo.
Note also that for draped materials, every allowed material property must match between different user-created draped materials for a single object. (In other words, where-as aspects of the standard texture material can vary within an object, the draped material cannot.)
The following properties are assumed to be not on the materials:
- Instance Tinting
- Wet/dry requirements
- Tilting
- Slope Limits
- Layer groups (normal and draped)
- LOD (normal and draped)
- Slung Load Weight
- Object-wide shadow disable