Stannum

SOASE 3dsmax importer and exporter tool - Updated for Rebellion

SOASE 3dsmax importer and exporter tool - Updated for Rebellion

We don't need no stinkin' subtitle

New (beta) exporter!

-Support for Rebellion and maybe older expansions.

-Exports to the BIN format. Imports both BIN and TXT models.

-Much, much more improved mesh processing.

-'Tangent map problems' fix. This was an error with vertex normals that weren't being flipped when the model was.

TODO:

-Add model flipping on export so modeling in max is more natural.

-Import points too, so far its just importing the mesh.

-Stuff?


New version:
http://janvanderweg.com/SOASE/SOASE_Rebellion.zip

Installation:

Extract contents of the zip, except the example model, to: ../3dsmax/scripts/

Like with the old tool, run 'SinsOfASolarEmpire_Rebellion.ms' from the utilities tab and it should appear in the dropdown box.

Model setup:

Mesh as normal. Multi material works by applying max materials to the faces you want them on.
I haven't put in any y axis = up correction stuff so ships should be pointing upwards. (check the example file)
Instead of dummies for points you'll have to apply a skin modifier and use bones. See below for more info.

Material setup:

The new model format requires 5 textures per material:
    Diffuse map  
    Data (specular, self illumination) map
    Normal map
    Displacement map
    Teamcolor map

From what I've seen so far, the last two maps (displacement and teamcolor) aren't used so you can leave them blank. The tool uses the material map name, not the assigned bitmap for export. Here's a table to see which 3dsmax map is used for what:

        SOASE material map                                         3dsmax material map
        DiffuseTextureFileName                                    diffusemap
        SelfIlluminationTextureFileName                     specularmap
        NormalTextureFileName                                   bumpmap
        DisplacementTextureFileName                        displacementmap
        TeamColorTextureFileName                              filtermap

Point setup:

Instead of dummy objects the script now uses bones. Create the bones with the correct orientation and place them where you want. Name them as required by the game. Apply a skin modifier to the ship object and add all the bones to it.

A word on normal maps:

Since the gamemesh processor takes smoothing groups into account when generating vertex normals you can use smoothing groups. If you're using smoothing groups make sure the utility you're using to bake normals also supports them.

What is GameMesh?:

GameMesh is a max object preprocessor that calculates pretty much anything about models. It supports overly complex model setups, multiple materials, bone hierarchies for animated models, etc. It even takes smoothing groups into account!

 

 

 

 

 

 

OLD STUFF:

 

Not sure if many of you use 3dsmax but I started writing a maxscript tool that will export/import BIN/TXT soase .mesh files

Should work with most max versions since this is a maxscript tool, not a compiled one.

Current version: 2.0a

Download link:
http://janvanderweg.com/SOASE/SOASE_Maxtoolv2.0a.zip

WHATS NEW:

Lots!....
I rewrote the mesh splitting algorithm into a semi-modular meshsplitting maxscript file, splitmesh.ms
It should be a lot faster now and it supports more features such as:
-Smoothing group support
-Multitexturing support
-Much faster (I think)

Readme:
http://janvanderweg.com/SOASE/index.html

OLD INFO, still might be usefull:

Obligatory pic:
http://janvanderweg.com/SOASE/soase_pic.jpg

Installation:
Unzip the contents of the zip into your 3dsmax\scripts\ directory.

To run the script:
-Goto the utilities tab (hammer icon on the right)
-In the utilities rollout click on MAXscript
-Click on run script
-Find the SINS_Tool.mzp file and run it
-In the utility dropdown box select SOASE Maxtool
-Click on import/export

Note:
Soase uses an Y-up system. This means:
Max y = above -y = down
Max z = forward -z = back
Max x = left -x = right

Adding points:
-Use dummy objects for points, rotate them so they face in the direction you want.
-Link them to the main object. If you don't link them they will not be exported.

Materials:
-Diffuse texture uses the diffuse slot (really)
-Data texture uses the specularlevel slot
-Normal texture uses the bump slot
-Set the glossiness with the glossiness controller in the specular highlights area

Add a bitmap to each slot but don't point to an image file. Instead change the slot name to the filename:



Your final texture should look like this:

381,876 views 202 replies
Reply #51 Top
This is exactly the tool I was looking for! :D

I have a buttload of ships I made for Galactic Civilizations 2, but I never ended up going ahead with my mod. Was too ambitious anyway. But now I think that I may throw a few of em in Sins :)


Btw, the fact that you have import/export functionality is badass. Made myself a new background :)




-Stick
Reply #53 Top
I just have one request. Could you possibly link all the dummy objects to the ship mesh when you import a .mesh file?



-Stick
Reply #54 Top
hey Stannum,

I have been playing around with the exporter part some more, and Im having problems. When i export a mesh, it immediately mirrors the mesh ingame, so something that should be on the left side is actually on the right side. Dont know if it is just the model Im exporting, havent tried to export any others yet. Thought I would let you know about this little bug, and another, when i mirror the mesh in Max before I link the points to the mesh, and then export it, the ship does a whole flip faces thing.

EO
Reply #55 Top
As per stated above, resetting the Xform fixes the flipped faces from mirroring.
Reply #56 Top
thanks EvilleJedi, lol I need to pay more attention.
Reply #57 Top
i am very doubtful of this but is it possible to get an importer like this for blender?

its probably not as good as the others, but i enjoy using this 3d program.
Reply #58 Top
i guess this does not work with 64 bit? :(

edit:
never mind, was my fault.

however, the import function gives me an error.

invalid header, aborting.
Reply #59 Top
That invalid header I think might be from the file you are importing. At the moment this tool will import the binary form of mesh file, not the text form. The binary form is the models that go with the game.
Reply #61 Top
Superb, works perfectly in Max 2008 64b! :CONGRAT:

Keep up the good work mate as you've just made my life a whole lot easier (and everyone elses). I've just looked over the MOD tools and the game is so easy to MOD that I'm loving it. Going to start on a new MOD tonight so I'll keep you posted if anything doesn't work in this version of Max.
Reply #62 Top
I notice this file exports into the Binnay format. Is there any way to get it to export models as txt as i'd like to do alot of after conversion editing.
Reply #63 Top
Also to note im using max models that tend to suffer from holes unless I stop max from using the backface cull.

I do so but the exporter seems to ignore that and my model in sins has some nasty chunks missing from it as a consiquence.
Reply #64 Top
Well I made the model, linked the helpers and exported, but then when I go in game it crashes out so I must be doing something wrong. I take it I must have textures applied to it first? If so where do you place the textures?

edit: Well I added the textures directory to the MOD root and it assumingly worked when exporting and I had no errors, but it still crashes when loading a game. :\

Edit 2: nevermind I was being an idiot, I renamed it incorrectly.
Reply #65 Top
I'm having some kind of problem with models. The exporter seems to have some strange smoothing effects on my model, unless its the actual game engine doing this.




I tried to get the same angle from the screenshots from the game





As you can see, apart for some strange antialiasing problems (not clear on the pics), I also get distorted parts everywhere, as if vertex weren't all at their right place. Of course, it could be because of the handcrafted details instead of having them textured, but I suck at UV mapping. Any idea?
Reply #66 Top
how are you filling the holes? are you creating new faces between the points, or making new mesh parts?
Reply #67 Top
The ship is only one mesh, and details are cut, extruded and bevelled.
I will do some more tests with other models

Also, I would love to have a text version of the mesh instead of a binary file
otherwise, great script!
Reply #68 Top
Cool to see this exporter. :)

Is there any progress on adding multitexturing?
Reply #69 Top
max is incompetent at exporting smoothing groups properly on other formats (obj, 3ds), so I think it is a max issue, it may not be easy to decipher maxes smoothing groups into a proper bi-normal. If you set the smoothing to 0 it still comes out as if it was smoothed at an angle of 45.
Reply #70 Top
Hm. Now, while i belive everthing here is going completely over my head (Since i'm to lazy to bother understanding atm), I was just wondering if I export the meshes to 3dsmax, can I somehow make them useable in Sketchup? (I can't use max for crap) Though i find it unlikely that I could, I can hope, yes? Thanks.
Reply #71 Top
Alright I will see if I can understand this stuff and make something good

I got 3d Max 8. I have never put a model into a game but I have been learning Max. I know a bit about texturing too but I may need help once I get something ready to go.
Reply #72 Top
BTW guys if you want to get better at Max or just learn Maya and some other software check out Lynda.com. I have been using their training videos for a few months now. Its $25 a month for a subscription but they have some excellent video tutorials.

This is not a plug I was just letting you guys know that this source is out there. I've leaped ahead of my class in 3d Max due to this site!
Reply #73 Top
This tool is excellent - any word on multi-texture or multi-mesh support in upcoming versions? That seems to be all that this is missing, the rest of it works like a charm.
Reply #74 Top
Hi, im having the same problem that Eomega had which is this one:

I dont know if anyone else has played with this yet, but anytime I try to run the script it ends up with an error. here it is:
--Syntax error: at ),, expected ]-- In line: texture.v_diffuse=[1.0,1.0,1.0,1.0]-- In file: mzp.run in patckage C:\3dsmax\scrips\SINS_Tool.mzp


The script doesnt work with the latest version of 3ds max and I cant find a trustworthy site that has an older working version.

Right now im using Gmax which is a free version of 3ds max kinda like the XSI Mod tools, but it got discontinued around 2006, but you can still dowload it for free here:

http://www.turbosquid.com/gmax

The installation instructions for the script are very accurate with Gmax but its that syntax error that I cant get through.

Can you please see if you can fix it? It would be greatly appreciated.

Reply #75 Top
Hi, im having the same problem that Eomega had which is this one:I dont know if anyone else has played with this yet, but anytime I try to run the script it ends up with an error. here it is:--Syntax error: at ),, expected ]-- In line: texture.v_diffuse=[1.0,1.0,1.0,1.0]-- In file: mzp.run in patckage C:\3dsmax\scrips\SINS_Tool.mzpThe script doesnt work with the latest version of 3ds max and I cant find a trustworthy site that has an older working version.Right now im using Gmax which is a free version of 3ds max kinda like the XSI Mod tools, but it got discontinued around 2006, but you can still dowload it for free here:http://www.turbosquid.com/gmaxThe installation instructions for the script are very accurate with Gmax but its that syntax error that I cant get through.Can you please see if you can fix it? It would be greatly appreciated.


I think that the last version of Gmax was made around the same time as Max 5, and that is why you are getting that error like I did. I have since upgraded to max 7 and the tool is working perfectly. I have already gotten 2 meshes in successfully and more to come.

My suggestion would be to try and find a working copy of Max 7.

EO