Building Scenery

Most of the material on this page applies to X-Plane versions 7.x and earlier. Version 8 has a complete redesign of the scenery architecture. There will also be a complete new suite of scenery development tools in the future. These are not yet available, and at present the ability to build custom scenery for X-Plane version 8 is very limited. You can edit taxiways at airports, add custom objects and create custom object overlays, but that's about as far as it goes.

How do I build terrain, such as Howland Island (in the mid Pacific)?

(This writeup is really old, but to a certain extent the techniques are still relevant.)
Actually, the hardest part might be just finding a decent topo map of Howland Island. Once you've got that, WorldMaker is pretty intuitive, if somewhat tedious, to use. Building terrain with the default textures is not that hard.
    1. Determine latitude and longitude of the island. For the sake of this discussion, assume it's 1 deg. north, 177 deg. west.
    2. Create a folder named +00-180 in Resources\Earth Nav Data.
    3. Fire up WorldMaker and position yourself to +001, -177. You'll see all blue - an untouched expanse of ocean. What you have here is a 150x200 grid of elevation points. Zoom in until you can see grid lines. Since a degree of latitude is 60 nautical miles, each grid square is roughly 1550 square meters.
    4. Scroll around until you get the window over where the island is supposed to be. Note that in the lower right, you get an instantaneous readout of your current cursor coordinates.
    5. Select the "Toggle land/water" button. Click on all the grid squares that should be land to get the approximate shape of the island.
    6. Select the "Move nodes" button. You can now adjust the locations of the grid points to make the coastline more accurate. Note that with X-Plane's default textures, the water squares that are immediately adjacent to a land square will get a shoreline transition texture that effectively extends the land image about halfway into the water square. Hit the spacebar to toggle texture display.

    7. It's a good idea to tweak the nearby water grid points as well to keep the squares more or less square. If you don't, the textures will look stretched in the irregular squares.
      Also move inland nodes around as needed to match terrain elevation features, such as hilltops, transitions between slopes and level terrain, etc.
    8. Select the "Adjust elevation" button. Select each land node and set the elevation according to your topo map.
    9. Save the terrain as +01-177.env in the +00-180 folder.
Voila! You've created an island!

OK - you probably want to create a runway so you have a place to land if you ever succeed in finding the island. Select Edit -> Airports. Click on Add a New Airport and fill in the data. Hint: runways must be level in X-Plane. X-Plane will automatically flatten the terrain square(s) occupied by runways and set them to the runway's elevation. If you want hills near the runway they must be in other terrain squares.

The selection boxes on the right are for glideslope, runway, and approach lighting. (Hmmm - Howland Island? Probably not a lot of lighting.) Save the airport file and you're done.

WorldMaker also has screens for placing structures like houses, and for radio navaids. Navaids on Howland? Get real! If Howland had a radio beacon we wouldn't be wondering what happened to Amelia.

WorldMaker won't let me modify terrain

When I select the "Edit Terrain" mode, none of the editing functions are present. (This applies to X-Plane versions 6.51 and later.)

To edit terrain, you need a custom scenery folder. In the Custom Scenery folder, create a folder with the name of your custom scenery. In that new folder, create at least a folder named Earth Nav Data. Also create folders named Custom Objects, Custom Object Textures, and Custom Terrain Textures if you're going to add your own objects and/or terrain textures.

Find the geographic coordinates of the area you want to edit. In the Earth Nav Data folder, create the appropriate ten-degree folder and copy into it the ENV files you want to modify. (For an explanation of the ENV and folder numbering, see the general scenery page.)

For an example, see the San Bernardino folder in the standard X-Plane download. (Note the custom object folders in this package have an extra subfolder named SoCal. You can do this, but it's not necessary.)

How do I save just the airport I modified?

As of version 6.70, the Save Airports function saves the entire airport database in the main apt.dat file. If you want to set up a custom apt.dat file in your custom scenery folder, containing only your custom airports, you'll have to extract it from the main apt.dat file with an editor. Apt.dat and nav.dat are text files, so any editor capable of handling large text files will do the job.

Can I use Fly's 3rd party Terrascene tool to create scenery with X-Plane?

Terrascene, given the current format of the ENV (scenery) files of X-Plane, is useful as a partial texture generator. Nothing more.

You can generate a large texture for an area using Terrascene. Then you can start cutting pieces out of it and apply textures to individual terrain polygons in X-Plane.

You can not use the image as is - X-Plane does not support draping a single large texture over the scenery terrain grid.

You also cannot cut up and use the complete image - X-Plane has 30,000 polygons per scenery tile and limits you to the number of custom textures that can be assigned. Even though this limit is pretty high (500 textures per ENV), this is a theoretical limit as video memory limitations come into effect around 100+ textures (depending on the amount of RAM your video card has). Thus you can only cut a certain amount of textures from the Terrascene image and use that..

The bottomline is that X-Plane does NOT support Terrascene. There are simply too many limitations in the current X-Plane scenery format. Terrascene can however be used as a first phase texture generator for creating custom scenery textures for X-Plane.

How can I assign custom textures (like satellite photos) to scenery?

The following writeup is thanks to Cormac Shaw. These techniques aply to the generation 6 and 7 scenery (and WorldMaker in X-Plane 6.x and 7.x).


Applying scenery
  1. Create a scenery folder system in 'Custom Scenery' , see the San Bernadino Example to see how. Make sure you include a copy of the ENV file covering the area you want to add your textures or you won't be able to edit.
  2. Place your new textures in your new 'custom terrain textures folder'
  3. Go into Worldmaker. Select 'Edit/Terrain'. By clicking on the little green lights choose 'apply texture below to clicked poly'. Now heres the bit it took me a while to figure out. Scroll down the list of textures until you reach the numbered 'untitled' textures, ie. '0.untitled, 1. untitled, etc'. Now click on '0.untitled', not the little green light but the actual script this will allow you to navigate to your new terrain texture and nominate it for possible future use. Do the same for '1.untitled','2untitled', etc., until you've allocated allyour new textures.
  4. Now by clicking on the little green light next to your new textures you can select them to be placed by clicking on the map. Use the +/_ keys to zoom and arrow keys to help navigate.
  5. Make sure you save. Easy once you know how.
If you assign a bunch of custom terrain textures to the numbered list but then only actually place some of them on the terrain and then save and/or quit, then the ones that weren't placed on the terrain will disappear from the list and you'll have to reassign them.Also, once you've assinged a texture to a list number and placed it on the terrain, it becomes very troublesome to change that textures placement on the list in order to keep track of what's where. This is important if you are chopping up a large aerial photo into a few dozen textures.

So plan out your project. Draw out on a grid of the area you are covering (e.g., a modified screenshot of the area from the WorldMaker screen) how you are going to place your textures, deciding where you are going to use 3x3 polygon coverage or 4x4 or 6x6 or whatever and come up with a logical naming scheme for the individual textures based on your superimposed grid. Then write out your texture list assigning the named textures to numbers in a logical fashion - you can even use gaps in the numbering to keep a repeating pattern, for example. You can do all this before you've even created your first texture. In doing so, you can then make, assign and place textures in whatever order is most convenient as long as you keep to your scheme.Clear as mud.

Well, as for angles, you need a straight-down shot of the area, anything else will look wrong. Basic steps that I used were:
  1. Straighten out the terrain grid, if necessary, of the area that you wish to cover and zoom in on it in Worldmaker and take a screen shot.
  2. Decide how you are going to divide up the area into seperate bitmaps. Will it be 2x2 polygons per bitmap, 6x6, or whatever. you need to take into account the resolution of your original photos, the final res you want and the size the final package is going to be.
  3. Get a good map of the area and draw your decided bitmap grid onto it. Determine the lat/long of the bitmap grid nodes (corners).
  4. Open your WM screenshot and your photo (or a section of the photo) in a grpahics editor that supports layers/objects and determine what scaling and rotational changes you are going to have to make to the aerial photo to get it to match the terrain. Use the runways of an airport in the area if there is one as this is the best reference for both distance and bearing in WM.
  5. Start chopping up the aerial photo using the grid references from the map for the corners of each segment. Apply the scaling and rotational corrections to the chopped out photo segment and then squish the segment to the powers-of-2 dimensions required by X-plane, 1024x1024, 512x512 or whatever and save as a 32-bit .bmp file. Repeat for each segment.
  6. Note that segments at the edge of the photo will require "filling out". You can copy and paste in elements from the local default terrain bitmaps and the scnery will blend nicely.
  7. Apply the custom terrain bitmaps in WM.


+ + + Aligning and placing aerial/satellite photos + + +

Use the 'straightening' function in WorldMaker to make the edges of the polygons to be covered run exactly north/south and east/west. Next determine the exact longitude and latitude of each corner of the polygon (or group of polygons*) that you want to place a texture over. Then go to you main photo and select the area that has the same co-ordinates. Your selected area will ahve the same shape as the polygon or group of polygons that you are going to cover - i.e., it will be significantly taller than wide. So now copy and paste the selected area into a new graphic file. Change the height of this new picture to match the width so that you have a square picture and then resize it so that its dimensions are a power of two (this usually means decresign the size to the nearest power of two, you should only increase it if you are very near a power of two already, too big an increase and you'll get bad artefacts in the picture). Your new texture is now ready to be applied to the polygon( or group of polygons) in WM. Don't worry that its a differnet shape now to the area its covering! X-Plane will correctly stretch the texture again to cover the area when it renders the terrain.

* it is easier and much less work to cut up a picture and assign its parts to groups of polygons rather than each polygon individually. To do this use the '2x2', '5x5', etc buttons in the bottom of the WM screen and click on the bottom-left-most polygon of the group of polygons you are covering when you go to apply the texture. Remember though that the more polygons you cover with one texture the less detail you will see. If you want to cover a lot of polygons in one group, use a high res texture: 512x512 or 1024x1024 pixels. Which res/group size you pick depends on the detail of teh original photo and the desired memory size of the final scenery package.


How do I add static aircraft or other objects to an airport?

Basically static airplanes are treated as custom objects. They are recorded in the scenery files - either .dsf or .env, depending on whether you're working with gen 8 or gen 7 scenery.
  1. You have to create a custom scenery package:
    • Create a new folder in the Custom Scenery folder. (Pick a name.) In the new folder, create the following folders:
    • Custom Objects 
    • Custom Object Textures 
    • Earth Nav Data

    For a general description of how custom scenery packages are structured, see the scenery page.

  2. Put the .obj files for the static aircraft in the Custom Objects folder. You can create subfolder structures if you like to organize them. Put the textures for the static aircraft in the Custom Object Textures folder. Note that the .obj files contain partial pathnames for the textures, so the textures folder structure must match what's called for by the .obj files.

  3. Work out the lat/long coordinates of the airport you're working on. North and east are positive, south and west are negative.

  4. Find the standard .env or .dsf file containing the airport. The .envs are in Resources/Earth Nav Data; the .dsfs are in Resources/Default Scenery/US/Earth Nav Data. Refer to the above scenery FAQ page for how the naming conventions work. As an example, Bob Hope Airport in Burbank is located at roughly 34 deg 12' north latitude, 118 deg 22' west longitude. That means it's contained in Resources/Earth Nav Data/+30-120/+34-119.env (or the corresponding .dsf).

  5. Create an appropriate folder in your Custom Scenery/Earth Nav Data folder, and copy the appropriate scenery file into it. Now you're ready to start editing scenery.
How you edit scenery depends on what version of the scenery you're dealing with.

Tools for editing the generation 8 scenery are still rather limited. For some preliminary tools, tutorials, and examples, see Jonathan Harris's scenery web site. You can also extract objects from a generation 7 scenery file and insert them into a generation 8 scenery file, described below.

If you're working with gen 7 scenery, you use WorldMaker 7.63:
  1. Fire up WorldMaker, click the Obstacles tab, and toggle the lat/long coordinates to select the right square degree of scenery. Now use the arrow keys and the + key to pan and zoom to the airport you want to work on. The airport name will show up when you zoom in close enough, but it helps to know where in the square degree the airport is located. When you get in close enough you'll see the aiport's taxiways and runways.

  2. Now click the Select Current Custom Object button in the lower left. (If there isn't one, WorldMaker isn't seeing your custom scenery package, so you've got something wrong with the folder structure.) In the file selection window that pops up, select the static plane or other object you want to add. Click the Add Custom Object radio button and dial in the desired object heading, and you're ready to go. Every time you click on the map you'll plant another copy of the selected object. Once you have a bunch of objects placed, use the upper radio buttons to move, modify, or delete them.

  3. When you're all done, use the File menu to Save Terrin and Obstacles and exit. Note - if WorldMaker prompts you to save airports or navaids, tell it "No". They shouldn't have been modified; WorldMaker gets a little overenthusiastic at times. You should now have a scenery file containing your new objects in the custom scenery package.

Can I import objects from a custom scenery package into the generation 8 scenery?

Yes, by creating a DSF overlay. Cormac Shaw explains, using the NYEXPRO package as an example:
  1. Download DSF2Text from here:
  2. Unzip and run "DSF2Text.exe" (don't try to run the "DSFTool.exe" application beside it). You will now see a small window open called "XGrinder".
  3. Now, for each subfolder of the 'NYEXPRO/Earth nav data', drag each ENV file (e.g., "-23-044.env") to the XGrinder window. The conversion will take a few seconds and a new .dsf file will appear along side the .env file (e.g., "-23-044.env.dsf").
  4. Now change the name of this new file by removing the ".env" part (e.g. "-23-044.dsf").
  5. Repeat steps 3 and 4 for each env file in the package.
That's it. You do not need to move any files or delete the .env files (X-Plane automatically chooses a .dsf in preference to a .env if both are available). You do not need to touch the .obj files or textures.The .dsf files created are 'Overlay DSFs', not full DSFs, so they require v8.30 or higher to be used.

One problem that might come up is that the old .env file may reference an object file that was left out of the NYEXPRO package. This used to be just ignored by X-Plane, but the DSF system does not tolerate missing objects. If you get an error message in X-Plane about a missing obj file when loading at a particular NYEXPRO airport, you will need to delete the .DSF file for that particular airport and so revert to the ENV format display.

Also, the NYEXPRO package in DSF format may conflict with other more specialised packages for individual airports. If this happens, you'll need to delete the specific DSFs in NYEXPRO that conflict with the desired airports.

Can I convert scenery for Microsoft Flight Simulator to use with X-Plane?

You can convert the objects, but not the base terrain files. This lets you build an object overlay for the base X-Plane scenery files. Kezza provides us with the following explanation:

Here is a description I wrote up for a few friends on here the other day describing the process I used, if you are happy with the conversion, you don't need to go through the following process:

I used a conversion program listed at

The conversion program is straightforward to use, the tricky bit is working out what bits in the scenery need to be taken out in the dsf text file. FS scenery includes the runways and taxi ways (in some of the scenery packages), so you can't see the XP runway and you end up half buried in the FS runway. I used objview and AC3D to look at all the objects in the scenery package so I could work out what had to be deleted. Photoshop was also handy for looking at textures and working out what they might be attached to.

The conversion program does a great job of converting. Once you have successfully converted a FS scenery package, you then load XP and have a look at what needs to be taken out of the scenery so that it looks OK in XP. The hard part is identifying the separate object files in the dsf text file, deleting them, then you simply use the and re-converting the text file back to a dsf.

Here is part of a dsf text file scenery description. The first part is the object definition "OBJECT_DEF", it tells the dsf what folder the object is in and it's name. The block of text below is the number given to the list of objects above and it's 3D position in the world. In other words, OBJECT 2 refers to the object definition on line 3 (numbering starts with 0).

As an example, say you want to take out the third object down the list, to do so, you also have to take out the corresponding line in the second block of text, then renumber them i.e. OBJECT 3 would become OBJECT 2 and all of the objects below have to be renumbered -1. I use BBEdit and Excel to renumber the object numbers.

Before an object is deleted, in this case, the third one down the list:

OBJECT_DEF objects/ApronLight.obj
OBJECT_DEF objects/Apron-Nite-TermENiteGrd.obj
OBJECT_DEF objects/cargo_gdirt-gate_dirt.obj
OBJECT_DEF objects/cargo_gmark-GateMarks3.obj

OBJECT 0 -71.014523 42.366042 0.00
OBJECT 1 -71.018667 42.365667 0.00
OBJECT 2 -71.018820 42.357347 0.00
OBJECT 3 -71.018820 42.357347 0.00

Here is what the new list would look like with the "OBJECT_DEF objects/cargo_gdirt-gate_dirt.obj" taken out:

OBJECT_DEF objects/ApronLight.obj
OBJECT_DEF objects/Apron-Nite-TermENiteGrd.obj
OBJECT_DEF objects/cargo_gmark-GateMarks3.obj

OBJECT 0 -71.014523 42.366042 0.00
OBJECT 1 -71.018667 42.365667 0.00
OBJECT 2 -71.018820 42.357347 0.00

Notice OBJECT 3 is now renumbered OBJECT 2 and all following objects would need to be renumbered by minus 1.

I built a custom building and when I look at it from behind it disappears.

The polygons you define for custom objects are only visible from one side. The side that's visible is the one for which the corners are listed in clockwise order. For typical closed objects, make sure all polygons list their corners in clockwise order. If you're making an object with both an outside and a visible inside (such as a hangar you can taxi into), you must define separate polygons for the inside and ouside of each surface.

Is there a way to make buildings solid or put a landing pad on top of them?

Yes... It depends on which version of X-Plane you're running and what kind of building you want to modify. Current versions of X-Plane have two classes of buildings: custom and autogen. Custom objects are stored in the Custom Scenery folder tree, and are placed one by one by the scenery designer. Autogen objects are stored in the Resources\Autogen ojects folder tree and are automatically associated with selected terrain classes. Actually, there's a third class of building - the old "standard" building you can place with WorldMaker. Its object definition is coded into X-Plane, so you can't modify it.

The .OBJ file defines the shape of the object; it's a text file with tables of numbers that define the coordinates of the object's corners, and associates the object's surfaces with portions of the texture file. (The textures are stored in the companion texture folders.)

The .OBJ file format has changed from version 6.x to version 7. For a complete description of the format of the .OBJ file, see Object Format Reference.html in the Instructions folder of your X-Plane download. Note that X-Plane 7 supports both object file formats. Most of he objects distributed with X-Plane V7 are still in the 6.x format.

First, find the building you want to modify. You can identify custom buildings by opening the area with WorldMaker and going into the Edit Obstacles mode. Custom objects are shown as a gray rectangle with a "C" in it. Click the "select" button and then click on the object, and WorldMaker will display the object name. Remember, this only works if the custom object is part of a package in the Custom Scenery folder. Autogen objects are harder to identify because their placement is semi- random. You're best off guessing from the name of the .OBJ file.

Anyway... Open the .OBJ file with any text editor. You'll see tables of numbers that define the object's corners and surfaces. Look for tables identified as being roof sections. In version 6.x, they begin with a line starting with the number 4. Change the 4 to a 5 to make the roof a landable surface. (If the line already begins with a 5 then it's already a hard surface.) In the version 7 object format, the first line of a roof starts with the word "quad". Change it to "quad_hard". (Again, look for a comment identifying it as a roof. If there are no comments, you'll have to interpret the surface coordinates. Yuk...) There are other types of surfaces, but they can't be made landable; you'd have to lay a quad_hard surface on top of them.

For an example of a simple object with a landable surface, see
Custom Scenery\San Bernardino\custom objects\SoCal\heliplatform.obj.

One other caveat: Don't put hard surfaces on too many buildings. X-Plane needs to do a collision check on every hard surface, so having too many will impact your frame rate. Putting hard surfaces on a lot of autogen structures could get you in trouble...

How are textures mapped onto the Object7 format in version 7?

Ben Supnik provides the following detailed explanation:

A quad strip is a set of quads that touch at an edge something like this:

|  |  |  |

Where the numbers are the numbers of the vertices. Note the zigzagging pattern: 2N vertices makes N-1 quads. They are faster than individual quads because you use less vertices (2N vertices makes N/2 quads with individual quads).

Witih a quad strip, each point has a location in the master texture too. To figure out what one quad's texture is (for example, the 3-5-6-4 quad in the above ASCII drawing), you look at the four texture points for 3-5-4-6 and the quad they make on the master texture is stretched over that quad in 3-d space. Of course, the texture can be distorted ifthe texture coordinates are in funny places.

Each coordinate of a polygon is in the form x y z s t, where x, y, and z are coordinates in meters in the 3-d object of the vertex (+x = east, +z = south, +y = up, 1 unit = 1 meter). s and t are coordinates into the master texture...
+s = right, +t = up, and they go from 0, 0 (lower left) to 1, 1 (upper right).

So each coordinate has a 3-d location for the vertex and 2-d location that is the point on the master texture to associate. When we draw the polygon, we then stretch the texture made by the s,t coordinates over the 3-d polygon in x,y,z.

Airports, Runways, and Taxiways

What do the runway lighting codes mean? Tim Flight points us to the FAA Lighting and Visual Aids page, which provides material for a detailed explanation.   WorldMaker offers three sets of runway lighting specifications.

Glideslope Lighting

No glideslope lighting

The VASI is a system of lights so arranged to provide visual descent guidance information during the approach to a runway. Two-bar VASI installations provide one visual glide path which is normally set at 3 degrees. The basic principle of the VASI is that of color differentiation between red and white. Each light unit projects a beam of light having a white segment in the upper part of the beam and red segment in the lower part of the beam.

The precision approach path indicator (PAPI) uses light units similar to the VASI but are installed in a single row of either two or four light units.

PAPI-20 is a PAPI system set up for a 20 degree glideslope. It is used only for Space Shuttle approaches, such as at Edwards Air Force Base.

Runway Lighting

No lights on this runway/taxiway

Taxiway edge lights are used to outline the edges of taxiways during periods of darkness or restricted visibility conditions. These fixtures emit blue light.

Touchdown Zone Lights (TDZL)
Touchdown zone lights are installed on some precision approach runways to indicate the touchdown zone when landing under adverse visibility conditions. They consist of two rows of transverse light bars disposed symmetrically about the runway centerline. The system consists of steady-burning white lights which start 100 feet beyond the landing threshold and extend to 3,000 feet beyond the landing threshold or to the midpoint of the runway, whichever is less.

Runway Centerline Lighting System (RCLS)
Runway centerline lights are installed on some precision approach runways to facilitate landing under adverse visibility conditions. They are located along the runway centerline and are spaced at 50-foot intervals. When viewed from the landing threshold, the runway centerline lights are white until the last 3,000 feet of the runway. The white lights begin to alternate with red for the next 2,000 feet, and for the last 1,000 feet of the runway, all centerline lights are red.

REIL - Runway End Identifier Lights
REIL's are installed at many airfields to provide rapid and positive identification of the approach end of a particular runway. The system consists of a pair of synchronized flashing lights located laterally on each side of the runway threshold. REIL's may be either omnidirectional or unidirectional facing the approach area. They are effective for:
a. Identification of a runway surrounded by a preponderance of other lighting.
b. Identification of a runway which lacks contrast with surrounding terrain.
c. Identification of a runway during reduced visibility.

Medium Intensity Runway Lights - MIRL
Runway edge lights are used to outline the edges of runways during periods of darkness or restricted visibility conditions. These light systems are classified according to the intensity or brightness they are capable of producing: they are the High Intensity Runway Lights (HIRL), Medium Intensity Runway Lights (MIRL), and the Low Intensity Runway Lights (LIRL). The HIRL and MIRL systems have variable intensity controls, whereas the LIRL's normally have one intensity setting.

Approach Lighting  
No approach lighting

SSALR short approach 1
SALS short approach 2
ALSF1 full approach 1
ALSF2 full approach 2
ODALS rabbit only
For illustrations, see the FAA approach lighting page.

The taxiways at my airport don't look at all right

The taxiways on many small airports are arbitrary. The problem is that while the runways come from US Government data (DAFIF), there is no data for taxiways in a usable encoding that anyone is aware of (or at least, available at a reasonable price for use in X-Plane). The major (and other) airports that have accurate taxiways are that way because someone sat down and entered them by hand.

If you're sufficiently motivated, you can modify the airport layout with X-Plane's WorldMaker. WorldMaker is an older generation tool and the user interface is kind of obtuse and little buggy, but with a bit of persistence it'll get the job done.

Here's a quick outline for doing the job with WorldMaker:
  1. Make a copy of your airport database! (Resources/Earth nav data/apt.dat)
  2. Fire up WorldMaker and select the Airports tab.
  3. Select the airport either with the scrolling window (very tedious) or by entering airport name or IACO code in the upper line under the scrolling window.
  4. Find the airport on the map and zoom in with the "=" key. You can pan around with the arrow keys.
  5. Select a taxiway in the runway list and it will highlight on the map.
  6. You can now move or resize the taxiway by changing its lat/long, dimensions, and heading. Add more taxiways by clicking the Add Runway button and then modifying to suit.
  7. Select File->Save Airports to save.
If you've taken the trouble to put in correct taxiways for an airport, you can have your work immortalized by sending it to Robin Peel, who maintains the airport and nav databases. See Robin's data home page at for details and contact info. What you need to do is open your modified apt.dat file with a text, search for the airport, and then copy out the data block for that airport. This way, you share your work with other X-Plane users, and, even better, it doesn't get overwritten the next time you update X-Plane.

Are there any other tools for laying out airports and taxiways?

Robin Peel recommends David Luff's TaxiDraw - it allows you to load background images directly from the USGS (for the USA) that scale/orient perfectly with the airport data. Or you can use your own images (eg. charts) as a background. Lots of nice editing tools and (such as cut and paste of multiple taxiway segments, etc) that we have all wished for in WorldMaker.

Taxidraw is here:

Note that TaxiDraw was designed to help FlightGear users edit their airports, which are sourced from Robin's master database. So much of the documentation refers to FG, not X-Plane. However, it's fairly easy to figure everything out. Note that it will load data from an X-Plane apt.dat file, but the results are saved in individual files for each edited airport (that include other data in addition to an apt.dat file fragment for the airport). You will need to cut and paste the appropriate chunk of these files back into your master apt.dat file when you have completed your editing, to test your results in X-Plane. You can also send these files to Robin so that he can consolidate any efforts.

Back to the main page