Jump to content
Sign in to follow this  
soul_assassin

3Dsmax ArmA2 modding toolset

Recommended Posts

**** UPDATED 24-10-09 ****

Let me fill you in on something I've been cooking up for a little while now. This is a toolset that has been in my head now for a while that is designed to make the life of any arma modeler that uses 3dsmax easier. It is by no means complete but I can tell you already happy with the results that i am getting. The reason why I am posting about it is because I know that there a bunch of ppl here that do use 3dsmax and I would like anyone willing to contribute ideas on this toolset, e.g. features, techniques and whatever.

Outline

The toolset consists of a great deal of interconnected scripts to help do the majority of the modding work in 3dsmax and not O2, like basic selection naming, model.cfg generation, rvmat file generation for supershaders and glass, preview in the 3dsmax viewport, setting up bone hierarchy, managing LODs and exporting all this madness into a fully functioning p3d file.

plugin.jpg

This is the main interface of the toolset.:

FEATURES

1. PROJECT SETUP

This module allows you to prep everything before you start. Generate some project folders. Create an accurate blueprint crossection. Set up a 3 light system for better preview with materials in the viewport and finally to quickly make sure that the scene you are working in is indeed set into metric system for 1:1 export to O2.

2. TEXTURING

In here you can quickly and easily bake Ambient Occlusion (and also a special variation of them for Super Shaders called _AS maps) as well as diffuse color maps. With a few clicks tweak the size and quality and automatically preview the results straight away in the viewport.

3. NAMED SELECTIONS

This module allows you to quickly name your model parts. The whole system works on reuse of what I called Selection Name Sets (SNS). These are special files (more on these later) which contain a list of selection names (e.g. otochlaven) and their normal descriptions (i.e. Gun). Of course with ArmA the use of standardized Czech names is not required anymore so the SNS can contain any desired names and meanings.

The interface on initialization checks the special folder for these sets and loads them in. This way I can have separate sets for e.g. Fixed wing aircraft, Tanks, Cars all saved separately and accessible at all times. I pick the required set for the particular model, chose the part name, if required add prefix or postfix characters, preview the name and if satisfied apply it to the selected objects. Of course the part name can also be custom text entirely, and not from the name set.

There is also an option of sequenced naming. For example I choose prefix l_, part name "wheel" and check off "Sequence". Then select the wheels on the left side of the vehicle in the order of the sequence. Hit apply and the wheels are properly named l_wheel01, l_wheel02 etc.

When you import the model into O2 the selection names will be carried through.

The selection name sets are generated through an interface built into the toolbox:

toolset2.jpg

here you can load/save sets, edit them by adding/removing or editing entries.

The only one limitation of 3dsmax is that the names only apply to whole object (or max nodes) and not verticies like in O2. Thus this does not provide a total solution.

3. LODS

A system allowing you to manage the LODs of the model. Linked to the layering system of max. Create new LODs with ArmA2 preset names, edit them, duplicate them and isolate lods by double-clicking on their names.

4. MEMORY LOD

In here you can set up the backbone of the animations. Create points, manage them and use them to create axis for the animated parts. This will allow you to preview rotations in the viewport. Points are automatically placed into a Memory LOD.

4. HIERARCHY AND ANIMATIONS

This is the beginning of the model.cfg module which will allow to rig and check the model in 3dsmax. By applying the parent-child linking directly in the viewport you can setup the hierarchy and preliminary test out the animations on the model. Later this hierarchy will be used to generate the cfgSkeletons part of model.cfg.

It also allows for quick overview of the model part and double-clicking names selects them in the viewport.

4.1 MODEL.CFG EXPORTER

This little handy interface lets you quickly generate model.cfg files by incorporating the hierarchy and memory point lists. Complete with Inheritance. Also the ability to open previously generated files and add to them.

5. EXPORTING

Here you have two options: export some selected geometry as a 3ds file or go for the grand slam and use the FIRST EVER PUBLIC EXPORTER OF P3D FILES FROM MAX :):). It takes into account: the lod system, selection names, smoothing groups ( no SG applied = sharp edges, any SG applied = smooth edges ), vertex normals, material and texture assignments, UV maps. All in all a fully functional p3d. So upon first opening O2 you will have: assigned textures and materials, working animations, correct LODs etc etc.

6. RVMAT GENERATOR

In the toolbox you will find 3 specially designed directx HLSL shaders (super shader, glass, stencil). They have a dual purpose: to allow a simple preview of materials in the viewport of max (with normal, spec and ambient maps) and they also generate rvmat files with proper texture assignments upon p3d export.

TODO: RTM MODULE

For easy creation and export of soldier animations.

Thats about it for now. Feel free to comment on the content as described above but what I am really looking for is a brainstorm session of what else could be included :)

DOWNLOAD LATEST VERSION: http://www.sparrowstudio.net/armavdv/toolbox/ArmAToolBox_1.1.rar

MIRROR FALSHPOINT.RU: http://flashpoint.ru/forum/downloads.php?do=file&id=1038

MIRROR ARMAHOLIC: http://www.armaholic.com/page.php?id=6891

PATCH 1 for 1.1: http://sparrowstudio.net/armavdv/toolbox/ArmAToolBox_1.1_patch1.rar

INSTALL: http://www.sparrowstudio.net/armavdv/toolbox/install.html

READ DETAILED DOCUMENTATION WITH VIDEOS: http://www.sparrowstudio.net/armavdv/toolbox/docu.html

HERE ARE SOME TUTORIALS:

1. Tut 1 - Setup

Q6L4Bbe1w48

2. Tut 2 - Texture

6KOawrKXrzs

3. Tut 3 - Selection Names

Ln7jnOYz4Eo

4. Tut 4 - LODs

rxXEXARedl4

5. Tut 5 - Memory LODs

zd_i2TFF-so

6. Tut 6 - Materials

0Q_zzniF8tQ

dyQP6y3r8SE

7. Tut 7 - Model.cfg

EjjI0Q797h0

8. Tut 8 - Exporting

5WhxBUxNENI

FAQ

1. When I run the script I instantly get an error message about a button.

The toolbox only work with 3dsmax versions 9 or higher. No support for earlier versions. Do not ask if a downgraded version is being developed. It's not because of the sheer amount of stuff that would need to be taken out, it wouldn't be a toolbox anymore.

2. When I export to p3d the models in O2 are not the right size

Work in meters, with the right dimensions.

3. When I export to p3d I get an error: Mesh operation on a Non-mesh object: Blabla"

Make sure that all geometry that you want to export in converted to Editable Poly. Also make sure that there is no non-geometry objects (cameras, lights etc.) in the LODs that you want to export.

Restart the toolbox after fixing. Next version will include a warning.

4. It exports fine but when I try to load it in O2 it says Unable to load file.

Make sure that your geometry is consistent of only triangles and quads. N-sided polygons are not supported by O2. Check things like cylinder tops etc. Better warning will be built in in next version.

5. When I check off Save Materials or Save Texture and export I get an error in max and the export is aborted.

When you use this option make sure that ALL geometry that you are trying to export has at least one of the shaders applied as stated in the video. Silly bug, will be fixed. Meanwhile if you need to export untextured stuff just dont check off the boxes.

Any new suggestions are welcome!

Edited by Soul_Assassin

Share this post


Link to post
Share on other sites

i was planning to work on it abit this coming week and include some more thingies. Hopefully by then I can include some more content and have the first public test.

Share this post


Link to post
Share on other sites

I am very happy to see this, I have modeled in max for a very long time, but have no O2 exp

Share this post


Link to post
Share on other sites

Looking very good SA. Thanks for your excellent contribs! :bounce3:

Share this post


Link to post
Share on other sites

Thnx for the good responses. Hopefully this will help alot of people. I will be posting demonstration videos soon too.

Share this post


Link to post
Share on other sites

YES!

Also, what about scale? I really sucked at syncinc the O2 scale and max scale.

Share this post


Link to post
Share on other sites

Nice work, but what about texture is there going to be module that will convert .tga or .png textures applied in 3d max into .paa?

Share this post


Link to post
Share on other sites

I might support for .paa textures but as far as conversion goes I do not think so.

Share this post


Link to post
Share on other sites

It should theoretically work across a range of the latest versions. I will try to make 9 the earliest version.

Share this post


Link to post
Share on other sites

i dont use 3dmax but this is Just Brilliant :)

Keep up the good work!!

makes me wanna do something like this for cinema4d.

with the python plugin it should be a walk in the park :whistle:

Share this post


Link to post
Share on other sites

A screen of the semi operational model.cfg generator:

cfgj.jpg

As you can see it gives speed advantage due to class and skeleton inheritance re usability. You can set up your bone hierarchy directly in max by linking the parts in parent-child manner and then use the hierarchy to generate the bone list. Also double clicking on one bone in the hierarchy makes transfers the bone name to the animation property so you dont have to retype the selection name.

Share this post


Link to post
Share on other sites

Wow Soul Assassin!

I don’t know anything about modeling in ArmA atm, but I do use 3dsMax, and this tool looks very…very cool!

I can’t even imagine how much work goes into something like this, but I’m sure it’s not a walk in the park!

Thank you so much for your efforts. I can’t wait to download this! :bounce3:

Share this post


Link to post
Share on other sites

Fantastic work, this is exactly what the community is going to come to rely on for 3DS Max modelling/export toolset. Brilliant!

Share this post


Link to post
Share on other sites

like the rest.. great job! this is something very much needed.

will there be a feature to take 3d max animations and convert them to a .rtm format?

Share this post


Link to post
Share on other sites

This is something Ive been thinking of as well ever since i made some animations using the old rtm tool. I will defenately give it a go once more research is done in the arma2 rtms.

Share this post


Link to post
Share on other sites

Afaik teacup wants to do one again but the new rtm format needs to be understood before.

Share this post


Link to post
Share on other sites

Teacup made the maya plugin for arma1 not so long ago. The plugin for max requires alot of work though. You need the armaa skeleton rigged to a biped and an algorythm that writes the position matrices of the bones to the rtm format

Share this post


Link to post
Share on other sites

Ah that was for maya. Sorry mixed that up. The A2 rtm doesnt use transformation matrices anymore btw. Seems to be 7 floats per bone now.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×