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

FS2004 Unlimited Export (part 1)

arno

Administrator
Staff member
FSDevConf team
Resource contributor
Messages
34,429
Country
netherlands
For quite some time it has been on my wishlist to study the FS2004 Unlimited Export tutorial that Bill Lionheart made many years ago. It is a very well done and extensive tutorial of over 50 slides. So maybe that scared me off a bit. But recently I read through the tutorial and with my tool developer perspective I realized that it would not be that hard to implement that logic in ModelConverterX. The tutorial has to do al kind of additional steps to work around limitations in the FS2004 GMax gamepack, for example to get your X files. But within ModelConverterX I have full control and access to these items. What also helped is that recently I implemented other ASM tweaks in the FS2004 MDL writer, so that made it easier to do the unlimited export tweak as well.

The current development release of ModelConverterX has the first part of the unlimited export function implemented. That is the bit that works around the 4 mm weld limitation of MakeMDL by scaling up the model on export and then tweaking the ASM file to get the proper size.

If you enable the Unlimited Export Tweak option on the FS2004 aircraft MDL export dialog this 4 mm weld limitation tweak is applied to your FS2004 aircraft model. This means that you can use small details in your cockpit again without losing them on export.

I plan to implement part 2 of the tweak soon as well, those are the tweaks to work around the 65k triangle limit of MakeMDL. Once that is done I will make another blog post about it.

Continue reading...
 
I know Arno knows but for other person
Basic to understand for a things called "Unlimited Export" is it's showing several LOD models at once.

But that doesn't mean can be really unlimited .

And the problem is here. BGL_CALL_32
"On the root ASM's last part there is a BGL_JUMP_32 at original and will be changed to BGL_CALL_32 on that system"

Each LOD data part will be placed after that part so if total of each LOD part (can see by asmfile) exceeds the range of BGL_CALL32 , can't call.

Example: ---------------------------------------------------------------------------------------------
LOD_0L label BGLCODE
include C:\Users\user\Desktop\A320NEOWORKTMP\TDS_A320N_PW1100G_JM_0.asm
LOD_1L label BGLCODE
include C:\Users\user\Desktop\A320NEOWORKTMP\TDS_A320N_PW1100G_JM_1.asm
LOD_2L label BGLCODE
include C:\Users\user\Desktop\A320NEOWORKTMP\TDS_A320N_PW1100G_JM_2.asm
Example: ---------------------------------------------------------------------------------------------
If LOD0L + LOD1L total gets over the range of BGL_CALL32 can't call LOD_2L
So it's not really Unlimited there is still a limitation.

Why I know is thats how I got when I made the A350 for FS2004.
Then how I made it is made interior and exterior model part common and saved total memory.

Also thinking from how it will be used.
Isn't it better make it as a simple utility which can just merge several model ?
 
Last edited:
Hi,

I am sure nothing is really unlimited in life :D

But I don't think that the limit you mention here is specific to the ULE tweaks. Both the BGL_JUMP_32 and BGL_CALL_32 use the same datatype of the offset of the label that they should jump/call to. So both of them can skip over the same amount of maximum bytes. So that means that the limit you hit could also be hit when you make a normal model with many LOD models. But of course with the additional details put in via ULE you are probably more likely to hit it.
 
Hi Arno

First, thank you for all your time and hard work regarding ModelconverterX, and your support across multiple flight sim platforms.

I hope my issue is related to this topic, because it's related to an error regarding a missing .asm file. I've downloaded this FS2004 AI aircraft and wanted to remove all the attached objects (all the lights) from this model. Using ModelConverterX (v1.9.2026.0612), I remove all the attached light objects, and then try to export the model. The error handler shows this error

5.jpg


I've tried exporting with "Unlimited export tweak" checked and unchecked but still have the same issue regarding a missing .asm file. I've tried using (v1.9.2026.0503) and (v1.9.2026.0406), but both fail with the same error. Version (v1.9.2026.0107) and V1.8 don't even run on my Windows 10 PC. Version 1.7 is the only version that exports the model with no errors and works. Maybe it's a setting that is causing this issue, I don't know. Please move my post if my issue is not related to this topic

Regards, and best wishes
Rick

Edit: Using the default B737 also fails.
 
Last edited:
Hi,

I'll try to reproduce the issue here.
 
Thanks Arno.
If I just import the default B737, make no changes, and then try to export the model it fails (can't find the .asm file).
 
Last edited:
Hi,

I tried with the default 737, but I can't reproduce the issue. I noticed you have a space in the folder name of your FS2004 folder, but even when I added such a space I could not reproduce it.

Which version of MCX are you using?
 
Hi Arno
The problem must be at my end, and I'm sorry to have wasted your time. I'm currently using v1.7, but have tried v1.8, and v1.9 with no success. I just tried v1.8 again and it won't even start. I checked the Event log and a error is saying "You must install .NET to run this application".
What version of .NET do I need installed?

Rick
 
With some further testing I noticed that when I export to a folder with a space and with certain MDL file names, that MakeMDL does not automatically start to compile. If I then close MakeMDL I can reproduce the error. I need to do some further testing to see why this happens.

The ULE feature is only in version 1.9, since that was added recently. With 1.8 you should be able to export FS2004 aircraft kind of OK. Version 1.7 is too old and only has limited FS2004 aircraft export functions.
 
V1.8.2025.1221 would never run, just crash, but I've now fixed that. I needed to install .NET 8.0 Runtime (v8.0.28) found here. V1.8 now runs OK. I removed the space in my FS2004 directory name, but it still has issues with v1.9.2026.0612. But now with .NET 8.0 Runtime installed, version v1.9.2026.0107 now works OK.

Regards
Rick
 
Last edited:
Hi,

I understand now when the problem occurs, when the model filename you are exporting to ends with a number (e.g. b737_400 or newaia_737_200) then MakeMDL gets confused as such numbers are also added to indicate the different LOD versions of the model. So I will have to call MakeMDL differently from ModelConverterX to prevent this issue.
 
Hi Arno
Wow, how did you figure that out? But you're correct. When I change the name to include a trailing letter, v1.9.2026.0612 now works. :)
That's a quick and easy fix for me. 👍

Thanks again Arno for your time and efforts, I very much appreciate your help on this.
Rick
 
I have coded a fix for this issue as well now, so in the next development release it will work with any filename as it should.

When I reported that I could export the default 737, I had named the output test.mdl. Later when I tried to export with the default name I noticed that MakeMDL did not compile automatically. So today it suddenly struck me that the number was the issue, as each level of detail gets its own X file that has the LOD number at the end.
 
Back
Top