• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

MCX MCX - possible to save a "MCX project"?

Messages
931
Country
ca-ontario
So - Having a LOT of FSX/P3Dx.x 3D assets created in 3DS MAX 8 (compatible with older SDKs), and still reluctant to plunge and purchase the latest 3DS MAX upgrade, I am converting them into MSFS format using MCX. My current workflow is:
  1. Edit MAX 3D geometry/materials in 3DS MAX 8
  2. Export them to FSX/P3D MDL
  3. Import MDL into MCX
  4. In MCX Material pane, convert material from FSX/P3D to MSFS
  5. Add MSFS material specific properties (for example, PBR properties or MSFS specific texture slots) that weren't mapped from FSX material
  6. Export object to MSFS and check out the results
  7. Re-iterate to step 1 to tweak
This works OK, but every time I make a change, I have to re-enter properties in step 5. Is there a way to save a MCX "project" that retains the MSFS material changes I entered in step 5 so that I don't have to re-do all the MSFS material property entries? It would be nice if some kind of an "MCX project" existed, where once created, and if you import MDL, the MSFS material settings would be retained. Also, is there a better way to do this? (with respect to my workflow)
 
Hi Misho,

At the moment there is no way to save your workflow. I also find it hard to see how that could be implemented, because when the MDL is read again how do you know which material from the project belongs to which part.

The closest you can get at the moment is to save your material settings as a material template. Then you can apply that template again on import of the MDL. Then you would "only" have to apply the template for each material. Might save a few clicks.
 
Hi Misho,

At the moment there is no way to save your workflow. I also find it hard to see how that could be implemented, because when the MDL is read again how do you know which material from the project belongs to which part.

The closest you can get at the moment is to save your material settings as a material template. Then you can apply that template again on import of the MDL. Then you would "only" have to apply the template for each material. Might save a few clicks.
Hi Arno!

re: Saving - would it be difficult? Does it matter what material belongs to what part? The way you have it now, only materials are listed, and named, from what it seems like to me, by their diffuse texture, OR, if there is no texture, by their solid "Color" hex name. And, when I switch to MSFS material, that nomenclature is retained. I don't see any linkages to parts.

So - when project is saved, all that needs to be done is to write out the same material list (with their naming convention) into the "project" file, with all the FSX and MSFS settings, and upon loading the new MDL, push those settings in the "project" file onto the loaded MDL. There would probably be some checking necessary, if the new MDL's FSX material changed, and probably prompt user which one to use, saved or new.

That is what I am doing "manually" right now... reloading MDL and re-entering the same values I had before. Why can't those values be saved and read in again? Also, there is no material-part matching as far as I can tell, unless there is something going on in the background of which I am not aware.
 
Hi,

Ah, OK, I thought you also wanted to save the rest of the object, but your idea is to only save the materials.

In the editor they are shown by:
  1. Material name (if present in the format, for MDL files that is not the case)
  2. Diffuse texture
  3. Diffuse color (hex coded)
But you can have two materials with the same diffuse texture and some other specific attributes that are different. These will show with the same name in the lsit.

The list is generated by going over all scenegraph nodes in the object and checking which material the node has (only model parts have materials). So when I would load materials from file, I would somehow have to assign them to the model parts again and I am not sure how to do that.
 
Hi Arno!

Right - that's what I had in mind - a "project" would save anything that is editable/changeable in MCX. I guess, materials first (because I was focused on that) but it could eventually include anything else that is editable but lost if user needs to tweak MDL and re-import it in MCX.

I am obviously not too familiar with MDL file structure, but I am assuming that the scenegraph nodes are saved and read in the same order, meaning, each time MDL file is exported from MAX, the nodes are always in the same order (If the user adds an object, it would be added at the end of the structure).

If that is true, couldn't you save the node materials in the same order, and upon re-loading, assign materials to the nodes in the same order? If there are same materials assigned to multiple nodes, you could implement some kind of an indexing scheme to indicate all the nodes this material belongs to. Also, if there are different materials using the same texture, you could possibly add indexing to the texture names used for material labels (so, MCX materials would be named texture_1_T (1), texture_1_T (2), etc...)

Of course, I am making a lot of assumptions here, so feel free to shut me down ;)
 
Of course you can save the materials as Templates, and just apply the relevant Template to each material as necessary. That's pretty quick.
 
Of course you can save the materials as Templates, and just apply the relevant Template to each material as necessary. That's pretty quick.
I don't think so. I would still have to re-apply all the specific texture names to each of the materials. Unless I have a template for each texture... which is then getting a bit laborious.
 
I don't know how many materials your object have, but making a template per material is relatively easy as Tom said. If you apply it again all the textures and other attributes are set for you.

The hierarchy in MCX is not a exact copy of the mdl hierarchy. So I don't think just saving the textures would work for any object. For a simple object it might work, but not for complex ones with animations and such.
 
Ok, sounds good. I played around with the templates, and they work very well. I thought they would overwrite the texture names but I'm happy to see they are retained. I can even multi-select the materials and apply a template to the selection!

However, I understand that at some point, if I want to streamline my workflow, I really need to plunge and get myself the newest 3DS MAX.

Thanks!
 
The theory is similar to how FSDSXTweak used to work, it would basically store a list of the material names along with your chosen attributes and then apply the custom attributes when you process the mdl. It stored the material names in txt files. You click a button to apply that txt file attributes by material name to the materials in the mdl assuming the material names haven't changed.
 
Back
Top