• 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.

Modelling Toolset!

Messages
286
Country
us-newyork
Merry Christmas, Happy Holidays, and Happy New Year everybody! :)

(I was actually hoping to share this right before Christmas, but time gets away from me sometimes...)

Here is a sample of one of the software projects I have been working on during the past few months. I call it MDLMagic. Please see attached screenshot. It is basically a tool for manipulating FS Models in every conceivable way. This started as an in-house project a while back, used for swapping between different modelling file formats and poking around with materials and animations in a user-friendly way. I recently decided to revive it with a more modern user interface and integrating a lot of new code into it to allow it to do more. I have reworked a lot of my code into COM components to allow them to easily be reused, and have ditched my old, simplistic MFC user interface into a much more pleasant to use (and write!) Windows Forms based interface.

What has been accomplished so far:
*Loads and saves FSX MDL, XML, and .X, .3ds, and (partial) FBX
*Can extract models from a BGL
*Render models in 2D CAD-View and 3D, see changes in real time
*Make simple, direct changes to the geometry and materials
*Generate LODs
*Move whole parts around and edit parent/child relations
*Visualize Attached Objects and Scenegraph

What will be accomplished soon:
*Finish work on the new user interface
*(re)implement animation support
*Extensive UI customization options and more user-friendly options
*More import and export options, namely MayaAscii (this is originally what the tool was written for, but I am reworking the code)
*Export to a maxscript (.ms) file that allows loading in 3ds Max /gmax. This will open all sorts of interoperability possibilities for decompiling mdls and exchanging information between gmax and 3ds max
*Model and Mesh optimization using D3DX
*Other editing operations

Where this is headed:

I would love to take this even further and make a full editor (ala FSDS) out of it, and this is totally feasible, I am only limited by my time. I will release a free version with basic capabilities and a payware version that allows more features (not quite sure which yet, namely the maxscript Max loader capabilities). If I can actually make just a little bit of money off of this to support myself and justify the time spent on it I would gladly look at implementing more expansive features. I also eventually want to at least partially release some of the source code to it.

I will happily provide more info soon and will answer any questions you have. I try to be realistic and I'm not one of those guys that tries to cover things in shroud of mystery. So ask away! :) I am thinking I will be able to have a beta preview release ready for public consumption in about a month.

screen.png
 
I'm excited! But please don't make it behave like FSDS. I hear accomplishing things in it is horribly slow...doing the same things in 3ds or gmax is much quicker, from what I understand.
 
Hot dang! That's might nice looking! :eek:

Why thank you :) Still have a lot of work ahead!

I'm excited! But please don't make it behave like FSDS. I hear accomplishing things in it is horribly slow...doing the same things in 3ds or gmax is much quicker, from what I understand.

Well, any CAD-like support would be added in the distant future. For now the primary goal is getting all of the model conversion and parameter editing functions completed. Should I choose to develop it further any CAD like capabilities would be designed to be extremely user friendly (which was the goal of FSDS). I would like to think I can do better, but who knows. I can't even come close to replicating the functionality of 'max, it is a massive program that has been under development by a large team of experts for years.
 
This looks cool. So for us people who have basic understanding of modeling but have never applied it to creating FS objects can you talk more about where this app fits in with the other available tools out there? (you mention FSDS briefly but that's it) Is it meant to replace any? Supplement any? Do some things others can't? (and any combination thereof)

Thanks, keep up the good work. Tools rock!!
 
This looks cool. So for us people who have basic understanding of modeling but have never applied it to creating FS objects can you talk more about where this app fits in with the other available tools out there? (you mention FSDS briefly but that's it) Is it meant to replace any? Supplement any? Do some things others can't? (and any combination thereof)

Good question! When I originally wrote this tool it was just for file format conversion. We were doing our design work in Maya and I wrote this tool to allow us to compile FSX models from Maya files. Originally it read in a Maya file, extracted the geometry, animations, and materials, then allowed us to poke around with it and export it as a .X to be compiled for FS. I started poking around with the MDL format and before long it became a tool that could convert between a handful of different formats.

So for now it is most similar to ModelConverterX, just aiming to be a bit more full featured. As far as creating a model from scratch, not yet. I would love to someday add features for geometry creation but that is a long way down the road. For now the aim of this tool is to act as an interface to the Flight Simulator MDL format, allowing one to create the model in whatever 3d modelling format they want, edit it in MDLMagic to support FS features, then compile it to a .MDL. It also allows one to extract as much data as possible from a .MDL file.
 
Any tool that makes the life of us (would be) developers easier are heartily welcome :)
Do you plan a Gmax/3dsMax-> FSDS format conversion (it lacks in MCX) ?

Congratulations so far, and keep up the good work :)
 
Any tool that makes the life of us (would be) developers easier are heartily welcome :)
Do you plan a Gmax/3dsMax-> FSDS format conversion (it lacks in MCX) ?

Congratulations so far, and keep up the good work :)

Thanks! That's what I aim for :)

I would love to add full FSDS support but it depends on if Abacus is cooperative with releasing more information about the program. I do have a basic .fsc writer implemented but it is far from being complete. It can just handle raw geometry and that's about it. The fsc file format is well documented for older versions of FSDS (the author released an sdk), however it hasn't been updated in many years so there are some significant changes that I can't handle yet. My primary goal right now is to finish 3ds/gMax interoperability, however once that is done I'll give FSDS a closer look.

However, going from FSDS->3ds Max is easy, since it can just read in an exported .X File and convert it to a MaxScript that can be loaded into max.
 
That's a nice looking tool!
 
Don't understand many of the tech terms used, but it looks very promising indeed, especially things like CAD view etc.

What you might consider it you haven't already done so is to include a cfg tweaker a la ACM, for setting lights and contact points etc. As a matter of fact, the contact points setup could probably be automated anyway.

Also a closeup viewing of a selection of objects and their animation.

As for import/export, what is urgently needed is something that is better than our current gmax to obj export. There are many Gmax models around that would benefit from being revised in Max.

I'd be happy to do beta testing if some dummy observations are needed.
 
I admire you creating a tool like this! and now, with MS Flight being a flop IMHO, a tool like this will be excellent!
 
I admire you creating a tool like this! and now, with MS Flight being a flop IMHO, a tool like this will be excellent!

Thanks for the kind words (and couldn't agree more about Flight, although I'm still trying to stay optimistic).

I am making good progress on the importers and exporters so far, hopefully not too much longer until I can let you guys try a preview release. Now I need to focus on the user interface/usability side of things.

As a side note, for the past few weeks I have been working on optimizing my xtomdl compiler since I am integrating the whole thing into the code base for this tool. As I stated in that thread, my major hindrance to updating my mdl compiler was fixing the crashtree code. I've been working on this for a while and have finally completed it. Instead of hacking it together to work with Microsoft's crashtree generator I implemented my own. Because of this there is a much finer level of control of the generated crashtree, and mine is much more accurate. Since I don't have a way to view crash information implemented in MDLMagic yet, here are some shots from Arno's ModelConverterX:

The old, low resolution crash tree:
old.png


And the new, high granularity crash tree:
new.png


If all goes well, I hope to release a final version of my xtomdl compiler tomorrow or the next day. Keep a lookout on the tools thread!
 
Hi Sean,

Does this produce different results to altering the granularity variable parsed to XtoMdl.exe ?
 
Hi Sean,

Does this produce different results to altering the granularity variable parsed to XtoMdl.exe ?

As seen in that screenshot, no. This is the same as passing it in. However, my code offers two advantages over the default crashtree. First, I have rewritten the algorithm that generates the tree for much better performance, so theoretically you can go to a much higher level of granularity. However this introduces its own problems, as when you start going to higher and higher levels of granularity you start having missing boxes. You see if it is a low resolution model, there can be an entire block that has a polygon passing through it, but no vertex located in the box, so it is marked empty. This isn't a huge problem at lower levels but nevertheless an annoyance. At higher levels of granularity it gets pretty serious though. My code tries to overcome the errors, and also lets one programatically set the boxes based on user input. So when I integrate this into MDLMagic it will actually let you visually edit the crash boxes.

Also, very high levels of granularity are obviously going to have some performance impact on the sim, so my code is really intended for fine-grained control of the crash boxes at a reasonable granularity.
 
Last edited:
No problem Drew :) By the way, I'm both a big fan of MSE Airports and an avid gamedev.net reader, keep up the good work! :)
Wow thanks! :) Hope you like the latest change to the GDNet site. Keep up the good work on your end
 
Hey Sean,

Nice! I didn't see this till just now. You have been a very busy person! Cool looking tool!



Bill
 
Wow!

If you could implement animation support, this would open up entire new worlds!

Also, having .ac support (FlightGear) would be a cool feature, too.
 
Back
Top