Heretic
Resource contributor
- Messages
- 6,830
- Country

Ever since finding out about MCX' new animation support, I was intrigued about what can be achieved with it.
So I set out on the monumental task to convert as many of the aircraft models used in my AI traffic as possible.
Why AI?
Because the models are rather simple and the economy of scale should, in theory, benefit performance at larger airports. Also, it provides a way to have DX10 compatible models without investing in a payware AI traffic product.
So with the goal of getting a few more FPS at big airports, I set out.
Loading the model into MCX is no problem, save for the very odd logging-related errors that can be easily dismissed (just click "Continue") without hampering MCX' operation.
Some animations will have to be manually assigned for FSX in the animation manager as MCX doesn't find them in a standard modeldef.xml (supplied by the FSX SDK).
This isn't a huge drawback as I simply cloned and appropriately named the standard animations for these parts in the modeldef, so that MCX is able to automatically assign these animations upon exporting.
I needed to make a choice though, since both propeller and fan animations are labeled "engine" in MCX, so I elected to assign "engine" to the default "N1" animation for jets and do the prop animation assignment by hand.
The "select by name" and "jump to animation list entry by keystroke" functions in MCX' animation manager makes this quite easy.
Assigning "unknown" animations in certain models was a bit harder, as they mostly use custom animation code that (so far) can't be read by MCX. But with the filtered display of model animations, selecting and assigning an appropriate default animation is fairly easy.
Note: Even with an appropriately named modeldef entry, MCX does not automatically assign "unknown" animations during export.
The only thing I could not figure out were "userdefined" animations, as they did not seem to be assigned to any animated parts in MCX. But that could just easily be blindness on my part or model-specific behaviour.
Well, after assigning suitable animations, I've exported a renamed model (and changed the model.cfg accordingly) and checked its filesize of the resulting compiled file. To a big part, it always resulted in a model file a bit smaller than the FS9 one and occasionally in a file a bit larger than before.
On two occasions, I got a free .fx file to boot. I don't know where it came from though.
Anyway, working through 100+ model files and after five to six hours of work, I fired up FSX to check out the result.
My first impression is, that so far and only at an airport, the models look like before, which is good.
One drawback, however, that became immediately apparent was due to MCX' lack of visibility tag support, prop planes will not display prop disks when engines are on.
I've used "prop_blurred" as an animation tag for the props, which at least gives me the impression of a moving prop. It's more of an inconsistent rotation animation, but it's better than nothing.
As for model performance, I seem to have gained two FPS at LAX during rush hour operations, depending on the amount of planes in sight. To throw in a number, FPS were between 10 and 24 up from 9 to 20.
At BOS, with naturally less amounts of traffic, FPS seemed to be higher on average, from 15 to 25, up from 12 to 20.
It can be said that generally, full FSX native traffic is no silver bullet compared to FS9 traffic models, but in a low FPS environment, every frame per second counts.
I have not tested LOD functionality so far, but since opening the converted models in MCX also includes the LOD files, I trust MCX' judgement for now.
Switching to DX10, I found that all former FS9 models are now displaying in their fully textured glory.
A note on the textures: Prior to running the model conversion, I've converted all my AI textures to DXT5 DDS textures. Since MCX exports with a -NOBMP or similar sounding flag, it might be that converting AI textures before or after doing the models is a necessity.
By the way:
Converting userspace aircraft, while a very tempting idea, is not feasible at the moment since MCX doesn't read all animations used in the model (yet).
Conclusion:
Although being a time-consuming and partially tedious process, converting AI models into FSX format might be worth it, as long visual performance is more important than eye candy. Especially the missing visibility tag support can be discouraging expecially when converting propeller planes.
This is not the final verdict though, as I haven't tested the models enough. Personally though, I prefer performance over looks and as long as the models don't display any overly whacky behaviour, I will keep them.
Should MCX' capabilities in terms of animations and visibility tags be extended in future versions, I am willing to do the whole process again as the result outweighs the effort required.
As a final note, thanks to Arno for this nifty tool that basically gave me FSX native models without having to do them all from scratch.
Nota bene:
Publishing of models converted without the original creator's consent is strongly discouraged. You *will* get into trouble upon doing so!
Do this for yourself and for yourself only!
Here's a short overview of the pros and cons for those unwilling to read that much text:
+ FSX native models
+ DirectX 10 compatible
+ Basic animations are working
+ LODs (apparently) work
+ Very slight performance improvement at busy airports
+ Moderate effort required for conversion
- Some animations can display buggily
- No support for visibility conditions
- No support for custom coded animations
(- Possibly whacky lightmap behaviour)
And, for good measure: Do not distribute converted models unless you have the original authors' consent!
So I set out on the monumental task to convert as many of the aircraft models used in my AI traffic as possible.
Why AI?
Because the models are rather simple and the economy of scale should, in theory, benefit performance at larger airports. Also, it provides a way to have DX10 compatible models without investing in a payware AI traffic product.
So with the goal of getting a few more FPS at big airports, I set out.
Loading the model into MCX is no problem, save for the very odd logging-related errors that can be easily dismissed (just click "Continue") without hampering MCX' operation.
Some animations will have to be manually assigned for FSX in the animation manager as MCX doesn't find them in a standard modeldef.xml (supplied by the FSX SDK).
This isn't a huge drawback as I simply cloned and appropriately named the standard animations for these parts in the modeldef, so that MCX is able to automatically assign these animations upon exporting.
I needed to make a choice though, since both propeller and fan animations are labeled "engine" in MCX, so I elected to assign "engine" to the default "N1" animation for jets and do the prop animation assignment by hand.
The "select by name" and "jump to animation list entry by keystroke" functions in MCX' animation manager makes this quite easy.
Assigning "unknown" animations in certain models was a bit harder, as they mostly use custom animation code that (so far) can't be read by MCX. But with the filtered display of model animations, selecting and assigning an appropriate default animation is fairly easy.
Note: Even with an appropriately named modeldef entry, MCX does not automatically assign "unknown" animations during export.
The only thing I could not figure out were "userdefined" animations, as they did not seem to be assigned to any animated parts in MCX. But that could just easily be blindness on my part or model-specific behaviour.
Well, after assigning suitable animations, I've exported a renamed model (and changed the model.cfg accordingly) and checked its filesize of the resulting compiled file. To a big part, it always resulted in a model file a bit smaller than the FS9 one and occasionally in a file a bit larger than before.
On two occasions, I got a free .fx file to boot. I don't know where it came from though.
Anyway, working through 100+ model files and after five to six hours of work, I fired up FSX to check out the result.
My first impression is, that so far and only at an airport, the models look like before, which is good.
One drawback, however, that became immediately apparent was due to MCX' lack of visibility tag support, prop planes will not display prop disks when engines are on.
I've used "prop_blurred" as an animation tag for the props, which at least gives me the impression of a moving prop. It's more of an inconsistent rotation animation, but it's better than nothing.
As for model performance, I seem to have gained two FPS at LAX during rush hour operations, depending on the amount of planes in sight. To throw in a number, FPS were between 10 and 24 up from 9 to 20.
At BOS, with naturally less amounts of traffic, FPS seemed to be higher on average, from 15 to 25, up from 12 to 20.
It can be said that generally, full FSX native traffic is no silver bullet compared to FS9 traffic models, but in a low FPS environment, every frame per second counts.
I have not tested LOD functionality so far, but since opening the converted models in MCX also includes the LOD files, I trust MCX' judgement for now.
Switching to DX10, I found that all former FS9 models are now displaying in their fully textured glory.
A note on the textures: Prior to running the model conversion, I've converted all my AI textures to DXT5 DDS textures. Since MCX exports with a -NOBMP or similar sounding flag, it might be that converting AI textures before or after doing the models is a necessity.
By the way:
Converting userspace aircraft, while a very tempting idea, is not feasible at the moment since MCX doesn't read all animations used in the model (yet).
Conclusion:
Although being a time-consuming and partially tedious process, converting AI models into FSX format might be worth it, as long visual performance is more important than eye candy. Especially the missing visibility tag support can be discouraging expecially when converting propeller planes.
This is not the final verdict though, as I haven't tested the models enough. Personally though, I prefer performance over looks and as long as the models don't display any overly whacky behaviour, I will keep them.
Should MCX' capabilities in terms of animations and visibility tags be extended in future versions, I am willing to do the whole process again as the result outweighs the effort required.
As a final note, thanks to Arno for this nifty tool that basically gave me FSX native models without having to do them all from scratch.
Nota bene:
Publishing of models converted without the original creator's consent is strongly discouraged. You *will* get into trouble upon doing so!
Do this for yourself and for yourself only!
Here's a short overview of the pros and cons for those unwilling to read that much text:
+ FSX native models
+ DirectX 10 compatible
+ Basic animations are working
+ LODs (apparently) work
+ Very slight performance improvement at busy airports
+ Moderate effort required for conversion
- Some animations can display buggily
- No support for visibility conditions
- No support for custom coded animations
(- Possibly whacky lightmap behaviour)
And, for good measure: Do not distribute converted models unless you have the original authors' consent!


