3D Objects internals

From EECH Central
Revision as of 23:40, 26 July 2009 by Firebird (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Comment filed of Surface in Surface Editor of Modeler

There are several implicit rules used in the Lightwave Objects to reflect EE objects internals. For now all of them are connected with Surfaces which are the inavoidable attribute of all planes and lines the objects consist of. Those attributes are not reflected immediately in Modeler (for example, surface color does) but stored in human- (and converter-) readable form totally unundestandable by Modeler. Those attributes are saved in the Comment field of the Surface.

Attributes format

Comment field may be used (as usually expected) for human-readable notes. For exclusion of intersection of "usual" comments with specific attributes mentioning attributes must be written in the special form of "[whitespace or beginning of the comment]name=value[whitespace or end of the comment]". Though "value" may be missing for several attributes equal sign is always required. Also note that "value" may not include whitespaces.

List of attributes


Though some polygons lay in the same part of the same plane one of them should always overlap another sometimes. For example, the entire Red Star should be on plating of Hind although they share the same plane. To avoid Z-fighting a polygon with Red Star should be mark as detailed and thus its effective Z coordinate will always be 0.01 less (i.e. closer to the viewer) than the coincident polygon of the plating. This attribute requires no value.


Some of the new (totally unknown to the game) textures must behave itself as camo ones. It means for some GENERAL_CAMO.BMP file GENERAL_CAMO-W.bmp and GENERAL_CAMO-D.bmp files must be used according to the season selected. This attribute allows to specify that behaviour for the surface and the texture. This attribute requires no value. Note: every surface with this texture must have this attribute specified.


Some textures for some polygons of the same 3D object should be different for different game objects simultaneously. For example, each game object of Hokum must have its own registration number printed on plating. In terms of Enemy Engaged changing of textures ingame is called animation. Each animation consists of ordered set of textures and rules of their (probably sequential) change (such as framerate). The animations utilized in Enemy Engaged (their names, list of textures and rules) are loaded from data (.bin) files and are not stored in the executable (although it may look that way). There is no way to load another animation (yet). Look at the existing exported objects for determining of the behaviour of the different animations. The attribute value is the name of the animation.

The Exporter sets the first texture of the animation as the Surface Texture for the surface (for example, for numbers the first texture is a zero number) and adds this attribute to the Surface Comment. When LWO EEO Converter finds this attribute it ignores the Surface Texture selected for the Surface and uses the animation name supplied in the Surface Comment. Note, that that animation name must be known to the Enemy Engaged because no additional animation loading is available yet.


Surface Luminosity Texture may be changed ingame also. The description for texture_animation is suitable for this attribute but it influence Luminosity Texture.