CONVERTING FS2004 AIRCRAFT TO FSX TUTORIAL

TABLE OF CONTENTS
Introduction and Downloads
Part 1:  Setup
Part 2:  Saving and Animating the Props
Part 3:  FS2004 Import
Part 4:  Setting Up Landing and Taxi Lights
Part 5:  Conversion to FSX
Part 6:  Editing Materials and Textures
Part 7:  VC & Appendix

PART THREE - FS2004 IMPORT, MERGING THE PROPS, AND SETTING VISIBILITIES

If you originally downloaded the extra definitions file before 6/12/2019, you must download it again and edit your modeldef.xml file.  You must replace the light_taxi_visible section and add the special_light section.
1.  Did you make a backup of the plane's MDL file as described in Part 1, Step 2?  If not, do it now.
2.  Click Import, set the drop down box to type FS MDL, and browse to your aircraft's MDL file, in the plane's Model folder.  Click it and click Open.  Do not open the copy.  In our example I will Import the dc6b.mdl file found in the FS/SimObjects/Airplanes/DC-6B CB-16/model folder.
3.  The Set Condition Variables box will pop up.

If using the DC-6B example, set  the values to the following:

Set Variables 1
set variables 3
Set Variables 2

  a.  The following (if present, not all will be there) should already be set: for the external model - see below for a Virtual Cockpit (VC).

 Variable Value Notes
 gen_model 2 Loads the external model.  If you are converting the VC, set this to 1
g_lightStates 12 retains the attachpoints for the landing and taxi lights for the external model, if loading the VC set this to 0
c_gear 100 allows the wheels to display
l_gear 100 "
r_gear 100 "
parts_visible 65535

  b.  Set these as you need to:

prop0/1/2/3_still = 0  (determines the display of still/slow/blurred props and jet fans.  For now, leave these at 0 to load the still props).
custom_anim_XXXXX (XXXXX can be anything).  In the exterior model these are usually custom visibility objects like ground equipment.  In my experience setting these to 32000 usually gets them to display, but there could be exceptions. 
Some, like crash check,damaged, rain, and wind variables, seem to disappear upon importing.

l/r_spoiler_key, etc.  Some of these will need to be set to 100 for them to display.

  c.  Click Set, and the plane will display.  Check the log at the bottom for any bright red entries (errors).  You can ignore most  light red warnings.  If it warns about a problem with the modeldef.xml file (usually the top line of the log - scroll up), you probably made an editing error when adding our new definitions.  Start over with your backup and try it again.
4.  I uncheck the Use Complex Shader button, which gives me a more pleasing view of the plane.  Your results may vary.
5.  Check the plane, and make sure that the props, control surfaces,and other parts animate as expected and are not displaced.  The animation slider is at the bottom of the button rows.  If they do not animate or are displaced, I don't know of a reasonably easy way to fix this, sorry.  Conversion is probably not possible using these instructions alone.

UNKNOWN ANIMATIONS

6.  Click the Animation Editor button and look for anything called usrvar, UserDefined, Unknown, or anything else that MCX does not include in its drop down list of Animation Types.  These are parts that MCX could not determine what they really are.  They will usually  have a red highlight, warning you that there is no such animation definition in the modeldef.xml file and these animations will be lost when Exported.  Write down these animation definitions.

Animation Editor
7.  Close the Animation Editor with the red X (all such editors are closed with the red X).

8.  If you had any unknown animations in step 6, click the Hierarchy Editor button and  type in one of the unknown animation words you wrote down into the search box at the top middle. If nothing was unknown, skip these steps and go to step 10.  Read them though because you will need to know how the Hierarchy Editor works.   A list of ModelParts or SceneGraphNodes will appear.  Click on one, and see what lights up red on your plane. 

Unknown Parts

For the DC-6B example, I typed "userdefined" into the search box and looked for the parts.  I couldn't find them.  So I used a little trick - turn on Colored Render mode rather than textured render mode.  When I did that, the parts were bright red.  Turns out they were textured with a dark blue color, and turning them red only caused them to turn black!  Go back to textured render mode when finished (the button just to the right of colored render mode).  PS.  Sometimes it's easier to go to Wireframe mode to see these parts, so try that if you can't find them in Colored Render mode.

If a given unknown SceneGraphNode/ModelPart already has a correct animation in the SceneGraphNodes above it, then you can eliminate this unwanted animation.  In this DC-6B example these parts should not have any individual animation (they are part of the maintenance stairs and should remain as a solid unit) and thus the animation must be removed.   

For those nodes/parts that do need to be animated separately, refer to step 10.

  a.  Close the Hierarchy Editor and open the Animation Editor.  If all of the unknown animations using a given name need to have their animations removed, type in one of the names into the box to the right of the Select Name Containing button..  Click that button.  There should now be checkboxes next to all of the those parts.  In the DC-6B example I typed user, clicked the Select Name Containing button, and all 5 userdefined8 parts were selected.

If instead you need to select the parts one by one, click the Select None button, and then double click each line to select it.
.
Select Animations

  b.  If the parts move when the animation slider IN THE ANIMATION EDITOR is moved, slide it to the location (keyframe) where the parts should be location/rotated  (not applicable to the DC-6B example).
  c.  Click the Fix Selected Animations button.  The unknown animations will disappear.
  d.  Close the Animation Editor.

9.  If you have no unknown parts that need to be animated, skip to step 10.  If the unknown animated parts should be animated in addition to any nodes directly above them and you know what the animation and visibility name (if needed) should be used for this part, then step down through the SceneGraphNodes to highlight each part with this unknown animation name.  Click on that name and choose the correct animation from the list.  Repeat for each such part.  If you need to see the SceneGraphNode in the complete listing to understand it, click on the SceneGraphNode to highlight it and click the yellow pencil to the right of the search box.  The full listing will re-appear with your SceneGraphNode still highlighted.  When you need to go to the other parts, just type the unknown animation name into the search box again.  NOTE: If you are following along with the DC-6B we have no such  parts to fix in this way.

Animation Choices

If needed, also assign any Visibility Conditions - click the None underneath Visibility Condition and choose from the list.  Note that only ModelParts should have a Visibility Condition - it won't work with SceneGraphNodes.
10.  Sometimes when you find red lines (or not) in the Animation Manager (i.e. unknown animations), MCX will assign incorrect animations.  An example is the Jens Kristensen DC-4s, where there are two red warning animations present, l_flap and r_flap.  These need to be reassigned to l_flap_percent_key and r_flap_percent_key by the method above.  But in addition to this, MCX incorrectly assigns the animation of an aileron to the flaps - up at the animation slider full left, retracted at the slider in the middle, and down at the slider to the right.  This is incorrect and we'll need to fix that by editing the animation.
11.  If this is needed, open the Hierarchy Editor, and find the mis-animated part by searching for it.  In this case we would now search for l_flap_percent.  Click on the SceneGraphNode or Model Part it finds. Then right click on Animation and select Edit Animation.
Edit Animation 1
12.  The Animation Key Editor will appear.  

Edit Animation 2

13.  By clicking on the keyframe  numbers (MCX calls them Time) at the upper left you can see that in our exmaple the RotX values change - this is the axis of this part's rotation.  The current values of the rotation are:

Keyframe   Rotation (RotX)
0                 -30
25               -15
50                  0
75                15
100              30

We instead want this to look like:

0                  0
25              -7.5
50              -15
75              -22.5
100            -30

This means that the flap is rectracted at keyframe 0, and is deflected 30 degrees down at keyframe 100.  Your required animation may be different, and thus your axis and these Time and rotation numbers may be different as well.

14.  To change this in our example, click on the 0 Time at the upper left, and edit  the -30.00 in  the RotX box to 0.  Click on the other Times and change the values to that listed above.  One thing - do not add the minus sign at this time, just edit the values to 0, 7.5, 15, 22.5, and 30.

15.  Now to add the minus signs.  Click on the 25 Time number at the upper left.  Add a minus sign to the X: box.  Click a different box.  The 7.5 will change to -7.5.  If your animation is a different axis, add the minus sign to the corresponding box (Y to Y:, Z to Z:, etc.).

Edit Animation 3

16.  Click OK once you have all rotations correct.  Slide the animation slider and confirm that your part now has the correct animation.

MERGING THE PROPS INTO THE AIRCRAFT

17. Click on the Merge Objects button.  A dialog box will appear.

merge

NOTE:  If you are converting an AI model with multiple LOD models, you will need to enter the LOD model you wish to add the props to at the top of this box.  You will then need to repeat the Merge procedure below for each LOD model you want to add props to.

18.  Click on the Load Object... button.   Browse to your model folder (if needed), click on the slow props MDL file (in our example it's dc6b_props_slow.mdl), and click Open.
19.  The Merge button will become available.  Click it firmly.  The slow props should appear in their proper positions.  They will not be transparent, this is fine.  Close the Merge Objects box.
20.  Click the Merge Objects button.  Click the Load Object... button.  Click on the blurred props MDL file (for example dc6b_props_blurred.mdl) and click Open.
21.  Click the Merge button firmly.  The blurred props should appear.  Close the Merge Object box.

SETTING CUSTOM ANIMATION AND VISIBILITIES

NOTE:  Sometimes this needs to be done now because of the problems that occur after FSX conversion.  But sometimes doing this now will cause the animations to break (see Part 5 Step 16) and cannot be fixed.  In this case you will need to do this section after FSX conversion.  If the animations break when you convert to FSX format and you cannot fix it as described in Part 5, then try this section after FSX conversion (Part 5, Step 19).  If the parts you need to assign visibilities to are combined with other parts after conversion (due to them using the same material), you will instead need to isolate these parts and save them as a separate MDL file(s) (as we did with the props) and Merge them later.  If this doesn't work, you will probably have to delete the parts now that become combined with other parts after FSX conversion and do without them.  The Manfred Jahn Connies require visibility assignments to be done now, while the Greg Pepper DCs require (and allow) this to be done later.  So do this entire section later with our DC-6B example.  Do NOT assign visibilities to parts that are animated at this time- they will remain separate during conversion anyway and will only increase the chances of breaking the animations.  Assign visibilities to these parts later (Part 5, Step 19).

22.  The parts that combine with other parts after FSX conversion need to have their visibilites set now.  These parts are typically those that appear and disappear under certain conditions.  On the  DC-6B these are the passenger and maintenance airstairs (both custom_anim_EXIT_OPEN) and the left/right chocks (both custom_anim_BRAKE_PARKING).  The name includes one of the conditions in which the part appears/disappears.  Another obvious choice is any ground equipment.  Operate the model in FSX and find out what such parts can be.  If you are using only P3D, you may have to ask at a forum for the plane (or a general FS2004 forum).
23. Open the Hierarchy Editor. Since these parts have no specific animations already in place, we will have to click on each master SceneGraphNode until the desired part turns red.  Once you find one, you will need to assign the proper visibility condition to each and every ModelPart in that node.  The custom visibility definitions we added to the modeldef file are discussed in the Appendix.

For example, with the DC-6B there are 4 such parts, as described in step 22.  From the top of the list start clicking on the master SceneGraphNodes until you find the airstairs - it's often near the top of the list:

Visibility conditons

24.  Click on the ModelPart just below the highlighted SceneGraphNode and click on the None underneath the Visibility Condition.  Select the proper visibility condition from the list.  In the case of our DC-6B example, that is airstairs_4 for a 4 engine plane.  If you prefer, you can use Shift and/or Ctrl clicks to select some or all of these ModelParts and assign the Visibility Condition all at once.

hierarchy visibility 2

25.  If you have any parts left, continue clicking the ModelParts below the ones just edited and repeat this. Repeat for all ModelParts in this node.   There are a total of 10 ModelParts that need to be changed in this DC-6B example (i.e. the ModelParts that make up the entire airstairs object).  Note that the SceneGraphNodes do not need visibility conditions, only ModelParts.  Occasionally a ModelPart will escape away from its node - just find it among the single ModelParts and assign it the same Visibility Condition.
26.  Repeat this for each object that has a custom_anim_XXX definition when Imported.  For the DC-6B this is the maintenance stairs (assign the maint_pltfrm_4 visibility condition), the left chocks (assign the l_chocks_4), and the right chocks (assign the r_chocks_4).  Remember to add these conditions to every part in the node.  The maintenance platform has 11 parts, the chocks each have 2.  Note that when finding the maintenance stairs, look for the little wheels to turn red (the rest only turns black) or use coloured render mode.  Close the Hierarchy Editor.

You must immediately continue to Part 4, because you will lose your changes if you do not.

Next:  PART FOUR - SETTING UP THE LANDING AND TAXI LIGHTS