Gmax and Deep-Exploaration - Export - Tutorial; Making aircraft for G3

Status
Not open for further replies.

maxkop

Well-known member
There were several threads, asking how to generate an aircraft for the Realflight 3.5. RC Simulator. While there are a lot of people, which are using 3dsmax in combination with the .kex - plugin that really needs 3dsmax, I want to explain a method using gmax, Deep-Exploration, and a small tool called middleman together with the mdlcommander file. As example file we will probably using my 3dbatix-Pitts-S2C - Foamy to generate a typical plane for G3 and to stay in connection with the great KnifeEdge - Tutorials for 3dsmax.

The tutorial will be devided into different parts, so the designers can follow it step by step. I will try to keep it as simply as possible, so that everyone can follow my explanations. I will also try to focus on freeware available programs, so the software which is needed to build a plane, is as cheaply as it can be made at the moment, not using 3dsmax.

I will also adding a couple of images, that you can see what I'm making in the different programs. But this will take a little more time.

There will will a lot of editing in this thread by me, making explanations clear and simple if there are questions. To make it easier for the users of this forum to get directly and fast answers to their questions, I will open a second - discussion thread here, so that this main thread stays without comments and the users doesn't have to read through thousand of comments. SO, PLEASE DON'T POST COMMENTS HERE. Be welcome to ask me everything in the other thread. What I will firstly not explain is the whole modelling topic, how to build an aircraft in details using gmax. The export process is complicated enough. There are thousands of tutorials building 3 dimensional objects in gmax. Simply search using google or other threads in this forum.

Have fun!

Max

Content:

- Part 1: Software and Preparations.

- Part 2: Testing setup and configuration.

- Part 2.1: Testing setup and configuration: Generating a test .tga file for our object​

- Part 2.2: Testing setup and configuration: Generating the x. - file; DE setup​

- Part 2.3: Testing setup and configuration: DE export settings; Generating a .KEX file​
- Part 3: Generating an aircraft for G3 (3.5): Working in gmax (Materials, Pivots and Hierarchy structure), Naming convention and hierarchy structure in Deep Exploration, Setup of a .3ds - file for the .kex - exporter, Working in the support file

- Part 3.1: Working with gmax, Materials, Pivots and Hierarchy structure in DE.​

- Part 3.2: Naming convention and hierarchy structure in the .kex - file; Editing of the .sup - file of the .kex - exporter.​
 
Last edited:
Part 1: Software and Preparations

In the first part, I want to focus on the software, which is needed to generate aircrafts and how to setup the software correctly together with different tools, needed to work with gmax. Here is a list of programs you will definetly need to generate aircrafts:

Software and where you can get it:


1: gmax, a free and for the modelling of aircrafts more than fitting 3D-Editor.

Download-Source

2: The gmax - MSFS - 2004 - gamepack.

Download-Source

3: Middleman and MDLCommander, two small programs, which stop together the export process of the .mdl exporter in a phase, where the generated .x file can be used.

Download-Source MDL-Commander

Download Source Middleman Version 1.2

4: GIMP together with GTK+ 2.0 environment, a free paint programm, as an alternative graphic programm for Paintshop Pro & Co. to generate the texture file and the corresponding Alpha-Channel.

Download-Source

5: Deep-Exploration, a professional converter tool to generate an acceptable .3DS file for the .kex converter.

Download-Source

Alternative Download-Source Don't care that there is standing Deep Exploration 2.0. It's the 3.5.[x] version like from the link above.

6: The command-line based .kex - exporter. It's the first download from above.

Download-Source

The only software which is commercial from the list above is Deep Exploration. Compare to 3dsmax (3500$ stand alone license), Deep Exploration is really not expensive (about 150$ for the standard version).

The downloads for Deep Exploration from above are leading to the standard demo version, which is completely sufficient for our things. The entire rest of this software list are freeware applications.

It is clear that this method of generating aircrafts for the sim is much more complicated, than using simply 3dsmax with the .kex - plugin. You will definitely need much more time to generate aircrafts with gmax and Deep Exploration.

So the last point of "software" we are needing is:

7: Many, many time :)

Preparations: Setting up gmax and tools

When you have downloaded all that stuff, firstly install gmax version 1.2 . You will have to go through a registration process by turbosquid, the distributor of gmax, after discreet have canceled their support for the "freeware" - 3dsmax version. From the version standard and functions, that are available under gmax, it is compareable to 3dsmax version 4. But don't think, you are downloading a software dinosaur. Gmax is used by many applications, especially simulator's and a huge amount of games. The only things, that are limiting your aircraft ideas, is your power of imagination and your free time :)

First of all, we want to install everything in the right way, that it's working with gmax. After the installation of gmax itself, and the gmax gamepack for MSFS - 2004, please change to the gmax - main directory, normally C:\Program Files\gmax. The installation routine of the gamepack will find gmax by itself and setup everything correctly.


In the folder C:\Program Files\gmax\gamepacks\fs2004\plugins\ you will find 3 files (FSModelExp.dle, makemdl.parts.xml and makemdl.exe).

(1) Move (Don't copy) these files to the folder C:\Program Files\gmax\plugins\.

(2) Rename the original makemdl.exe from the gamepack to mkmdl.exe.

(3) Copy from the Middleman 1.2 Download Archive the makemdl.exe to [...]\gmax\plugins directory and leave this file as it is.

(4) Copy from the MDLCommander Download Archive the mdlcommander.exe to [...]\gmax\plugins directory and rename it to makem.exe.
 
Part 2.1: Testing setup and configuration: Generating a test .tga file for our object

In this small part, I will say something about generating the texture file for the aircraft.

Every aircraft has only one texture file, and every object, whatever material values it has must refer to this one texture file. It is not possible to refer to multiple texture files. While that wouldn't bother the export to the .3ds - file for the .kex - exporter, it would definitely bother the .kex - exporter itself leading to multiple error messages.

The only texture - file format, which is supported, are .tga - files. Sometimes they are also called targa - image files (See Part 2.3). At this point I want to loose some words about the Alpha - Channel.

The Alpha - Channel is something like a mask, over your whole texture - area. It's normally not visible and only contains colour values between white and black. With these two colours and every grey colours between them you have control over the transparency of the aircraft - parts, which are linked to every material called ~ALPHA. G3 will read out the Alpha - Channel and setting opacity according to these colours (white = completely visible; black completely unvisible). More information, when we are exporting the aircraft :)

The resolution ratio (widith: length) of the .tga - file is always the same: 1:1 . Your file may have the size of 1024x1024 pixel, or everything according to that (256x256, 512x512). The maximium size after my knowledge is 2048x2048 pixels.

Especially when you are working with a lot of different objects of your aircraft, and have a lot of unwrap - uvw - modifiers, it's practicable to use that size, because you simply have more space for the definition of the texture areas for your aircraft objects. So why not generating a .tga - file for our test object in the size of that ?

(1) Install GTK+ 2.0 environment and GIMP, if you haven't already done it.

(2) Fire up GIMP!

(3) Go to File -> New File -> Set with and length to 2048 and make sure "Pixel" is selected.

(4) Fill the area with any colour you like and go to File -> Save As... ->

Select under "File type", "TarGA - Image" and (the best would be to save it like all other files in one folder for the whole aircraft, that depends on you :) ).​

A small dialog box appears. And now, that's very important: Deselect the option RLE - Compression!!!. The simulator cannot handle compressed .tga - files, the .kex - exporter can!!! :rolleyes: , and will not make any noise in form of an error message, that you are using a compressed .tga file.​

Let's use this texture - file in Part 2.2: Testing setup and configuration: Generating the x. - file; DE setup.
 
Part 2.2: Testing setup and configuration: Generating the x. - file; DE setup

In the second part, we try to get the export process running. Before we are beginning to export a whole aircraft object for the sim, which can have over 100 sub-objects or more, we check that the whole process is running with at least 1 object; so that the exported .x - file and via Deep Exploration, the generated .3ds - file are working with the .kex - exporter from KE.

Let's see if everything works properly. Fire up gmax! Make a simple opject by generating a box or a cylinder for test purposes.

Go to File -> Export -> ...

What you should see now, is that you can select in the drop - down - menue under "File Type" the "Flightsim Aircraft Object (*.MDL)" - Format. Give your file a name, for example "test" (without the "") and save it.​


What you shouldn't see now, is that a simply *.mdl file is generated. After a small warning message, which is not interesting for us now, a small dialog box should appear, called "MakeMDL Middle Man".

This small program jump's between the fsmodel-exporter and the MDL-Compiler program, guided by the mdl-commander-tool, to get the generated x. file, the exporter is working with.

Go to the register "Options" and select the two options "Save X File (mdlcom)" and directly above it "No compile" (That's important!!!). Click on "Go!!" and check if a test.x file is generated in the folder you've choosen.​

Install now Deep Exploration if you haven't already made it.

Fire up Deep Exploration!

If you cannot find it in your START - Program - Tree, the main - executable - program file is normally installed unter C:\Program Files\Right Hemisphere\Deep Exploration\Deep Exploration.exe.

Open your test.x file simply under File -> Open -> [Folder your test.x file is located].

In the small preview - Window you should now see you 3 dimensional test - object.

Make sure, that you've selected under "View" the option "Show Scene Components".

(1) Expand all folders in the "Scene Tree" until you have the real 3D - Object selected.

(2) Right Click, and select "Detach from Group". Repeat this process until the object is no longer staying in a sub-folder of the 3D-Scene (The option "Detach from Group" is than no longer selectable) and delete the resting folder-tree (Right Click on the folder, "Delete").

(3) Right Click and select "Object Properties". To give the .kex - exporter a hint, that this is an aircraft ( :) ), we rename the object to "FUSELAGE" under the register "Transformation".

This is the point, where I want to refer to the KnifeEdge - Tutorial, which can be found for basic aircrafts here. The hierarchy of 3D - Objects of an aircraft, specifies how the different aircraft - sub - objects are connected in a crash - situation.

In fact, like it is also mentioned in the tutorial, you can name your wing-, rudder-, and engine - parts as you like, as long as they are beginning with ~CS_[Object Name]. But I recommend to stay with the standard naming convention of the tutorial. Especially when people are working on AV's, taking other names can lead to misunderstandings.

How we get the hierarchy into our aircraft using gmax and DE, i will explain later, when we are talking about exporting whole aircrafts.

Let's get back to our test file:

(4) Of course our object should have a texture. Double click on "Explorer Default" - material in the material - tree of the scene - tree - window. The "Material Properties" - dialog box appears.

Under the register "Maps" (Diffuse selected), click on "Browse...", navigate to the folder, where our testmaterial.tga is located, and select it.

Accept everything, by clicking ok in the dialog boxes, which are still open and recognize that a texture file is connected with the "Exporter - Default Material" by appearing of the "T" - Symbol in the materials - tree.

(5) Drag & Drop the "Default - Exporter" - Material on your test - object and firstly delete every other material, which is in the material - tree for test purposes now.

As long as you don't assign your object with another material, you are not able to delete the resting material(s) which are generated by default with Deep Exploration.


Now we have basically setup our 3D-Object to generate a .3DS file for the .kex - exporter. This is what you must do at least to generate a working .3ds file, not speaking of what you must do to specify rotational axes for your aircraft elements, but that comes later...

In the next part, we will learn how to use the 3ds2kex - exporter tool from KE to generate the .KEX file for G3...
 
Last edited:
Part 2.3: Testing setup and configuration: DE export settings; Generating a .KEX file

Welcome to Part 2.3: Finishing the DE export - procedure and using the generated .3ds - file with the .kex - exporter tool from KE.

This tool is thought for generating a .KEX file without 3dsmax. We will have to work in the DOS console of windows, as well as in the generated support file, to change hierachy information if it's needed or for implementing a retractable landing gear.

Let's make a useable .3ds file for the .kex-converter:

After setting up your x. - file in Deep Exploration,

(1) select File->Save As... (and select the folder you want the .3ds - file(s) to be located). Under "File Type" select "3D-Studio-Mesh (*.3ds)" and give your file a name, for example test :) .

(2) Click on "Save". An export-properties dialog box appears. Under the register "Texture Maps", make sure the "export texture" option is activated. Under "convert textures to:" select TARGA image. Leave the rest of the options as they are.

(3) Click on "Ok" and check if a test.3ds file is generated together with a .tga - file.

Ok, let's make a .KEX file, which can be imported into Realflight G3 (3.5):

Download the command-line based kex - exporter if you haven't already done it and unzip the content.

Fire up, windows emulated DOS - command line via START -> Exectue As... -> Type "cmd". The console - window will appear. Every input/output from the console will be written in this font style in the following:

Change to the directory where your unzipped 3ds2kex.exe file is located. For test purposes it's good to locate the exported stuff from the 3ds2kex - Archive in a folder on your Desktop. In the tutorial I named that folder "3ds2kex".

When you start the DOS console, you are normally located in your user folder for windows, simply called "user" on my system. Let's change to the .kex - exporter main program:

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\user>cd Desktop

C:\Documents and Settings\user\Desktop>cd 3ds2kex

C:\Documents and Settings\user\Desktop\3ds2kex>dir

Directory from C:\Documents and Settings\user\Desktop\3ds2kex

02.01.2007 23:45 <DIR> .
02.01.2007 23:45 <DIR> ..
10.03.2006 12:22 385.024 3ds2kex.exe
23.02.2006 18:01 10.084 license.txt
28.02.2006 11:17 4.755 readme.txt
02.01.2007 06:51 <DIR> Samples
02.01.2007 23:45 19.847 test.3ds
02.01.2007 23:45 32.812 testmate.tga
02.01.2007 13:10 3.145.772 testmaterial.tga

6 file(s) 3.598.294 Bytes
3 directory(ies), 6.113.361.920 Bytes free

C:\Documents and Settings\user\Desktop\3ds2kex>


As you can see, I have already copied our generated .3ds - file together with the .tga - file(s) in the same directory.

If you haven't already done the same, copy your test.3ds file and your .tga - file to the same folder and type in the console:

C:\Documents and Settings\user\Desktop\3ds2kex>3ds2kex

usage: 3ds2kex [-l] [-v<N> | -s] [-c] [-?] file.3ds
-l show license agreement and exit
-s suppress license agreement
-v verbose output, N is level 0-3
-c create suplimental data file and exit [see documentation]
-? display help

C:\Documents and Settings\user\Desktop\3ds2kex>


This are the options, which are availabe for the exporter. Cause we are interested in the work of the .kex - exporter and what's happening with our .3ds - file, we are exporting the .3ds - file like I typed it in the following lines, so the export will give back some output:

C:\Documents and Settings\user\Desktop\3ds2kex>3ds2kex -v3 -s test.3ds

Loaded test.3ds.
Processing materials.
Material Material.
Processing nodes.
Node FUSELAGE.
Reading support file.
Applying properties.
Applying heirarchy.
Removing pivot nodes.
Applying node names.
Counting polygons.
RootFrame [0 polys]
FUSELAGE [960 polys]
Writing kex.
Model test.kex has 960 polys.
Done.

C:\Documents and Settings\user\Desktop\3ds2kex>


If you have received something similar to this output -> CONGRATULATIONS!!! You've sucessfully created a .KEX file for the Realfight G3 (3.5) RC Simulator.

If everything worked properly, you should now have two additional files in your folder, generated by the .kex - exporter. A file called test.kex and a file called test.sup. The test.sup is the support file generated by the .kex - exporter. This file is really important, when you are not working with 3dsmax. The exporter will read out this file, when an export is started and make changes to your .KEX file according to the scripting. With this file you have access to hierarchy structure, Pivot Objects, Collision Mesh and retractable landing gears. I will explain in a later part, how you can use this feature and when it is needed for our aircraft.

Let's have a look on what we've created for this great Simulator:

Fire up Realfight G3 (3.5)! and import the test.kex file via Simulation -> Import... -> .KEX .

You should now have under Aircraft -> Select Aircraft... -> Custom Aircraft a new folder called "test" with an aircraft variant called "test" and see your test - object in the preview - Window.
 
Last edited:
Part 3.1: Working with gmax, Materials, Pivots and Hierarchy structure in DE.

Welcome to Part 3.1: Working with gmax, Materials, Pivots and Hierarchy structure in Deep Exploration.

The small foamy aircraft you are seeing in Screenshot 1 below, is the tutorial aircraft, we want to bring into G3 (3.5). It's the 3dbatix-Pitts-S2C from the swap pages, but a lot of objects are missing to make it easier for you to understand the basics of generating an aircraft in gmax and for G3 (3.5) and to prevent that our first .sup - file will be bigger than necessary.

But don't think it will be easy :) There will be 99 Objects to be converted consisting of Aircraft Objects like wings, fuselage, rudders as well as glowing elements (new feature in G3.5), collision- and dummy objects.

To get the export process running, we will first learn how gmax is thinking about materials, hierarchy structure and pivots; where these functions can be edited, and how they will look in Deep Exploration.

Materials and hierarchy in gmax:

Let's have a look on the gmax material editor and the gmax material navigator, which I've marked by a red circle in Screenshot 2.

As you can see we have only two materials on this small foamy. One material for all objects that are visible and coloured called "~SBS", and another material which I called "Collision Mesh". While the Collision Mesh Material is of course only attached to the collision mesh objects, which you can see in the second screenshot, the other objects are linked to the "~SBS" material, which refers to the .tga - texture file of this foamy.

These materials are all "Standard" materials and not "Multi-Materials".

Let's have look on the Track View in Screenshot 3:

As you can see, I have linked all objects to the FUSELAGE as it should be in general for the .kex - exporter. The hierarchy of gmax is holded in the generated .x - file through the export process, but the truth is that because Deep Exploration generates for every object part, wether it is a collision mesh object or a visible aircraft object, a bounding box -frm folder, which should be deleted before you are exporting to the .3ds - file, because they will be refered as DUMMY - objects.

You have to delete these -frm folders and rearrange hierarchy, because the .kex - exporter is thinking of a 3 dimensional object of the bounding box -frm folder from Deep Exploration. If you don't do this, you will end up in a horrible support file output for your .kex - file.

So if you are working with gmax and Deep Exploration keep in mind when you are creating the aircraft, that the less objects you have the less work you have to do in Deep Exploration rearranging hierarchy. The disadvantage from this behavior is, that the more objects of your aircraft you are attaching together to a single object, the more horrible work you will have with the uvw- map- and unwrap - uvw - modifiers to map your aircraft objects with your texture.

But it's general usefull to generate hierarchy in your .gmax - file. Why? Because when you've done hierarchy one's in gmax, you are really fast in generating hierarchy in Deep Exploration as well as keeping hierarchy in your own brain while you are modelling :)

This is sometimes really a shock situation, when you are working on a difficult to model aircraft. :rolleyes:

Pivots in gmax and how they should be setup:

Let's have a look on Screenshot 4: You can access Pivots through "Hierarchy" -> "Affect Pivot only" for each object and move/rotate the pivot point like a normal object. Definition of Pivots should be the last what you are doing on your model before starting the export process; modelling -> texturing -> pivoting -> exporting. That's how it's working good for me :)

After you have finished your modelling work, you should simply select all objects, click on "Affect Pivot only" -> "Reset - Pivot" - > "Center to object" -> "Transform" (In such way they will be all oriented to the world coordinate system of gmax).

Like in the KnifeEdge - Tutorial, arrange the pivots of the rudders (~CS_RME; ~CS_LME; ~CS_RMA; ~CS_LMA; ~CS_MMR in a standard - plane) that the x - axis of the pivot is orientated that way the rudder will rotate in the simulator.

Setting up of your aircraft - .x - file in Deep Exploration:

Let's have a look on our foamy after it's exported to the x. - file in Deep Exploration as you can see in on Screenshot 5:

(1) Click on "Sceen - Tree" and change to "Part - Tree".

(2) Select every aircraft and collision object. The Shift + Left Mouse Click - Method doesn't work here. You select multiple parts through Strg + Left - Mouse - Click.

(3) Click on "Part - Tree" and change back to "Scene - Tree". Your object should stay selected (Screenshot 6).

Because we want to detach every object from these folders, so they will stand alone within the 3D - Scene, we have to do the following:

Right - Click on one object in the "Scene - Tree" - Window and select "Attach to Group..." (Screenshot 7). A "Pick Group" - dialog box appears. Now click on the object in the "Scene - Tree" - Window you want to link to:

(4) Click on the "frm-Master-Scale" - folder an recognize that all objects are linked to this folder, while the other folders are empty now (Screenshot 8).

(5) Delete all frm - bounding - box objects and folders in the "Scene - Tree" - Window and select all remaining objects via Shift + Left - Mouse - Click. Right - Click, select "Detach from Group" and delete the resting "frm-MasterScale - folder", so you are ending up in a hierarchy structure like Screenshot 9.

(6) Select all objects in the "Sceen - Tree" - Window again and Drag & Drop the "Explorer Default" - Materiall into the 3D - Window of Deep - Exploration. Delete the resting materials (Screenshot 10).

Normally, an aicraft designer don't want to give all aircraft parts the same material values. Wood simply look other and make other response to lightning than it does plastic. The .kex - exporter support theoretically an unlimited number of materials, as long as they are all referring to the same .tga - texture file (That's important).

(7 - optional) Create a new material via Right - Click on "Materials" in the "Scene - Tree" - Windows -> "New Material..." and assign them like before to the aircraft - objects that should have different material values. It's absoluteley important that the "Default Explorer" - material in the material is always the first material you are using for your aircraft and have a texture assigned on it. If not, the .kex - exporter will cancel export process, because there are to "few" bitmap - materials.

We now want to setup hierarchy of the different aircraft - objects parts. To understand the hierachy - structure of the aircraft - objects for planes in G3, please read the KnifeEdge - Tutorial here. When you have rearranged hierarchy for the different aircraft - objects in Deep Exploration, your .x - file should look like in Screenshot 10.

(8) Check if the pivots are setup correctly in the x. - file. To do that make sure under View -> Toolbars -> "3D - Editor" is activated and click on the small symbol that I marked with a red circle in Screenshot 11. In Deep Exploration you can actually change Pivot orientation with these small buttons, if something is not set up correctly (MOVING/ROTATING Pivots).

There is a faster way getting out our objects out of the .x - file - folder hierarchy:


When you open your exported x. - file from gmax, directly save it without changes as .3ds - file. When the "3D - Studio - Mesh - Export - Properties" - dialog box appear, deactivate the option "Save hierarchy" and click "Ok".

Close and re-open the saved .3ds - file in Deep Exploration. You will now recognize that all folders have disappeared. And you can directly begin to set up hierarchy for the aircraft, as it is needed. But keep in mind, that you must activate this option again, when you are exporting to a .3ds - file you are also want to export to a .kex - file. If you don't do this the .kex - exporter won't accept your .3ds - file, saying "file has no nodes".

Also keep in mind, that when you re-open the exported .3ds - file in Deep Exploration, nearly every object ist getting an "Axis[Number]" - folder, which is possibly necessary, that Deep Exploration is able to handle Pivots/Nodes. Don't take this file to make changes, cause every re-saveing of the file, will lead to new sub-folders, which are possibly more or less the reason for the generated DUMMY - Objects in the .kex - file.


(9) Now we finally export to the .3ds - file for the .kex - exporter in the same way we did it before with our test - object. But now make sure, when the "3D - Studio Mesh - Export Properties" dialog box appears, that the options "Save Light", "Save Camera" and "Save Default Camera" are deactivated.

-> Click "Ok" :) A .3ds - file and a .tga - file is generated by Deep Exploration.

As you didn't recognized it before, all names of your objects as well as the name of .tga - texture - file are cutted through the export to the x. - file as well as through the export to the .3ds - file over a specific character - length.

Because the exported .x - file doesn't refer correctly to your .tga - texture file and must be correctly assigned in the .3ds - file, we are forced to use the "export texture" - method under Deep Exploration.

There is a another problem (You probably now will think, which of the 1000 do you mean? :) ): The .tga - texture file generated by Deep Exploration is bad. You will recognize that after the export process your .tga - file is much smaller, (probably compressed), and (probably) the name has changed. This definitley leads to errors. While that changed .tga - file doesn't interest the .kex - exporter, it definitley will lead to a horrible texture - looking on you aircraft when you import the generated .kex file from the .kex - exporter. :rolleyes:

To solve that problem simply:

(10) Take your original .tga - texture file generated by GIMP or any other graphic program and overwrite the one generated by Deep Exploration after the export process. Keep in mind that this file must have the same name like the one generated by Deep Exploration, because this is the name the generated .3ds - file is referring to.

In the next part we will export the correctly generated .3ds - file from Deep Exploration to the needed .kex - file for G3 (3.5). Than, we will have to rename the objects in the .sup - file to be able to have access to it in the Realflight G3 (3.5) aircraft editor.
 

Attachments

  • 1.jpg
    1.jpg
    329.1 KB · Views: 314
  • 2.jpg
    2.jpg
    337.9 KB · Views: 195
  • 3.jpg
    3.jpg
    327.3 KB · Views: 177
  • 4.jpg
    4.jpg
    339.8 KB · Views: 184
  • 5.jpg
    5.jpg
    337.3 KB · Views: 204
Last edited:
Part 3.1: Working with gmax, Materials, Pivots and Hierarchy structure in DE.

Additional Screenshots 6 - 10 :)
 

Attachments

  • 6.jpg
    6.jpg
    326.4 KB · Views: 145
  • 7.jpg
    7.jpg
    338.8 KB · Views: 88
  • 8.jpg
    8.jpg
    319 KB · Views: 85
  • 9.jpg
    9.jpg
    296 KB · Views: 84
  • 10.jpg
    10.jpg
    339.2 KB · Views: 139
Part 3.1: Working with gmax, Materials, Pivots and Hierarchy structure in DE.

Additional Screenshot 11 :)
 

Attachments

  • 11.jpg
    11.jpg
    340.6 KB · Views: 222
Part 3.2: Naming convention and hierarchy structure in the .kex - file; Changing .sup

Welcome to Part 3.2: Naming convention and hierarchy structure in the .kex - file; Editing of the .sup - file of the .kex - exporter.

Let's make a .kex - file with the .kex - exporter from our generated .3ds - file with hierarchy and correctly setuped pivots:

Fire up the DOS - console of windows and change to the directory of the 3ds2kex.exe, where should be located your .3ds - file as well as your .tga - texture file.

Input the following commands like I did above and see what the .kex - exporter makes with our .3ds - file:

C:\Documents and Settings\user\Desktop\3ds2kex\ready for .KEX>3ds2kex -v3 -s Pitts-Foamy.3ds

Loaded Pitts-Foamy.3ds.
Processing materials.
Material Material.
Processing nodes.
Node FUSELAGE.
Node $$$DUMMY.
Node MOTORSTABA.
Node $$$DUMMY.
Node MOTORPART0.
Node $$$DUMMY.
Node MOTOR.
Node CONTACT01.
Node CONTACT02.
Node $$$DUMMY.
Node FUSELAGEST.
Node $$$DUMMY.
Node FUSELAGES1.
Node $$$DUMMY.
Node _CS_SPINNE.
Node MOTORPART1.
Node $$$DUMMY.
Node _CS_RMW02.
Node $$$DUMMY.
Node _CS_RMA02.
Node $$$DUMMY.
Node _CS_BULB_3.
Node $$$DUMMY.
Node _CS_GLOW_8.
Node $$$DUMMY.
Node _CS_GLOW_9.
Node _CS_BULB_4.
Node _CS_GLOW11.
Node $$$DUMMY.
Node _CS_RMW01.
Node _CS_BULB_2.
Node _CS_GLOW_6.
Node _CS_GLOW_7.
Node _CS_RMA01.
Node _CS_BULB_R.
Node _CS_GLOW_0.
Node _CS_GLOW_1.
Node $$$DUMMY.
Node _CS_RMHS.
Node _CS_BULB_7.
Node _CS_GLOW20.
Node _CS_GLOW21.
Node _CS_RME.
Node _CS_BULB_6.
Node _CS_GLOW18.
Node _CS_GLOW19.
Node $$$DUMMY.
Node _CS_RIGHTW.
Node _CS_BULB_1.
Node _CS_GLOW_2.
Node _CS_GLOW_3.
Node _CS_GLOW_4.
Node _CS_GLOW_5.
Node $$$DUMMY.
Node _CS_MMVS.
Node _CS_BULB_5.
Node _CS_MMR.
Node _CS_BULB_M.
Node _CS_GLOW12.
Node _CS_GLOW13.
Node _CS_GLOW14.
Node _CS_GLOW15.
Node _CS_GLOW16.
Node _CS_GLOW17.
Node $$$DUMMY.
Node _CS_LMW02.
Node $$$DUMMY.
Node _CS_LMA02.
Node $$$DUMMY.
Node _CS_BULB11.
Node $$$DUMMY.
Node _CS_GLOW30.
Node $$$DUMMY.
Node _CS_GLOW31.
Node _CS_BULB13.
Node _CS_GLOW36.
Node _CS_GLOW37.
Node $$$DUMMY.
Node _CS_LMW01.
Node _CS_BULB10.
Node _CS_GLOW28.
Node _CS_GLOW29.
Node _CS_LEFTWI.
Node _CS_BULB12.
Node _CS_GLOW32.
Node _CS_GLOW33.
Node _CS_GLOW34.
Node _CS_GLOW35.
Node _CS_LMA01.
Node _CS_BULB_9.
Node _CS_GLOW26.
Node _CS_GLOW27.
Node $$$DUMMY.
Node _CS_LMHS.
Node _CS_BULB_8.
Node _CS_GLOW24.
Node _CS_GLOW25.
Node _CS_LME.
Node _CS_BULB_L.
Node _CS_GLOW22.
Node _CS_GLOW23.
Node $$$DUMMY.
Node _CS_GLOW10.
Node $$$DUMMY.
Node _CS_ENGINE.
Node $$$DUMMY.
Node _CS_BULB_F.
Node _CS_COLL10.
Node _CS_COLL11.
Node _CS_COLL12.
Node _CS_COLL13.
Node _CS_COLL_1.
Node _CS_COLL_2.
Node _CS_COLL_3.
Node _CS_COLL_4.
Node _CS_COLL_5.
Node _CS_COLL_6.
Node _CS_COLL_7.
Node _CS_COLL_8.
Node _CS_COLL_9.
Node _CS_COLL_F.
Node _CS_COLL_L.
Node _CS_COLL_M.
Node _CS_COLL_R.
Reading support file.
Applying properties.
Applying heirarchy.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Removing pivot nodes.
Applying node names.
Counting polygons.
RootFrame [0 polys]
FUSELAGE [224 polys]
$$$DUMMY [0 polys]
MOTORSTABA [12 polys]
$$$DUMMY [0 polys]
MOTORPART0 [340 polys]
$$$DUMMY [0 polys]
MOTOR [346 polys]
CONTACT01 [96 polys]
CONTACT02 [96 polys]
$$$DUMMY [0 polys]
FUSELAGEST [80 polys]
$$$DUMMY [0 polys]
FUSELAGES1 [224 polys]
$$$DUMMY [0 polys]
_CS_SPINNE [596 polys]
MOTORPART1 [420 polys]
$$$DUMMY [0 polys]
_CS_RMW02 [107 polys]
_CS_BULB_4 [117 polys]
_CS_GLOW11 [12 polys]
$$$DUMMY [0 polys]
_CS_RMW01 [58 polys]
_CS_BULB_2 [66 polys]
_CS_GLOW_6 [12 polys]
_CS_GLOW_7 [12 polys]
_CS_RMA01 [104 polys]
_CS_BULB_R [18 polys]
_CS_GLOW_0 [12 polys]
_CS_GLOW_1 [12 polys]
$$$DUMMY [0 polys]
_CS_RMHS [45 polys]
_CS_BULB_7 [73 polys]
_CS_GLOW20 [12 polys]
_CS_GLOW21 [12 polys]
_CS_RME [184 polys]
_CS_BULB_6 [20 polys]
_CS_GLOW18 [12 polys]
_CS_GLOW19 [12 polys]
$$$DUMMY [0 polys]
_CS_RIGHTW [116 polys]
_CS_BULB_1 [120 polys]
_CS_GLOW_2 [12 polys]
_CS_GLOW_3 [12 polys]
_CS_GLOW_4 [12 polys]
_CS_GLOW_5 [12 polys]
$$$DUMMY [0 polys]
_CS_MMVS [56 polys]
_CS_BULB_5 [68 polys]
_CS_MMR [211 polys]
_CS_BULB_M [161 polys]
_CS_GLOW12 [12 polys]
_CS_GLOW13 [12 polys]
_CS_GLOW14 [12 polys]
_CS_GLOW15 [12 polys]
_CS_GLOW16 [12 polys]
_CS_GLOW17 [12 polys]
$$$DUMMY [0 polys]
_CS_LMW02 [107 polys]
_CS_BULB13 [117 polys]
_CS_GLOW36 [12 polys]
_CS_GLOW37 [12 polys]
$$$DUMMY [0 polys]
_CS_LMW01 [58 polys]
_CS_BULB10 [66 polys]
_CS_GLOW28 [12 polys]
_CS_GLOW29 [12 polys]
_CS_LEFTWI [116 polys]
_CS_BULB12 [120 polys]
_CS_GLOW32 [12 polys]
_CS_GLOW33 [12 polys]
_CS_GLOW34 [12 polys]
_CS_GLOW35 [12 polys]
_CS_LMA01 [8 polys]
_CS_BULB_9 [18 polys]
_CS_GLOW26 [12 polys]
_CS_GLOW27 [12 polys]
$$$DUMMY [0 polys]
_CS_LMHS [45 polys]
_CS_BULB_8 [73 polys]
_CS_GLOW24 [12 polys]
_CS_GLOW25 [12 polys]
_CS_LME [12 polys]
_CS_BULB_L [20 polys]
_CS_GLOW22 [12 polys]
_CS_GLOW23 [12 polys]
$$$DUMMY [0 polys]
_CS_GLOW10 [12 polys]
$$$DUMMY [0 polys]
_CS_ENGINE [12 polys]
$$$DUMMY [0 polys]
_CS_BULB_F [244 polys]
_CS_COLL10 [34 polys]
_CS_COLL11 [82 polys]
_CS_COLL12 [116 polys]
_CS_COLL13 [58 polys]
_CS_COLL_1 [116 polys]
_CS_COLL_2 [34 polys]
_CS_COLL_3 [82 polys]
_CS_COLL_4 [58 polys]
_CS_COLL_5 [50 polys]
_CS_COLL_6 [28 polys]
_CS_COLL_7 [52 polys]
_CS_COLL_8 [52 polys]
_CS_COLL_9 [12 polys]
_CS_COLL_F [278 polys]
_CS_COLL_L [28 polys]
_CS_COLL_M [120 polys]
_CS_COLL_R [12 polys]
$$$DUMMY [0 polys]
_CS_BULB_3 [68 polys]
$$$DUMMY [0 polys]
_CS_GLOW_8 [12 polys]
$$$DUMMY [0 polys]
_CS_GLOW_9 [12 polys]
$$$DUMMY [0 polys]
_CS_RMA02 [56 polys]
$$$DUMMY [0 polys]
_CS_BULB11 [68 polys]
$$$DUMMY [0 polys]
_CS_GLOW30 [12 polys]
$$$DUMMY [0 polys]
_CS_GLOW31 [12 polys]
$$$DUMMY [0 polys]
_CS_LMA02 [56 polys]
You have excceded 1200 polys [6890]. We suggest reduce the number of polys or use collision meshes.
Writing kex.
Model Pitts-Foamy.kex has 6890 polys.
Done.

C:\Documents and Settings\user\Desktop\3ds2kex\ready for .KEX>


After you've received output like that, please open the generated .sup - file from the .kex - exporter. Cause this is normally not a file format linked to any standard application in windows, your will be asked what programm to use for this file from your windows system. Cause it's a ASCI - file, you can take any write - program. The easiest to take here is the standard - notepad from windows.

Let's see what the .kex - exporter has written in our .sup - file, while generating the .kex - file for us. Cause we have a lot of objects, the . sup file is not really small:

IsPivot=No
Name=_CS_RME
Parent=_CS_RMHS
Pivot=

[_CS_GLOW33]
IsPivot=No
Name=_CS_GLOW33
Parent=_CS_LEFTWI
Pivot=

[$$$DUMMY]
IsPivot=No
Name=$$$DUMMY
Parent=FUSELAGE
Pivot=

[_CS_COLL10]
IsPivot=No
Name=_CS_COLL10
Parent=FUSELAGE
Pivot=

[_CS_BULB_2]
IsPivot=No
Name=_CS_BULB_2
Parent=_CS_RMW01
Pivot=

[_CS_MMVS]
IsPivot=No
Name=_CS_MMVS
Parent=$$$DUMMY
Pivot=

[_CS_COLL12]
IsPivot=No
Name=_CS_COLL12
Parent=FUSELAGE
Pivot=

[_CS_COLL_M]
IsPivot=No
Name=_CS_COLL_M
Parent=FUSELAGE
Pivot=

[_CS_GLOW16]
IsPivot=No
Name=_CS_GLOW16
Parent=_CS_MMR
Pivot=

[_CS_COLL_2]
IsPivot=No
Name=_CS_COLL_2
Parent=FUSELAGE
Pivot=

[_CS_BULB_3]
IsPivot=No
Name=_CS_BULB_3
Parent=$$$DUMMY
Pivot=

[_CS_GLOW34]
IsPivot=No
Name=_CS_GLOW34
Parent=_CS_LEFTWI
Pivot=

[_CS_BULB12]
IsPivot=No
Name=_CS_BULB12
Parent=_CS_LEFTWI
Pivot=

[_CS_GLOW22]
IsPivot=No
Name=_CS_GLOW22
Parent=_CS_LME
Pivot=

[_CS_BULB_4]
IsPivot=No
Name=_CS_BULB_4
Parent=_CS_RMW02
Pivot=

[_CS_GLOW26]
IsPivot=No
Name=_CS_GLOW26
Parent=_CS_LMA01
Pivot=

[_CS_GLOW14]
IsPivot=No
Name=_CS_GLOW14
Parent=_CS_MMR
Pivot=

[_CS_GLOW35]
IsPivot=No
Name=_CS_GLOW35
Parent=_CS_LEFTWI
Pivot=

[_CS_RMW01]
IsPivot=No
Name=_CS_RMW01
Parent=$$$DUMMY
Pivot=

[_CS_GLOW_9]
IsPivot=No
Name=_CS_GLOW_9
Parent=$$$DUMMY
Pivot=

[RootFrame]
IsPivot=No
Name=RootFrame
Parent=
Pivot=

[_CS_LMA02]
IsPivot=No
Name=_CS_LMA02
Parent=$$$DUMMY
Pivot=

[_CS_COLL_3]
IsPivot=No
Name=_CS_COLL_3
Parent=FUSELAGE
Pivot=

[FUSELAGEST]
IsPivot=No
Name=FUSELAGEST
Parent=$$$DUMMY
Pivot=

[_CS_BULB_5]
IsPivot=No
Name=_CS_BULB_5
Parent=_CS_MMVS
Pivot=

[_CS_GLOW_8]
IsPivot=No
Name=_CS_GLOW_8
Parent=$$$DUMMY
Pivot=

[_CS_BULB_R]
IsPivot=No
Name=_CS_BULB_R
Parent=_CS_RMA01
Pivot=

[_CS_GLOW36]
IsPivot=No
Name=_CS_GLOW36
Parent=_CS_LMW02
Pivot=

[_CS_GLOW12]
IsPivot=No
Name=_CS_GLOW12
Parent=_CS_MMR
Pivot=

[_CS_GLOW_7]
IsPivot=No
Name=_CS_GLOW_7
Parent=_CS_RMW01
Pivot=

[_CS_RIGHTW]
IsPivot=No
Name=_CS_RIGHTW
Parent=$$$DUMMY
Pivot=

[_CS_COLL_F]
IsPivot=No
Name=_CS_COLL_F
Parent=FUSELAGE
Pivot=

[_CS_BULB_6]
IsPivot=No
Name=_CS_BULB_6
Parent=_CS_RME
Pivot=

[_CS_COLL_4]
IsPivot=No
Name=_CS_COLL_4
Parent=FUSELAGE
Pivot=

[_CS_GLOW_6]
IsPivot=No
Name=_CS_GLOW_6
Parent=_CS_RMW01
Pivot=

[CONTACT02]
IsPivot=No
Name=CONTACT02
Parent=MOTOR
Pivot=

[_CS_GLOW21]
IsPivot=No
Name=_CS_GLOW21
Parent=_CS_RMHS
Pivot=

[_CS_GLOW37]
IsPivot=No
Name=_CS_GLOW37
Parent=_CS_LMW02
Pivot=

[_CS_GLOW_5]
IsPivot=No
Name=_CS_GLOW_5
Parent=_CS_RIGHTW
Pivot=

[_CS_LEFTWI]
IsPivot=No
Name=_CS_LEFTWI
Parent=_CS_LMW01
Pivot=

[_CS_GLOW10]
IsPivot=No
Name=_CS_GLOW10
Parent=$$$DUMMY
Pivot=

[_CS_BULB_7]
IsPivot=No
Name=_CS_BULB_7
Parent=_CS_RMHS
Pivot=

[_CS_LME]
IsPivot=No
Name=_CS_LME
Parent=_CS_LMHS
Pivot=

[_CS_GLOW25]
IsPivot=No
Name=_CS_GLOW25
Parent=_CS_LMHS
Pivot=

[_CS_LMW01]
IsPivot=No
Name=_CS_LMW01
Parent=$$$DUMMY
Pivot=

[_CS_BULB_F]
IsPivot=No
Name=_CS_BULB_F
Parent=$$$DUMMY
Pivot=

[_CS_GLOW_4]
IsPivot=No
Name=_CS_GLOW_4
Parent=_CS_RIGHTW
Pivot=

[_CS_COLL_5]
IsPivot=No
Name=_CS_COLL_5
Parent=FUSELAGE
Pivot=

[_CS_GLOW19]
IsPivot=No
Name=_CS_GLOW19
Parent=_CS_RME
Pivot=

[_CS_BULB_8]
IsPivot=No
Name=_CS_BULB_8
Parent=_CS_LMHS
Pivot=

[_CS_LMHS]
IsPivot=No
Name=_CS_LMHS
Parent=$$$DUMMY
Pivot=

[_CS_GLOW_3]
IsPivot=No
Name=_CS_GLOW_3
Parent=_CS_RIGHTW
Pivot=

[_CS_GLOW29]
IsPivot=No
Name=_CS_GLOW29
Parent=_CS_LMW01
Pivot=

[_CS_ENGINE]
IsPivot=No
Name=_CS_ENGINE
Parent=$$$DUMMY
Pivot=

[_CS_GLOW_2]
IsPivot=No
Name=_CS_GLOW_2
Parent=_CS_RIGHTW
Pivot=

[_CS_BULB_9]
IsPivot=No
Name=_CS_BULB_9
Parent=_CS_LMA01
Pivot=

[_CS_BULB11]
IsPivot=No
Name=_CS_BULB11
Parent=$$$DUMMY
Pivot=

[_CS_GLOW17]
IsPivot=No
Name=_CS_GLOW17
Parent=_CS_MMR
Pivot=

[_CS_COLL_6]
IsPivot=No
Name=_CS_COLL_6
Parent=FUSELAGE
Pivot=

[_CS_COLL11]
IsPivot=No
Name=_CS_COLL11
Parent=FUSELAGE
Pivot=

[_CS_GLOW_1]
IsPivot=No
Name=_CS_GLOW_1
Parent=_CS_RMA01
Pivot=

[_CS_GLOW20]
IsPivot=No
Name=_CS_GLOW20
Parent=_CS_RMHS
Pivot=

[_CS_COLL13]
IsPivot=No
Name=_CS_COLL13
Parent=FUSELAGE
Pivot=

[_CS_GLOW_0]
IsPivot=No
Name=_CS_GLOW_0
Parent=_CS_RMA01
Pivot=

[_CS_RMA01]
IsPivot=No
Name=_CS_RMA01
Parent=_CS_RMW01
Pivot=

[_CS_COLL_R]
IsPivot=No
Name=_CS_COLL_R
Parent=FUSELAGE
Pivot=

[_CS_RMW02]
IsPivot=No
Name=_CS_RMW02
Parent=$$$DUMMY
Pivot=

[_CS_GLOW15]
IsPivot=No
Name=_CS_GLOW15
Parent=_CS_MMR
Pivot=

[_CS_GLOW24]
IsPivot=No
Name=_CS_GLOW24
Parent=_CS_LMHS
Pivot=

[MOTORSTABA]
IsPivot=No
Name=MOTORSTABA
Parent=$$$DUMMY
Pivot=

[_CS_COLL_7]
IsPivot=No
Name=_CS_COLL_7
Parent=FUSELAGE
Pivot=

[MOTORPART1]
IsPivot=No
Name=MOTORPART1
Parent=_CS_SPINNE
Pivot=

[_CS_BULB13]
IsPivot=No
Name=_CS_BULB13
Parent=_CS_LMW02
Pivot=

[_CS_GLOW28]
IsPivot=No
Name=_CS_GLOW28
Parent=_CS_LMW01
Pivot=

[_CS_GLOW13]
IsPivot=No
Name=_CS_GLOW13
Parent=_CS_MMR
Pivot=

[_CS_MMR]
IsPivot=No
Name=_CS_MMR
Parent=_CS_MMVS
Pivot=

[CONTACT01]
IsPivot=No
Name=CONTACT01
Parent=MOTOR
Pivot=

[_CS_RMHS]
IsPivot=No
Name=_CS_RMHS
Parent=$$$DUMMY
Pivot=

[_CS_COLL_8]
IsPivot=No
Name=_CS_COLL_8
Parent=FUSELAGE
Pivot=

[FUSELAGE]
IsPivot=No
Name=FUSELAGE
Parent=RootFrame
Pivot=

[_CS_GLOW30]
IsPivot=No
Name=_CS_GLOW30
Parent=$$$DUMMY
Pivot=

[MOTOR]
IsPivot=No
Name=MOTOR
Parent=$$$DUMMY
Pivot=

[MOTORPART0]
IsPivot=No
Name=MOTORPART0
Parent=$$$DUMMY
Pivot=

[_CS_GLOW11]
IsPivot=No
Name=_CS_GLOW11
Parent=_CS_RMW02
Pivot=

[_CS_BULB_L]
IsPivot=No
Name=_CS_BULB_L
Parent=_CS_LME
Pivot=

[_CS_LMW02]
IsPivot=No
Name=_CS_LMW02
Parent=$$$DUMMY
Pivot=

[_CS_GLOW31]
IsPivot=No
Name=_CS_GLOW31
Parent=$$$DUMMY
Pivot=

[_CS_COLL_9]
IsPivot=No
Name=_CS_COLL_9
Parent=FUSELAGE
Pivot=

[_CS_GLOW23]
IsPivot=No
Name=_CS_GLOW23
Parent=_CS_LME
Pivot=

[_CS_RMA02]
IsPivot=No
Name=_CS_RMA02
Parent=$$$DUMMY
Pivot=

[_CS_BULB_M]
IsPivot=No
Name=_CS_BULB_M
Parent=_CS_MMR
Pivot=

[FUSELAGES1]
IsPivot=No
Name=FUSELAGES1
Parent=$$$DUMMY
Pivot=

[_CS_GLOW27]
IsPivot=No
Name=_CS_GLOW27
Parent=_CS_LMA01
Pivot=

[_CS_GLOW32]
IsPivot=No
Name=_CS_GLOW32
Parent=_CS_LEFTWI
Pivot=

[_CS_BULB10]
IsPivot=No
Name=_CS_BULB10
Parent=_CS_LMW01
Pivot=

[_CS_LMA01]
IsPivot=No
Name=_CS_LMA01
Parent=_CS_LMW01
Pivot=

[_CS_SPINNE]
IsPivot=No
Name=_CS_SPINNE
Parent=$$$DUMMY
Pivot=

[_CS_COLL_L]
IsPivot=No
Name=_CS_COLL_L
Parent=FUSELAGE
Pivot=

[_CS_BULB_1]
IsPivot=No
Name=_CS_BULB_1
Parent=_CS_RIGHTW
Pivot=

[_CS_GLOW18]
IsPivot=No
Name=_CS_GLOW18
Parent=_CS_RME
Pivot=

[_CS_COLL_1]
IsPivot=No
Name=_CS_COLL_1
Parent=FUSELAGE
Pivot=


As you can see, every object, that is exported by the .kex - exporter is refered in the .sup - file as:

[Object Name] -> Object Name like the .kex - exporter is finding that object in the .3ds - file

IsPivot=No -> If the .kex - exporter is thinking, that this is a Pivot - Dummy - Object or not.

Name=[New Object Name] -> Name how the object will be exported and refered in the .kex file. That's important, because only objects with ~CS_ will be selectable in the aircraft editor of G3 (3.5) as component frame.

Parent=[Parented object in hierachy above] -> To which other object [Object Name] will be linked in the exported .kex - file. Here is your last chance to change hierarchy structure after you've exported your x. - file to the .3ds - file.

Pivot= ->

To stick with the readme - file of the .kex - exporter:

The pivot mesh is a primitive mesh that is used for its local origin and orientation. Meshes that reference pivots will automatically have their pivot axes moved to match that of the pivot dummy node.

Pivot - Objects are a very unique feature of 3dsmax itself. Cause we have luck, and gmax is "nearly" the same editor like 3dsmax and from the version standard also support Pivots, which are kept during the export - process from .gmax - files to .x - files, you should never see something in that line as long as you are working with gmax.

This line will become very important, if you are not working with gmax. Cause Deep Exploration is able to handle a huge amount of 3D -, and CAD - formats, which not all supports Pivoting (I call it like that now :) ), you are not bound to gmax by 100%. As said in the readme of the .kex - exporter, and as we will see later in the pp - example file from KE, we can simply create Dummy - Objects in any 3D - editor we like and refer them with the .kex - exporter as Pivot point. That's a really cool feature of this .sup - file KE, thank you!

But let me say something to that in addition: The problem with this hole thing "Make your own aircraft in whatever software you like" never was and never will be the problem, a lot of people designing with other 3d - editors are fighting to death. Especially NOT the Pivoting!

THE PROBLEM IS THE FILE - FORMAT ITSELF!

The .3ds - file format has a very special Node system, describing hierarchy structure and objects. While 3dsmax of course can handle with that, NO freeware .3ds - exporter, or freeware 3D - editors is able to handle that.

Let's get back to our .sup - file. Cause every object that should be selectable as component frame in the aircraft editor of G3 (3.5) must begin with "~CS_", we now will rename every object that we want to create as physical component in the aircraft editor of G3 (3.5).

That means: The fuselage, all wing and rudder areas (seperated in left in right), all rudders and every other object that you want to be able to rotate. Please have a look on the pp - example - files and the KnifeEdge - Tutorials for further informations.

Every other object not having this naming convention will be attached in hierarchy to the next object part in hierarchy above, till your are ending in a "~CS_" - object. For example, if you have a left wing called like in the KE - Tutorials, "~CS_LMW" and have a winglet - object called "Winglet" in hierarchy linked below this object, the winglet - object will be attached to the "~CS_LMW" - object and if the wing falls apart during a crash, the winglet - object will stick on the "~CS_LMW" - object like glue, because "~CS_LMW" - object and the "Winglet" - object became one object, when you export from .3ds to .kex with a .sup file setup like that. :rolleyes::rolleyes::rolleyes::rolleyes:

So you will not be able to see that winglet object in the aircraft editor of G3 (3.5), when you give it only the name "Winglet".

Somebody now will think, why we didn't changed the naming of the object in Deep Exploration, so we only have to export the file from .3ds to .kex and everything is fine.

The reason is, that every object whether you name it in gmax or in Deep Exploration with ~CS_[OBJECT NAME] is exported into .x and .3ds as _CS_[OBJECT NAME].

Well, probably someone will now be thinking, that the developers of G3 (3.5) had deactivated their brains when the decision was made to make aircrafts for G3 in .3ds and referring all object as "~CS_" (please don't kill me KE :eek: ) The "~" - sign is a special sign and in fact the most efficient export/import - killer working between nearly all file formats.

Although it's difficult to handle, slow and not reliable .3ds is a good file format. The main reason: You can do EVERYTHING with 3dsmax -> Modelling, Animation, Rendering, CAD - Design................................

Let's change the naming of your objects in the following way:

(1) If an object should be selectable as component frame in the aircraft editor of G3 (3.5), change the ouput in the .sup - file from that:

[_CS_RMHS]
IsPivot=No
Name=_CS_RMHS
Parent=FUSELAGE
Pivot=


to that:

[_CS_RMHS]
IsPivot=No
Name=~CS_RMHS
Parent=FUSELAGE
Pivot=


(2) If an object should not be selectable as component frame in the aircraft editor of G3 (3.5) leave the entry in the .sup - file as it is. BUT check, to what "Parent" it is linked and if these two object's should become one.

Keep also in mind, that the name of "Parent" - object is the name, how it is written in your .sup - file. So don't make changes like that in the .sup - file:

[_CS_RME]
IsPivot=No
Name=~CS_RME
Parent=~CS_RMHS
Pivot=

It have to be edited in your .sup - file like that, because ~CS_RMHS is refered in your .sup - file as "_CS_RMHS":

[_CS_RME]
IsPivot=No
Name=~CS_RME
Parent=_CS_RMHS
Pivot=


Let's have a look on our .sup - file after the needed changes:

[_CS_RME]
IsPivot=No
Name=~CS_RME
Parent=_CS_RMHS
Pivot=

[_CS_GLOW33]
IsPivot=No
Name=~CS_GLOW33
Parent=_CS_LEFTWI
Pivot=

[_CS_COLL10]
IsPivot=No
Name=~CS_COLL10
Parent=FUSELAGE
Pivot=

[_CS_BULB_2]
IsPivot=No
Name=~CS_BULB_2
Parent=_CS_RMW01
Pivot=

[_CS_MMVS]
IsPivot=No
Name=~CS_MMVS
Parent=FUSELAGE
Pivot=

[_CS_COLL12]
IsPivot=No
Name=~CS_COLL12
Parent=FUSELAGE
Pivot=

[_CS_COLL_M]
IsPivot=No
Name=~CS_COLL_M
Parent=FUSELAGE
Pivot=

[_CS_GLOW16]
IsPivot=No
Name=~CS_GLOW16
Parent=_CS_MMR
Pivot=

[_CS_COLL_2]
IsPivot=No
Name=~CS_COLL_2
Parent=_CS_RMW01
Pivot=

[_CS_BULB_3]
IsPivot=No
Name=~CS_BULB_3
Parent=_CS_RMA02
Pivot=

[_CS_GLOW34]
IsPivot=No
Name=~CS_GLOW34
Parent=_CS_LEFTWI
Pivot=

[_CS_BULB12]
IsPivot=No
Name=~CS_BULB12
Parent=_CS_LEFTWI
Pivot=

[_CS_GLOW22]
IsPivot=No
Name=~CS_GLOW22
Parent=_CS_LME
Pivot=

[_CS_BULB_4]
IsPivot=No
Name=~CS_BULB_4
Parent=_CS_RMW02
Pivot=

[_CS_GLOW26]
IsPivot=No
Name=~CS_GLOW26
Parent=_CS_LMA01
Pivot=

[_CS_GLOW14]
IsPivot=No
Name=~CS_GLOW14
Parent=_CS_MMR
Pivot=

[_CS_GLOW35]
IsPivot=No
Name=~CS_GLOW35
Parent=_CS_LEFTWI
Pivot=

[_CS_RMW01]
IsPivot=No
Name=~CS_RMW01
Parent=FUSELAGE
Pivot=

[_CS_GLOW_9]
IsPivot=No
Name=~CS_GLOW_9
Parent=_CS_RMA02
Pivot=

[RootFrame]
IsPivot=No
Name=RootFrame
Parent=
Pivot=

[_CS_LMA02]
IsPivot=No
Name=~CS_LMA02
Parent=FUSELAGE
Pivot=

[_CS_COLL_3]
IsPivot=No
Name=~CS_COLL_3
Parent=FUSELAGE
Pivot=

[FUSELAGEST]
IsPivot=No
Name=FUSELAGEST
Parent=FUSELAGE
Pivot=

[_CS_BULB_5]
IsPivot=No
Name=~CS_BULB_5
Parent=_CS_MMVS
Pivot=

[_CS_GLOW_8]
IsPivot=No
Name=~CS_GLOW_8
Parent=_CS_RMA02
Pivot=

[_CS_BULB_R]
IsPivot=No
Name=~CS_BULB_R
Parent=_CS_RMA01
Pivot=

[_CS_GLOW36]
IsPivot=No
Name=~CS_GLOW36
Parent=_CS_LMW02
Pivot=

[_CS_GLOW12]
IsPivot=No
Name=~CS_GLOW12
Parent=_CS_MMR
Pivot=

[_CS_GLOW_7]
IsPivot=No
Name=~CS_GLOW_7
Parent=_CS_RMW01
Pivot=

[_CS_RIGHTW]
IsPivot=No
Name=_CS_RIGHTW
Parent=_CS_RMw01
Pivot=

[_CS_COLL_F]
IsPivot=No
Name=~CS_COLL_F
Parent=FUSELAGE
Pivot=

[_CS_BULB_6]
IsPivot=No
Name=~CS_BULB_6
Parent=_CS_RME
Pivot=

[_CS_COLL_4]
IsPivot=No
Name=~CS_COLL_4
Parent=FUSELAGE
Pivot=

[_CS_GLOW_6]
IsPivot=No
Name=~CS_GLOW_6
Parent=_CS_RMW01
Pivot=

[CONTACT02]
IsPivot=No
Name=CONTACT02
Parent=MOTOR
Pivot=

[_CS_GLOW21]
IsPivot=No
Name=~CS_GLOW21
Parent=_CS_RMHS
Pivot=

[_CS_GLOW37]
IsPivot=No
Name=~CS_GLOW37
Parent=_CS_LMW02
Pivot=

[_CS_GLOW_5]
IsPivot=No
Name=~CS_GLOW_5
Parent=_CS_RIGHTW
Pivot=

[_CS_LEFTWI]
IsPivot=No
Name=_CS_LEFTWI
Parent=_CS_LMW01
Pivot=

[_CS_GLOW10]
IsPivot=No
Name=~CS_GLOW10
Parent=_CS_RMW02
Pivot=

[_CS_BULB_7]
IsPivot=No
Name=~CS_BULB_7
Parent=_CS_RMHS
Pivot=

[_CS_LME]
IsPivot=No
Name=~CS_LME
Parent=_CS_LMHS
Pivot=

[_CS_GLOW25]
IsPivot=No
Name=~CS_GLOW25
Parent=_CS_LMHS
Pivot=

[_CS_LMW01]
IsPivot=No
Name=~CS_LMW01
Parent=FUSELAGE
Pivot=

[_CS_BULB_F]
IsPivot=No
Name=~CS_BULB_F
Parent=FUSELAGE
Pivot=

[_CS_GLOW_4]
IsPivot=No
Name=~CS_GLOW_4
Parent=_CS_RIGHTW
Pivot=

[_CS_COLL_5]
IsPivot=No
Name=~CS_COLL_5
Parent=FUSELAGE
Pivot=

[_CS_GLOW19]
IsPivot=No
Name=~CS_GLOW19
Parent=_CS_RME
Pivot=

[_CS_BULB_8]
IsPivot=No
Name=~CS_BULB_8
Parent=_CS_LMHS
Pivot=

[_CS_LMHS]
IsPivot=No
Name=~CS_LMHS
Parent=FUSELAGE
Pivot=

[_CS_GLOW_3]
IsPivot=No
Name=~CS_GLOW_3
Parent=_CS_RIGHTW
Pivot=

[_CS_GLOW29]
IsPivot=No
Name=~CS_GLOW29
Parent=_CS_LMW01
Pivot=

[_CS_ENGINE]
IsPivot=No
Name=~CS_ENGINE1
Parent=FUSELAGE
Pivot=

[_CS_GLOW_2]
IsPivot=No
Name=~CS_GLOW_2
Parent=_CS_RIGHTW
Pivot=

[_CS_BULB_9]
IsPivot=No
Name=~CS_BULB_9
Parent=_CS_LMA01
Pivot=

[_CS_BULB11]
IsPivot=No
Name=~CS_BULB11
Parent=_CS_LMA02
Pivot=

[_CS_GLOW17]
IsPivot=No
Name=~CS_GLOW17
Parent=_CS_MMR
Pivot=

[_CS_COLL_6]
IsPivot=No
Name=~CS_COLL_6
Parent=FUSELAGE
Pivot=

[_CS_COLL11]
IsPivot=No
Name=~CS_COLL11
Parent=FUSELAGE
Pivot=

[_CS_GLOW_1]
IsPivot=No
Name=~CS_GLOW_1
Parent=_CS_RMA01
Pivot=

[_CS_GLOW20]
IsPivot=No
Name=~CS_GLOW20
Parent=_CS_RMHS
Pivot=

[_CS_COLL13]
IsPivot=No
Name=~CS_COLL13
Parent=FUSELAGE
Pivot=

[_CS_GLOW_0]
IsPivot=No
Name=~CS_GLOW_0
Parent=_CS_RMA01
Pivot=

[_CS_RMA01]
IsPivot=No
Name=~CS_RMA01
Parent=_CS_RMW01
Pivot=

[_CS_COLL_R]
IsPivot=No
Name=~CS_COLL_R
Parent=FUSELAGE
Pivot=

[_CS_RMW02]
IsPivot=No
Name=~CS_RMW02
Parent=FUSELAGE
Pivot=

[_CS_GLOW15]
IsPivot=No
Name=~CS_GLOW15
Parent=_CS_MMR
Pivot=

[_CS_GLOW24]
IsPivot=No
Name=~CS_GLOW24
Parent=_CS_LMHS
Pivot=

[MOTORSTABA]
IsPivot=No
Name=MOTORSTABA
Parent=FUSELAGE
Pivot=

[_CS_COLL_7]
IsPivot=No
Name=~CS_COLL_7
Parent=FUSELAGE
Pivot=

[MOTORPART1]
IsPivot=No
Name=MOTORPART1
Parent=FUSELAGE
Pivot=

[_CS_BULB13]
IsPivot=No
Name=~CS_BULB13
Parent=_CS_LMW02
Pivot=

[_CS_GLOW28]
IsPivot=No
Name=~CS_GLOW28
Parent=_CS_LMW01
Pivot=

[_CS_GLOW13]
IsPivot=No
Name=~CS_GLOW13
Parent=_CS_MMR
Pivot=

[_CS_MMR]
IsPivot=No
Name=~CS_MMR
Parent=_CS_MMVS
Pivot=

[CONTACT01]
IsPivot=No
Name=CONTACT01
Parent=MOTOR
Pivot=

[_CS_RMHS]
IsPivot=No
Name=~CS_RMHS
Parent=FUSELAGE
Pivot=

[_CS_COLL_8]
IsPivot=No
Name=~CS_COLL_8
Parent=FUSELAGE
Pivot=

[FUSELAGE]
IsPivot=No
Name=FUSELAGE
Parent=RootFrame
Pivot=

[_CS_GLOW30]
IsPivot=No
Name=~CS_GLOW30
Parent=_CS_LMA02
Pivot=

[MOTOR]
IsPivot=No
Name=MOTOR
Parent=FUSELAGE
Pivot=

[MOTORPART0]
IsPivot=No
Name=MOTORPART0
Parent=FUSELAGE
Pivot=

[_CS_GLOW11]
IsPivot=No
Name=~CS_GLOW11
Parent=_CS_RMW02
Pivot=

[_CS_BULB_L]
IsPivot=No
Name=~CS_BULB_L
Parent=_CS_LME
Pivot=

[_CS_LMW02]
IsPivot=No
Name=~CS_LMW02
Parent=FUSELAGE
Pivot=

[_CS_GLOW31]
IsPivot=No
Name=~CS_GLOW31
Parent=_CS_LMA02
Pivot=

[_CS_COLL_9]
IsPivot=No
Name=~CS_COLL_9
Parent=FUSELAGE
Pivot=

[_CS_GLOW23]
IsPivot=No
Name=~CS_GLOW23
Parent=_CS_LME
Pivot=

[_CS_RMA02]
IsPivot=No
Name=~CS_RMA02
Parent=FUSELAGE
Pivot=

[_CS_BULB_M]
IsPivot=No
Name=~CS_BULB_M
Parent=_CS_MMR
Pivot=

[FUSELAGES1]
IsPivot=No
Name=FUSELAGES1
Parent=FUSELAGE
Pivot=

[_CS_GLOW27]
IsPivot=No
Name=~CS_GLOW27
Parent=_CS_LMA01
Pivot=

[_CS_GLOW32]
IsPivot=No
Name=~CS_GLOW32
Parent=_CS_LEFTWI
Pivot=

[_CS_BULB10]
IsPivot=No
Name=~CS_BULB10
Parent=_CS_LMW01
Pivot=

[_CS_LMA01]
IsPivot=No
Name=~CS_LMA01
Parent=_CS_LMW01
Pivot=

[_CS_SPINNE]
IsPivot=No
Name=~CS_SPINNER1
Parent=FUSELAGE
Pivot=

[_CS_COLL_L]
IsPivot=No
Name=~CS_COLL_L
Parent=FUSELAGE
Pivot=

[_CS_BULB_1]
IsPivot=No
Name=~CS_BULB_1
Parent=_CS_RIGHTW
Pivot=

[_CS_GLOW18]
IsPivot=No
Name=~CS_GLOW18
Parent=_CS_RME
Pivot=

[_CS_COLL_1]
IsPivot=No
Name=~CS_COLL_1
Parent=FUSELAGE
Pivot=

(3) Save your .sup - file and make a backup - copy of it. If you are editing objects in gmax and export a new changed .x - file, which you export to .3ds too, you will not have to edit the whole .sup - file again, as long as you have not changed the names of the objects. If you don't make a copy, the .kex - exporter will overwrite your old .sup - file with changes without prompting and you will have to edit the whole .sup file again.

Let's have a look what the .kex - exporter makes with our changed .sup - file:

(4) Change back to the DOS-console and input the following:

C:\Documents and Settings\user\Desktop\3ds2kex\3ds2kex -v3 -s Pitts-Foamy.3ds

[...]
(The ouput was to big, so that not everything could be saved in the buffer of the console; here is standing the interesting part)

Node _CS_GLOW34.
Node _CS_GLOW35.
Node _CS_LMA01.
Node _CS_BULB_9.
Node _CS_GLOW26.
Node _CS_GLOW27.
Node $$$DUMMY.
Node _CS_LMHS.
Node _CS_BULB_8.
Node _CS_GLOW24.
Node _CS_GLOW25.
Node _CS_LME.
Node _CS_BULB_L.
Node _CS_GLOW22.
Node _CS_GLOW23.
Node $$$DUMMY.
Node _CS_GLOW10.
Node $$$DUMMY.
Node _CS_ENGINE.
Node $$$DUMMY.
Node _CS_BULB_F.
Node _CS_COLL10.
Node _CS_COLL11.
Node _CS_COLL12.
Node _CS_COLL13.
Node _CS_COLL_1.
Node _CS_COLL_2.
Node _CS_COLL_3.
Node _CS_COLL_4.
Node _CS_COLL_5.
Node _CS_COLL_6.
Node _CS_COLL_7.
Node _CS_COLL_8.
Node _CS_COLL_9.
Node _CS_COLL_F.
Node _CS_COLL_L.
Node _CS_COLL_M.
Node _CS_COLL_R.
Reading support file.
Applying properties.
Applying heirarchy.

Reparenting MOTORSTABA to FUSELAGE.
Reparenting MOTORPART0 to FUSELAGE.
Reparenting MOTOR to FUSELAGE.
Reparenting FUSELAGEST to FUSELAGE.
Reparenting FUSELAGES1 to FUSELAGE.
Reparenting MOTORPART1 to FUSELAGE.
Reparenting _CS_SPINNE to FUSELAGE.
Reparenting _CS_BULB_3 to _CS_RMA02.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_GLOW_8 to _CS_RMA02.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_GLOW_9 to _CS_RMA02.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_RMA02 to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_RMW02 to FUSELAGE.
Reparenting _CS_RMW01 to FUSELAGE.
Reparenting _CS_RMHS to FUSELAGE.
Reparenting _CS_RIGHTW to _CS_RMW01.
Reparenting _CS_MMVS to FUSELAGE.
Reparenting _CS_BULB11 to _CS_LMA02.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_GLOW30 to _CS_LMA02.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_GLOW31 to _CS_LMA02.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_LMA02 to FUSELAGE.
Reparenting $$$DUMMY to FUSELAGE.
Reparenting _CS_LMW02 to FUSELAGE.
Reparenting _CS_LMW01 to FUSELAGE.
Reparenting _CS_LMHS to FUSELAGE.
Reparenting _CS_GLOW10 to _CS_RMW02.
Reparenting _CS_ENGINE to FUSELAGE.
Reparenting _CS_BULB_F to FUSELAGE.
Reparenting _CS_COLL_2 to _CS_RMW01.
Removing pivot nodes.
Applying node names.
Renaming _CS_COLL10 to ~CS_COLL10.
Renaming _CS_COLL11 to ~CS_COLL11.
Renaming _CS_COLL12 to ~CS_COLL12.
Renaming _CS_COLL13 to ~CS_COLL13.
Renaming _CS_COLL_1 to ~CS_COLL_1.
Renaming _CS_COLL_3 to ~CS_COLL_3.
Renaming _CS_COLL_4 to ~CS_COLL_4.
Renaming _CS_COLL_5 to ~CS_COLL_5.
Renaming _CS_COLL_6 to ~CS_COLL_6.
Renaming _CS_COLL_7 to ~CS_COLL_7.
Renaming _CS_COLL_8 to ~CS_COLL_8.
Renaming _CS_COLL_9 to ~CS_COLL_9.
Renaming _CS_COLL_F to ~CS_COLL_F.
Renaming _CS_COLL_L to ~CS_COLL_L.
Renaming _CS_COLL_M to ~CS_COLL_M.
Renaming _CS_COLL_R to ~CS_COLL_R.
Renaming _CS_SPINNE to ~CS_SPINNER1.
Renaming _CS_RMA02 to ~CS_RMA02.
Renaming _CS_BULB_3 to ~CS_BULB_3.
Renaming _CS_GLOW_8 to ~CS_GLOW_8.
Renaming _CS_GLOW_9 to ~CS_GLOW_9.
Renaming _CS_RMW02 to ~CS_RMW02.
Renaming _CS_BULB_4 to ~CS_BULB_4.
Renaming _CS_GLOW11 to ~CS_GLOW11.
Renaming _CS_GLOW10 to ~CS_GLOW10.
Renaming _CS_RMW01 to ~CS_RMW01.
Renaming _CS_BULB_2 to ~CS_BULB_2.
Renaming _CS_GLOW_6 to ~CS_GLOW_6.
Renaming _CS_GLOW_7 to ~CS_GLOW_7.
Renaming _CS_RMA01 to ~CS_RMA01.
Renaming _CS_BULB_R to ~CS_BULB_R.
Renaming _CS_GLOW_0 to ~CS_GLOW_0.
Renaming _CS_GLOW_1 to ~CS_GLOW_1.
Renaming _CS_BULB_1 to ~CS_BULB_1.
Renaming _CS_GLOW_2 to ~CS_GLOW_2.
Renaming _CS_GLOW_3 to ~CS_GLOW_3.
Renaming _CS_GLOW_4 to ~CS_GLOW_4.
Renaming _CS_GLOW_5 to ~CS_GLOW_5.
Renaming _CS_COLL_2 to ~CS_COLL_2.
Renaming _CS_RMHS to ~CS_RMHS.
Renaming _CS_BULB_7 to ~CS_BULB_7.
Renaming _CS_GLOW20 to ~CS_GLOW20.
Renaming _CS_GLOW21 to ~CS_GLOW21.
Renaming _CS_RME to ~CS_RME.
Renaming _CS_BULB_6 to ~CS_BULB_6.
Renaming _CS_GLOW18 to ~CS_GLOW18.
Renaming _CS_GLOW19 to ~CS_GLOW19.
Renaming _CS_MMVS to ~CS_MMVS.
Renaming _CS_BULB_5 to ~CS_BULB_5.
Renaming _CS_MMR to ~CS_MMR.
Renaming _CS_BULB_M to ~CS_BULB_M.
Renaming _CS_GLOW12 to ~CS_GLOW12.
Renaming _CS_GLOW13 to ~CS_GLOW13.
Renaming _CS_GLOW14 to ~CS_GLOW14.
Renaming _CS_GLOW15 to ~CS_GLOW15.
Renaming _CS_GLOW16 to ~CS_GLOW16.
Renaming _CS_GLOW17 to ~CS_GLOW17.
Renaming _CS_LMA02 to ~CS_LMA02.
Renaming _CS_BULB11 to ~CS_BULB11.
Renaming _CS_GLOW30 to ~CS_GLOW30.
Renaming _CS_GLOW31 to ~CS_GLOW31.
Renaming _CS_LMW02 to ~CS_LMW02.
Renaming _CS_BULB13 to ~CS_BULB13.
Renaming _CS_GLOW36 to ~CS_GLOW36.
Renaming _CS_GLOW37 to ~CS_GLOW37.
Renaming _CS_LMW01 to ~CS_LMW01.
Renaming _CS_BULB10 to ~CS_BULB10.
Renaming _CS_GLOW28 to ~CS_GLOW28.
Renaming _CS_GLOW29 to ~CS_GLOW29.
Renaming _CS_BULB12 to ~CS_BULB12.
Renaming _CS_GLOW32 to ~CS_GLOW32.
Renaming _CS_GLOW33 to ~CS_GLOW33.
Renaming _CS_GLOW34 to ~CS_GLOW34.
Renaming _CS_GLOW35 to ~CS_GLOW35.
Renaming _CS_LMA01 to ~CS_LMA01.
Renaming _CS_BULB_9 to ~CS_BULB_9.
Renaming _CS_GLOW26 to ~CS_GLOW26.
Renaming _CS_GLOW27 to ~CS_GLOW27.
Renaming _CS_LMHS to ~CS_LMHS.
Renaming _CS_BULB_8 to ~CS_BULB_8.
Renaming _CS_GLOW24 to ~CS_GLOW24.
Renaming _CS_GLOW25 to ~CS_GLOW25.
Renaming _CS_LME to ~CS_LME.
Renaming _CS_BULB_L to ~CS_BULB_L.
Renaming _CS_GLOW22 to ~CS_GLOW22.
Renaming _CS_GLOW23 to ~CS_GLOW23.
Renaming _CS_ENGINE to ~CS_ENGINE1.
Renaming _CS_BULB_F to ~CS_BULB_F.
Counting polygons.
RootFrame [0 polys]
FUSELAGE [224 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
~CS_COLL10 [34 polys]
One or more collision frames were found in this model. See notes about collision frames.
~CS_COLL11 [82 polys]
~CS_COLL12 [116 polys]
~CS_COLL13 [58 polys]
~CS_COLL_1 [116 polys]
~CS_COLL_3 [82 polys]
~CS_COLL_4 [58 polys]
~CS_COLL_5 [50 polys]
~CS_COLL_6 [28 polys]
~CS_COLL_7 [52 polys]
~CS_COLL_8 [52 polys]
~CS_COLL_9 [12 polys]
~CS_COLL_F [278 polys]
~CS_COLL_L [28 polys]
~CS_COLL_M [120 polys]
~CS_COLL_R [12 polys]
MOTORSTABA [12 polys]
MOTORPART0 [340 polys]
MOTOR [346 polys]
CONTACT01 [96 polys]
CONTACT02 [96 polys]
FUSELAGEST [80 polys]
FUSELAGES1 [224 polys]
MOTORPART1 [420 polys]
~CS_SPINNER1 [596 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
~CS_RMA02 [56 polys]
~CS_BULB_3 [68 polys]
~CS_GLOW_8 [12 polys]
~CS_GLOW_9 [12 polys]
$$$DUMMY [0 polys]
~CS_RMW02 [107 polys]
~CS_BULB_4 [117 polys]
~CS_GLOW11 [12 polys]
~CS_GLOW10 [12 polys]
~CS_RMW01 [58 polys]
~CS_BULB_2 [66 polys]
~CS_GLOW_6 [12 polys]
~CS_GLOW_7 [12 polys]
~CS_RMA01 [104 polys]
~CS_BULB_R [18 polys]
~CS_GLOW_0 [12 polys]
~CS_GLOW_1 [12 polys]
_CS_RIGHTW [116 polys]
~CS_BULB_1 [120 polys]
~CS_GLOW_2 [12 polys]
~CS_GLOW_3 [12 polys]
~CS_GLOW_4 [12 polys]
~CS_GLOW_5 [12 polys]
~CS_COLL_2 [34 polys]
~CS_RMHS [45 polys]
~CS_BULB_7 [73 polys]
~CS_GLOW20 [12 polys]
~CS_GLOW21 [12 polys]
~CS_RME [184 polys]
~CS_BULB_6 [20 polys]
~CS_GLOW18 [12 polys]
~CS_GLOW19 [12 polys]
~CS_MMVS [56 polys]
~CS_BULB_5 [68 polys]
~CS_MMR [211 polys]
~CS_BULB_M [161 polys]
~CS_GLOW12 [12 polys]
~CS_GLOW13 [12 polys]
~CS_GLOW14 [12 polys]
~CS_GLOW15 [12 polys]
~CS_GLOW16 [12 polys]
~CS_GLOW17 [12 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
$$$DUMMY [0 polys]
~CS_LMA02 [56 polys]
~CS_BULB11 [68 polys]
~CS_GLOW30 [12 polys]
~CS_GLOW31 [12 polys]
$$$DUMMY [0 polys]
~CS_LMW02 [107 polys]
~CS_BULB13 [117 polys]
~CS_GLOW36 [12 polys]
~CS_GLOW37 [12 polys]
~CS_LMW01 [58 polys]
~CS_BULB10 [66 polys]
~CS_GLOW28 [12 polys]
~CS_GLOW29 [12 polys]
_CS_LEFTWI [116 polys]
~CS_BULB12 [120 polys]
~CS_GLOW32 [12 polys]
~CS_GLOW33 [12 polys]
~CS_GLOW34 [12 polys]
~CS_GLOW35 [12 polys]
~CS_LMA01 [8 polys]
~CS_BULB_9 [18 polys]
~CS_GLOW26 [12 polys]
~CS_GLOW27 [12 polys]
~CS_LMHS [45 polys]
~CS_BULB_8 [73 polys]
~CS_GLOW24 [12 polys]
~CS_GLOW25 [12 polys]
~CS_LME [12 polys]
~CS_BULB_L [20 polys]
~CS_GLOW22 [12 polys]
~CS_GLOW23 [12 polys]
~CS_ENGINE1 [12 polys]
~CS_BULB_F [244 polys]
Writing kex.
Model Pitts-Foamy.kex has 6890 polys.
Done.

C:\Documents and Settings\user\Desktop\3ds2kex>


As you can see, the .kex - exporter is reading out the .sup - file with the same name like the .3ds - file and rename every object according to your changes. I have also left some object - parts of this small foamy flyer unlinked to their correct component frame object in the .3ds - file, to show you that the .kex - exporter is also able to rearrange hierarchy.

You should have recognized, that the .kex - exporter also have found the collision - mesh - objects, which are necessary for aircrafts over 8000 Polygons.

Let's make that thing fly! ( I hope you didn't forget to overwrite the .tga - file Deep Exploration generated :) )

(5) Fire up Realflight G3 (3.5) and import the generated .kex - file via File -> Import -> ".KEX..."

If everything worked, you should now see your aircraft in the preview - window of G3 (3.5) without any texture errors (Screenshot 1)

(6) Go to Aircraft -> "Edit Aircraft .....". The aircraft editor appears. Check if the graphical orientation of your aircraft is the same as the pyhsical orientation. If not, you have to rotate your whole aircraft under 180 dagree in gmax and restart the whole export - process (I hope you didn't forget to make a backup - copy of your .sup - file).

(7) Go to "Options" and activate "Display Advanced Properties". Select any part you like and look under "Component Frame", that only the parts you want to be selectable are listed in the Drop - Down - Menue (Screenshot 2).

You will have probably recognized, that I've named a lot of parts in the .sup - file from _CS_[BULB/GLOW]_[OBJECT NAME] to ~CS_[BULB/GLOW]_[OBJECT NAME]. These are the "lightning" - objects. ~CS_BULB - objects are "lightning" - objects visible at day and at night, while ~CS_GLOW - objects are "lighting" - objects, which are only visible at night (Screenshot 3).

(8) Check if all Pivots were imported correctly by moving the rudders a little bit around. If the aren't moving correctly, you are forced to change the pivots in the x. - file, or in gmax and export your aircraft again to the x. - file.

(9) Generate the physical aircraft model in the Realflight G3 (3.5) aircraft editor. If you don't like the writing of the colour scheme in the preview, simply go to "Aircraft" - > "Save Color Scheme as..." -> Enter the new name of your colour scheme -> Select it via "Aircraft" -> "Select Color Scheme..." -> Export the entire aircraft as .G3X - file and upload it on the swap pages.

I hope I can say now CONGRATULATIONS! You have generated your first aircraft for Realflight G3 (3.5).

In the next part, we will learn where material values can be edited in Deep Exploration and how changes to them will reflect on your aircraft. We will also learn how to generate aircrafts completely without using pivots from gmax with the pp - example - from KE.
 

Attachments

  • 1.jpg
    1.jpg
    334.8 KB · Views: 180
  • 2.jpg
    2.jpg
    329.9 KB · Views: 118
  • 3.jpg
    3.jpg
    318.2 KB · Views: 212
Last edited:
PLEASE DON'T POST HERE -> DELETE YOU POSTS PLEASE. THE TUTORIAL IS NOT FINISHED!!! THERE IS A DISCUSSION THREAD HERE !!! :mad:

AND PLEASE READ FIRST THE COMPLETE TUTORIAL BEFORE YOU ASK QUESTIONS!!!
 
Last edited:
Status
Not open for further replies.
Back
Top