This is a guide to texturing, rigging, and exporting a mesh from any version of Max past 8 to Sins of a Solar Empire, as the stickied guide is incomplete, lacks info on 3DS, and is rife with grammar and spelling errors. I wrote this for myself and some of the modelers and other staff because I had to work through a lot of really dumb stuff nobody's covered (such as point origins) that frustrated the hell out of me for days, and realized you guys might get some use out of it.
I assume your model is at least UVmapped for the rigging section, if not skinned. To export from Max 9, you will need Sins Tool. The 2.0 version is buggy, so grab the 1.1 version here and put it into Max's /scripts/ directory. The Convertdata utility that comes with Forge Tools is recommended but not required.
update 2/11/12: You no longer have to use convertdata from the command line, but you can if you want. The recommended utility is now Sins Data Converter, which can be found here.
TEXTURING
FILE FORMAT:
Everything is in .dds. You can get the DDS plugin for Photoshop here.
EXPORT SETTINGS:
I export using the following settings in Photoshop:
DXT5 ARGB 8 bpp | interpolated alpha
choose GENERATE MIP MAPS in the mip map generation
Everything should be a power of two for mipmaps to work correctly. If you don't follow this rule, things will often have weird illumination.
MAP TYPES:
Diffuse map: regular skin, this has colors and stuff! this needs to be ARGB or at least RGB. Alpha channel lying on top of it in the same file is team color. Black is none, white is some.
Normal/Bump map: This is greyscale, so you don't need to mess with any other channels. Black is 'lower'/indented, and as you get closer to white you get 'higher'/extruded.
Data map: This is ARGB. Each channel controls a different effect. Altogether, they don't look like anything, but it's a convenient way to let the engine know what parts of the skin to apply post-processing to. The "channel" colors have nothing to do with red green or blue, they're just ways to separate each effect.
Red channel is the specular map. This must be greyscale, black is "none".
Green channel is lights. Intensity controls how bright stuff is.
Blue channel is reflective. This should be used sparingly and can be used for cockpits, metal bolts and other stuff with low intensity. The reason I say this should be used sparingly is it is almost like a mirror, and a well formed specular map will do a better job with light effects than painting this everywhere will.
And finally, the alpha channel on the data map controls bloom. For the most part anything illuminated to max with the green channel (engine halos, large light structures) probably should be given bloom.
RIGGING & EXPORTING
Prepping the model for export
The first thing you gotta do is open your model. To prepare your ship for Sins, you'll need to rotate it so that the front of the model points up. (click the mesh, then right click anywhere and hit Rotate). You'll also need to center the ship (do the same thing, but hit Move). The "cross" on each view shows where the origin is, and that point will be the "center" of the ship when exported. If you don't orient the model correctly, you will end up zooming into empty space in game.
Creating your points
After that's done, hit the Create button, then the Helpers button on the side panel on the right and click Dummy.
You can then drag your mouse out in any of the views to create a dummy box. This box defines where the given effect will start (a weapon muzzle, or exhaust, or what have you) - specifically, the pivot is the start point for the effect. You don't have to be too precise here, you can move it around later. Move, rotate, and scale the dummy until it goes where you want it to go. This scaling step is only for your own housekeeping - the box could be three times as large as the model, but keeping it small makes it easier to figure out where the pivot is, and therefore where the effect originates. When you're all done, move on to the next step.
You're probably going to need more than one point. To duplicate a dummy, select the dummy and hit ctrl-v to paste. Hit Copy and make sure the name is what you want (3DSMAX adds a number to the end by default). You can repeat this step for all the points (weapons, abilities, exhaust, etc).
Then move, rotate, and scale this one. You can repeat this step for all muzzles on the weapon.
Naming your points
In the name and color box, rename each dummy. Exhaust should be called 'Exhaust", ability hardpoints should be called "Ability". Weapons start at Weapon-0 and go up. A weapon with multiple muzzle points will have the same name. For example, let's say there's two muzzles on one weapon, so we'd call them both Weapon-0. If we had two weapons with three guns each, we'd do three Weapon-0s and three Weapon-1s. If you do more than one weapon, exhaust, abilities etc all at the same time, obviously name them differently.
You can speed this process up with lots of points by using the batch rename command. Select all the points you want for a certain name (all exhaust, for example), then go to Tools -> Rename Objects. In "Base Name", specify the name you want all the points to have, then hit Rename (not enter) and all those points will share the name you specified.
Orienting your points
This next part is pretty important. If it's skipped, weapon effects may not show up, and exhaust points will be sideways, backwards, etc. Two icons over from Create is the Hierarchy button. It looks like a box with three smaller boxes below it. Click this button, and hit Affect Pivot Only. Select one or more dummies and rotate them until the blue arrow is pointing the direction you want each dummy to fire. For example, rotate your Exhaust dummies until the blue arrow points behind the ship. The green arrow should also be pointing up relative to the blue one.
Linking your points
Now we're going to link the dummies to the model. If you don't do this, you won't get anything. Hit H to bring up the Hierarchy viewer, and select all your dummies (make sure they're named correctly there too). After that's done, all your dummies will be selected. Close the viewer and hit Select and Link. This button is right below the Tools and Group pulldowns on the main menu, and to the right of the rotating tools.
Click on one of the selected dummies and hold the mouse button, then drag it over the body of the mesh. The cursor will change when it's correct, and after releasing it all linked items will flash. If you mess up, ctrl-z, maybe use a different camera angle and try again.
Exporting
Now load Sinstool by clicking the hammer icon on the side panel, clicking Maxscript, then Run Script (not open script). Find Sins_Tool and double click it, then select it in the Utilities dropdown. After you do that, the maxtool stuff should be right below, scroll down if you need to using the mouse. Check all the boxes and hit Export Mesh.
Now that we have the mesh, we're good to go..almost. You can change materials in 3DS to get the skin correct, but it's not required and adds a lot of busywork. I'll detail both ways here.
Method #1
Open a command prompt (Start -> Run -> "cmd" -> enter), navigate to the directory where ConvertData is stored (cd *directory*, you can paste the directory in by right clicking and hitting paste), then use convertdata to convert the mesh from binary to text (convertdata mesh *source file* *destination filename* txt).
You now have a mesh in text: open it in Notepad or your favorite text editor to check it out.
update 2/11/12: you no longer have to use convertdata. instead, get the Sins Data Converter linked at the start, select your mesh file in the input box, a folder in the output box (or check In Place Conversion) select the version of Sins and you have a mesh ready to open in Notepad++.
From here, it's easy. Figure out the names of your skin files and replace the Black-da.dds lines under Material with the names of your textures, then save the file. Also notice your hardpoints have (hopefully!) been saved.
Method #2
Press M to load the Material Editor in 3DSMAX. Click the first Material slot (round ball).
In the pane, click the "+" on the Maps header to open it. Check the boxes next to "Diffuse", "Bump" and "Specular Level", then click the rectangular box on the right of Diffuse - this usually says "Map #1" or "Default".
The files pointed to here DON'T MATTER. The Sins exporter only uses the names of the materials, NOT the filenames. So when the dialog comes up to select a file, just hit Cancel. Then type in the name of your texture in the Name field at the top (it will say Map #1). For example, for your Diffuse channel, you'll type in "mymesh.dds".
Click the dropdown arrow to go back to the material and repeat this with the other two, except substituting the name of your bump map texture ("mymesh_b.dds") in the Bump dialog and your data map texture ("mymesh_d.dds") in the Specular Level dialog. Once this is done, drag your new material from the ball into the mesh, and export it as above.
update 2/11/12: this is different in newer versions of Max. The "ball" has been removed in favor of a new material editor, which uses slots. Drag a Standard material from the left side of the screen into the middle pane, then drag three Bitmap maps in the same way to the middle pane. Hit Cancel as above if asked for a filename, then right click the map to rename it, before hooking it up to the correct slot as above (Diffuse, Bump, and Specular Level).
Drag and drop the mesh into your /Mods/*modname*/Mesh folder, point the ship entity file to the mesh and you should be good to go!