Armada SOD 3DsMax Exporter Armada SOD 3DsMax Exporter

(5 votes)
Unknown / Anonymous, 2003-05-22

This makes it so that your 3dsMax can export .SOD files.

Terminology:
a model == one 3ds max file.
a mesh == one 3ds object. Any 3ds object that is "convertible" to a mesh will be exported as a mesh.
This means you can generally use any of the higher level primitives in max and export them directly.
You don't _have_ to convert them to mesh yourself.


Overall structure:

For every mesh, ST3D needs to use a texture, a texture material, and one or more lighting materials.

The texture is used for rendering the diffuse and ambient lighting components.

Only one texture can be specified per mesh; if more than one is specified (via a compound material, for example)
ST3D will produce a warning.

The texture material determines whether and how alpha blending will be used. By default, if the texture for a mesh
has an alpha channel, a standard alpha blending texture material will be used. Control nodes can be used to
override this choice, however, and allow special effects like additive rendering.

The lighting material determines the lighting model that will be used and the color and intensity of
diffuse, ambient and specular (if applicable) light. This information is obtained from the 3ds material.
Lighting materials are shared across models, and their name is also obtained from the 3ds material,
so 3ds materials need to be given unique ids.


Gotchas:

Materials need to have unique names across all models.
Meshes should not be given special node names; otherwise they will not be exported. The reserved node names are
any that begin "s_", "c_" "e_", or "hp". Also "damage", "crew", "engines", "life", "sensors", "shields",
"target", and "borg" are reserved for the damage hierarchy.
Hardpoints _must_ begin with the characters "hp", or they won't be exported properly.


Sprites:

sprites are nodes named s_(spriteid)_(nodeid)
(spriteid) is one of the spriteids from one of the sprite files in \Armada2\build\sprites\*.spr
nodeid is a unique identifier for the node (I'm not sure this is actually necessary in Max).


Particle emitters:

emitters are nodes named e_(emitterid)_(nodeid)
(emitterid) is one of the id's from the file \Aramda2\build\sprites\emitter.spr,
the lines that begin @emitter (emitterid),
e.g. @emitter plasmalrg
Thus, if you place a node named e_plasmalrg, a large plasma emitter
will be placed at that 3d location.
If you put that node in the damage hierarchy, it will only be visible
when the specified condition is true


Hardpoints:

If you look in the .odf file for you ship, you will see a list of hardpoints
associated with each system (sensors, weapons, etc). These will be used by the
game to determine where weapons fire from and what other ships fire at.
All hardpoints must begin with the characters "hp", this includes hardpoints that specify
the location of new geometry, like the research station pod locations which were
previously named "pod{n}" and should now be named "hp_pod_{n}" or something similar.


Damage:

For visual damage effects you need a seperate node hierarchy starting with the root
named "damage". Below that you need the following nodes:
"crew" // applied when crew reduced to 1/3 max
"engines" // applied when engines are disabled
"life" // applied when life support disabled
"sensors" // applied when sensors disabled
"shields" // applied when shield generators disabled
"target" // applied ?
"borg" // applied when ship is assimilated by the borg

Command Nodes:
Command nodes are special nodes the modify the export behavior of their parent mesh. The are any node whose name
begins "c_". Specifically, they are:
"c_tm_[name]"
Use the texture material [name].

"c_anim_[identifier]_[playback_offset]_nn"
Texture animation. @TODO: figure out how this actually works...

"c_borg_[texture]"
specify a borg assimilation texture for the parent node.

Version    Author  Unknown / Anonymous  Website   
Downloads  1,350  Size  124.83 KB  Created  2003-05-22 

Download

Commenting is currently disabled.