I'm converting an MSFS Gulfstream G700 exterior model to P3D v6 using MCX [version ___], importing directly from the MSFS-native glTF.
Symptom: After assigning l_flap_percent_key / r_flap_percent_key / l_spoiler_key / r_spoiler_key in the Animation Editor and exporting to MDL, the flap and spoiler surfaces in P3D only ever show one deployed state — they don't track the flap lever detent or spoiler position, they just snap to (what looks like) the end of the animation regardless of commanded value.
What I found digging into the exported files:
- The real P3D v6 SDK modeldef.xml (...\Prepar3D v6 SDK 6.1.10.31609\modeling\3ds max\bin\modeldef.xml) correctly declares these as type="Sim" typeParam="AutoPlay" with length="100" — as expected for a percent-driven animation.
- But in the Hierarchy Editor, the actual imported animation for these parts shows Length: 4.16666665... — which is suspiciously exactly 100 ÷ 24. It looks like the glTF importer is reporting the animation's native duration in seconds at 24fps, but this value is then getting used downstream (in the exported PartInfo AnimLength and the .xanim companion file) as if it were already in frame units, truncated to 4 instead of being converted to 100 frames.
- Other tags on the same model that expect different target lengths (e.g. l_gear wanting 8) don't show the same mismatch, so this seems specific to the 100-frame percent-key convention vs. this glTF source's ~4.167s native animation length.
What I've tried, none of which affected the exported length:
1. Export options → General → "Animation scaling" (set to 24, i.e. 100/4.167) — no change in the exported .xanim/AnimLength, length stayed 4.167/4.
2. The "Length" field at the top of the per-part Animation key editor (right-click part → Edit animation) — editing this field to 100 does not rescale the actual keyframe Time values underneath; they still span 0–4.167.
3. Import options → "Animation scaling" — this option doesn't appear in the dialog for this glTF file, so I couldn't test it at import time.
Is there a supported way to get MCX to correctly convert an animation's native seconds-based length to the frame-based length expected by Sim-type percent-key animations on FSX/P3D export? Or a way to batch-rescale a specific animation's keyframe Time values (multiply all by a constant) rather than editing ~100 keys individually? Happy to attach the exported .xanim/.XML/MCX_ModelDef.xml if useful.
Symptom: After assigning l_flap_percent_key / r_flap_percent_key / l_spoiler_key / r_spoiler_key in the Animation Editor and exporting to MDL, the flap and spoiler surfaces in P3D only ever show one deployed state — they don't track the flap lever detent or spoiler position, they just snap to (what looks like) the end of the animation regardless of commanded value.
What I found digging into the exported files:
- The real P3D v6 SDK modeldef.xml (...\Prepar3D v6 SDK 6.1.10.31609\modeling\3ds max\bin\modeldef.xml) correctly declares these as type="Sim" typeParam="AutoPlay" with length="100" — as expected for a percent-driven animation.
- But in the Hierarchy Editor, the actual imported animation for these parts shows Length: 4.16666665... — which is suspiciously exactly 100 ÷ 24. It looks like the glTF importer is reporting the animation's native duration in seconds at 24fps, but this value is then getting used downstream (in the exported PartInfo AnimLength and the .xanim companion file) as if it were already in frame units, truncated to 4 instead of being converted to 100 frames.
- Other tags on the same model that expect different target lengths (e.g. l_gear wanting 8) don't show the same mismatch, so this seems specific to the 100-frame percent-key convention vs. this glTF source's ~4.167s native animation length.
What I've tried, none of which affected the exported length:
1. Export options → General → "Animation scaling" (set to 24, i.e. 100/4.167) — no change in the exported .xanim/AnimLength, length stayed 4.167/4.
2. The "Length" field at the top of the per-part Animation key editor (right-click part → Edit animation) — editing this field to 100 does not rescale the actual keyframe Time values underneath; they still span 0–4.167.
3. Import options → "Animation scaling" — this option doesn't appear in the dialog for this glTF file, so I couldn't test it at import time.
Is there a supported way to get MCX to correctly convert an animation's native seconds-based length to the frame-based length expected by Sim-type percent-key animations on FSX/P3D export? Or a way to batch-rescale a specific animation's keyframe Time values (multiply all by a constant) rather than editing ~100 keys individually? Happy to attach the exported .xanim/.XML/MCX_ModelDef.xml if useful.

