FS2004 aircraft mdl export

Some features are on the ModelConverterX wishlist for quite a while already. For example the feature request to export FS2004 aircraft mdl files with working animations and such is on the list for over 10 years already. And given that FS2004 is less popular nowadays I thought I might never come around to implement this feature request.

But sometimes strange things happen. A question from an user on the FSDeveloper forum triggered me to have another look at how MakeMDL handles custom animations and suddenly I realized it is not that different from how XtoMDL does it. Because I thought it might not be too hard to implement therefore, I decided to give it another try.

Of course reality is always different, because it still took me around 2 months to work on this. Once I had the animations exporting correctly, it turned out the reading of visibility conditions was not optimal and this affected the FS2004 aircraft mdl export as well.

But now that is all behind me and the latest development release of ModelConverterX can export a FS2004 aircraft MDL file with working animations and visibility conditions. I’m sure it will not work perfect on any aircraft around, but I think it should be a start for developers still working for FS2004. And if you encounter any issues with a specific model, just let me know via the forum.

Happy 20th anniversary

Today SceneryDesign.org is 20 years old. On 17 August 2003 I started this website as a new community for Flight Simulator scenery designers. I did this because there was a scenery design forum at AvSim.com at the time, but I thought a dedicated community where developers could share experiences would be useful as well.

After a couple of years the community expanded into other addons than scenery design as well and it was renamed to FSDeveloper.com, so in a way this is also the 20th anniversary of the FSDeveloper.com community.

A few years after the community was renamed to FSDeveloper.com I restarted the SceneryDesign.org website, but now the central website for information about my flight simulation tools and for my personal blog out my flight simulator activities. And that is what this website still is today.

64-bit only development releases

With the release of the new stable releases ModelConverterX 1.6 and scenProc 3.1, the development releases have also been updated. The ModelConverterX development release is now version 1.7 and the scenProc development release is now 3.2.

In these new development releases there is a big change directly, they only support 64-bit now. This means you can no longer run them on a 32-bit OS. A recent poll also showed that nobody was using the 32-bit version anymore. Therefore I have decided to simplify the build process and remove the support for the 32-bit version. A factor in that decision was also that I test and develop on 64-bit only, so the 32-bit version of the tools was already tested much less.

With these changes it is recommended that you do a clean install of the new development releases, instead of installing them over an older version.

ModelConverterX 1.6 stable release

I have just released a new stable release of ModelConverterX based on the current development release. This means that all changes made since the ModelConverterX 1.5 stable release are now part of the stable release as well.

The main differences between ModelConverterX 1.5 and 1.6 are:

  • Improvements to reading and writing DDS files
  • Support for factor of 4 texture sizes as used in MSFS
  • Correct rendering of MSFS normal maps in the preview
  • Allowing command line conversions with ModelConverterX
  • Many bug fixes and smaller improvements

You can find the download information for the new stable release on the ModelConverterX page.

scenProc 3.1 stable release

I have just released a new stable release of scenProc based on the current development release. This means that all changes made since the scenProc 3.0 stable release are now part of the stable release as well.

The main differences between scenProc 3.0 and 3.1 are:

  • Ability to export MSFS scenery as well
  • Updates to usability of the texture filter editor
  • New file format for the texture filter configuration and building texture configuration
  • Machine learning based SVM step in the texture filter editor for feature detection

You can find the download information for the new stable release on the scenProc page.

Prepar3D v6 support

Lockheed Martin has released a new version of Prepar3D, version 6. I have now updates my tools to support this version as well. That means you can select it as active FS version, that it will detect the installation location and that the SDK tools are also found from the Prepar3D v6 SDK.

The only disclaimer with this update is that I do not own Prepar3D v6 myself, so I have not been able to test everything. If you encounter any issues, please let me know.

scenProc roadmap

Last month we were on vacation and traditionally that means no computer and no programming on FS tools for a while. But of course you always have your brain with so, so vacation is a good month to think about new features for tools and things like that. During the last vacation most thinking-energy went into scenProc and I would like to share the roadmap I see for the future with you.

Let me start with a caution as well. There is no concrete project that I am working on at the moment that requires the things I want to add. So it is purely out of interest that I try to research these new features. I have no idea when or if I will reach the end state I have in mind. I guess only future will tell, don’t hold your breath for it.

scenProc started as a tool to make the creation of autogen for big areas easier. But I think the limits of what can be done with autogen are kind of reached already. So not too much new features can be added it that anymore. Later on I also added terrain vector and resample scenery output in scenProc and the possibility to create 3D buildings (as MDL objects). The latter is really useful to overcome the limitations of autogen when trying to create realistic buildings in a big area. Autogen is always rectangular and that just does not fit real world buildings that well.

My plan is to improve the 3D building output, by adding more roof types and allowing more complex shapes. For example have mansard roofs as well or allow different heights and different roof types within one building. I have actually started coding some of these features already, I will make a sneak preview video of the results soon. I think this 3D building generation would also be useful to have in ModelConverterX, as it will allow you to make generic buildings areas than modelling them in Blender or 3DS Max. So I think the new features I develop for scenProc will also make it into ModelConverterX as a new wizard later on.

But the whole idea of scenProc is of course to be able to generate scenery in a geo-data driven way. So to be able to feed that 3D building step that can make more realistic buildings, it is needed to somehow get the data that define these buildings. I haven’t seen a lot of GIS data that contains information on roof types and such. So my intend is to derive this information from raster imagery.

That however won’t be possible with the basic texture filter that is available now. Last year I have added the first bit of machine learning to the texture filter with the SVM step and I think more machine learning algorithms are needed to derive such building details as well. I have already found some scientific papers on these subjects as inspiration. But for me all these machine learning algorithms are also quite new, so I guess it will be some learning curve.

Once learning more machine learning methods, I think other features than buildings will also benefit from it. For example the detection of water or vegetation might also benefit from these techniques. I even think that doing water detection with machine learning might be a good way to learn the techniques, before I jump in the more complex problem is detecting roof types.

So to sum this all up, I mainly see new scenProc features in these three areas of the coming period:

  1. Improvements to the 3D building output to generate even more realistic buildings.
  2. More machine learning techniques in the texture filter to detect information from imagery. This will benefit:
    • Water detection
    • Roof type detection

XtoMDL prerequisites

One common issue when trying to compile objects using XtoMDL in ModelConverterX is that XtoMDL can throw very unclear error messages when the XtoMDL tool is missing one of its prerequisites. For example the FSX XtoMDL needs a very specific DirectX version to the installed and different P3D XtoMDL versions depend on different C++ redistributable package versions. For a user it is often not clear that the error throws is related to such a prerequisites.

In the last development release of ModelConverterX I have made a change. The tool will now check if the right prerequisites are installed before you use XtoMDL and it will give a clear error message (including a download link) in case something is missing. That should make it a lot easier to make sure XtoMDL is working fine.

There is one big catch, on my machine I had all the prerequisites installed already of course. So I was not able to test it well in a situation where things are missing. So if you encounter any weird situations where ModelConverterX reports invalid prerequisites where it shouldn’t or where after installing the prerequisites it still does not work, please let me know.

Improved mipmaps handling

It turned out that for all those years the way ModelConverterX handles the mipmaps of textures was not really correct. So in the last version of ModelConverterX there are a number of changes that improve this. These include:

  • Mipmaps are read correctly from DDS and DXTBMP files, instead of being calculated internally by ModelConverterX.
  • Mipmaps are saved to DDS and DXTBMP files based on the data that was loaded, instead of being calculated by ModelConverterX. This means that if you modified some mip levels that data is not being lost when exporting a texture file from ModelConverterX.
  • The Texture Converter form has a dropdown menu now where you can select which mip level you want to see, that way you can inspect the different levels.
  • And last, but not least, the preview in ModelConverterX uses the mipmap data correctly now when rendering the preview of the object.

The video below also shows most of these changes.

Building Texture Configuration file format change

In the latest development release I have fixed the bug that textures in the 3D building generation have to be square in size. But while making this fix I also broke the backwards compatibility of old BTC files partly. So prevent such issues in the future I have added a new file format that has less backwards compatibility issues, this new format is called BT2.

For now the Building Texture Configuration Editor can read both formats, so you can convert your old configurations by loading them in the editor and then saving them in the new format. I have also made a command line conversion tool that you can use: btc_to_bt2.