flight-simulator-enhancements-and-mods
How to Use Fsx Scenery Library for Custom Airport Additions
Table of Contents
Understanding the FSX Scenery Library and Its Role in Airport Customization
The FSX Scenery Library is the backbone of object management in Microsoft Flight Simulator X. It is a system that stores references to three-dimensional models, textures, and placement data for everything from airport terminals and hangars to static aircraft, vehicles, and even ground markings. Unlike terrain mesh or weather data, the Scenery Library focuses solely on the objects that populate the world. By manipulating this library, you can introduce new airport features, rearrange existing ones, and transform a generic airfield into a highly personalized aviation hub.
Working with the Scenery Library requires understanding two core components: the object placement files (usually .bgl files) and the library definition files (also .bgl but only containing model references). The placement files tell FSX where to put an object; the library files provide the object itself. In many add-on scenery packages, both are combined into a single .bgl. For custom airport additions, you will often create both or modify existing ones using specialized tools.
Before diving into the workflow, note that the FSX Scenery Library is not a single file you edit directly. Instead, you work with individual .bgl files stored in a folder hierarchy under the main FSX directory, typically in ..\Addon Scenery\scenery or ..\Scenery\BASE\SCENERY. The library is activated and prioritized through the in-game Scenery Library menu. This article covers the complete process of creating and integrating custom airport objects.
Essential Tools for Custom Airport Scenery Development
To effectively use the FSX Scenery Library for airport additions, you need a set of dedicated tools. These are widely used by the flight simulation community and are free or low cost. Below is a curated list of the most important ones.
1. Airport Design Editor (ADE)
ADE is the primary tool for modifying airport layouts, placing objects, and creating placement .bgl files. It provides a graphical interface where you can see the airport in plan view, add runways, taxiways, parking spots, and place scenery objects. ADE can also compile your work into a .bgl file that the Scenery Library reads. Download the latest version from the FSDeveloper Airport Design Editor forum.
2. ModelConverterX (MCX)
When you need to convert 3D models from other formats (like SketchUp, Blender, or 3DS) into FSX-compatible .MDL files, ModelConverterX is the go-to tool. It also allows you to attach animations, adjust materials, and create library definition .bgl files. MCX is available from ScruffyDuck Software.
3. BGLComp – The Default Compiler
FSX includes a command-line compiler called BGLComp. ADE and MCX both use BGLComp internally, but advanced users can call it directly to compile XML-based scenery definitions. While you rarely need to use it manually, understanding its role helps when troubleshooting compilation errors.
4. Scenery Library Priority Manager (optional)
Although you can manage scenery order in the FSX settings menu, some third-party applications like Scenery Config Editor provide a more detailed view of your scenery.cfg file. This file defines every entry in the Scenery Library, including its path, layer number, and whether it is active. A proper layer order prevents conflict between overlapping airports.
Step-by-Step Guide to Adding Custom Airport Objects
Below is a comprehensive workflow that takes you from asset creation to final activation in the FSX Scenery Library. Each step builds on the previous one, so follow them in order for best results.
Step 1: Prepare or Acquire 3D Models
Your custom airport additions depend on high-quality 3D models. You can either create your own using software like Blender, SketchUp, or 3ds Max, or download ready-made models from flight simulation libraries such as FlightSim.com or AVSIM Library. Ensure the models are designed for FSX format (MDL files) or are easily convertible using ModelConverterX. Pay attention to texture requirements: models should come with .DDS or .BMP texture files placed in the same folder as the model.
Model Checklist:
- Correct scale and orientation (default FSX coordinate orientation: X-axis east-west, Y-axis up, Z-axis north-south).
- Materials assigned with FSX-compatible shaders (no advanced PBR unless using add-on engine).
- A unique GUID (Globally Unique Identifier) for each object – MCX can generate this.
- LOD (Level of Detail) models for performance, though one LOD is fine for small airports.
Step 2: Create a Library Definition File
If you plan to place the same object multiple times (e.g., generic hangars, runway lights, or vehicles), you should compile the model into a library .bgl file. This file acts as a repository of objects that ADE can reference. Use ModelConverterX for this:
- Open MCX and load your model file (e.g., .3ds, .obj, .DAE).
- Assign a GUID under Tools > Attached Effects & GUIDs > Set GUID. Use the “New” button to generate one.
- Export the model as FSX MDL (File > Export > FSX MDL). This creates a .mdl file and a .bgl file (the library). MCX will ask you for a destination folder. Save the library with a descriptive name like
MyHangars.bgl. - Place the resulting .bgl file in a new folder under
..\Addon Scenery\, for example..\Addon Scenery\MyAirport\scenery\. Also, copy any texture files into the same folder or atexturesubfolder.
Note: If you are using only a few unique objects, you can skip this step and let ADE embed the model directly into the placement .bgl file, but that is less efficient for repeated use.
Step 3: Place Objects Using Airport Design Editor
Now open ADE and load the airport you want to modify. If you are creating a completely new airport, you can start from an empty grid or clone an existing one using the Build Airport function. For adding custom objects:
- Go to Tools > Library Object Manager and click Add Library. Browse to your library .bgl file (the one you created in Step 2). ADE will load all object GUIDs into its list.
- Now, select the object from the list (it will appear under the Object List pane), and click on the airport map to place it. Move, rotate, and adjust the altitude as needed.
- For objects that are not part of a library, you can also load individual .mdl files via Tools > Library Object Manager > Add Object. However, using a library is recommended for performance and organization.
Tip: Use ADE’s Compiles With BglComp setting to ensure compatibility. Save your ADE project as an .ad2 file for later edits.
Step 4: Compile the Placement File
Once you have placed all objects to your satisfaction, compile the airport project into a .bgl file. In ADE, go to File > Compile (or press F9). ADE will generate a .bgl file that contains both your airport layout and the references to the objects in the library. Name it something like MyAirport_Placement.bgl.
Important: The compiler will attempt to bundle any objects that were not from an external library. If you used objects from your library .bgl, the compiler will not duplicate the models; it only writes the GUID and placement coordinates. This keeps file sizes smaller.
Step 5: Install the Scenery Files
To make FSX load your custom airport, you need to place the compiled .bgl files in the correct directory and then activate them via the Scenery Library.
- Create a dedicated folder structure: under
..\Addon Scenery\, create a folder with your airport name, e.g.,MyAirport. - Inside
MyAirport, create two subfolders:sceneryandtexture. - Copy your placement .bgl (e.g.,
MyAirport_Placement.bgl) into thesceneryfolder. - Copy your library .bgl (e.g.,
MyHangars.bgl) into the samesceneryfolder. - Copy all texture files (e.g., .DDS, .BMP) into the
texturefolder.
Step 6: Activate the Scenery Library in FSX
Run FSX and go to the Settings > Scenery Library menu. Click Add Area. Navigate to the MyAirport folder you created. Select the folder (not the scenery subfolder) and click OK. FSX will scan the folder, detect the .bgl files, and add an entry to the library list. Ensure the new entry is checked and placed at a higher priority than the default terrain (usually above layer number 1 or 2). Click OK to reload the scenery. Exit FSX and restart it to apply all changes fully.
Advanced Techniques for Realistic Airport Additions
Once you have mastered basic placement, you can enhance your airport with additional details that make it feel alive and immersive.
Using Effects and Animations
FSX supports visual effects (fx files) like rotating beacons, smoke, or landing lights. To attach an effect to a scenery object, use ADE’s Effect tool or embed the effect reference in the object model via ModelConverterX (under the Attached Effects tab). For example, attach fx_airportlight to a runway edge light model to make it glow at night.
Creating Dynamic Ground Markings
For taxiway lines, runway centerlines, or ramp markings, you can use ADE’s built-in Runway Markings and Taxiway Path tools. But for custom markings like airline logos or helipad circles, you may need to create a textured polygon. In ADE, use Polygon tools to draw a shape and assign a material. Then, in the texture folder, provide a .DDS file that is mapped to the polygon. This method allows you to paint almost anything on the ground.
Seasonal and Night Textures
FSX can switch textures based on season or time of day if you name them correctly. For example, a texture named myhangar.bmp can have a night version myhangar_LM.bmp (for light map) and seasonal versions like myhangar_winter.bmp. When you compile objects, FSX will automatically select the appropriate texture. This adds a professional touch to your airport.
Troubleshooting Common Scenery Library Issues
Even experienced scenery developers encounter problems. Here are the most frequent issues and how to fix them.
Objects Not Appearing in Simulator
- Check folder structure: The scenery .bgl must be inside the `scenery` subfolder of your add-on area, and textures in a `texture` subfolder.
- Verify GUID duplication: Two objects sharing the same GUID can cause display conflicts. Use MCX to generate a unique GUID for each model.
- Check layer priority: Ensure your scenery area is above the default terrain (layers 0-1). In Scenery Library, move it above BASE.
- Recompile with BGLComp: Sometimes ADE’s internal compilation fails silently. Use File > Compile as XML then compile the XML manually with BGLComp to see error messages.
Model Shows as Black or Missing Textures
- Texture file naming: FSX is case-insensitive but texture references inside the .mdl must match exactly (including extension). Use
.ddsfor better performance. - Texture format: FSX cannot read .PNG textures directly. Convert to .DDS (DXT1 or DXT5) or .BMP (24-bit) using tools like DXTBmp or GIMP with DDS plugin.
- Missing mipmaps: For DDS textures, include mipmaps to avoid shimmering at distance. Most converters add them automatically.
Airport Elevation Problems
If your airport sits above or below the surrounding terrain, you may need to flatten the area. In ADE, add a Flatten polygon (from the Tools menu). Set the altitude to the airport elevation and assign a material like Flatten (or Flatten_roads if you want the terrain to blend). This creates a .bgl file that forces the terrain to a constant altitude.
Performance Considerations for Custom Airports
A heavily detailed airport can bring even a powerful system to its knees if not optimized. Follow these guidelines to maintain smooth framerates.
- Limit polygon count: Keep models under 10,000 polygons per object for major structures; smaller objects like signs should be under 500 polygons.
- Use LODs: ModelConverterX allows you to create multiple LOD levels. A model with 10,000 polygons at close range can drop to 2,000 at 500 feet and 200 at 2,000 feet.
- Batch static aircraft: Instead of placing 50 separate airplane models (each a draw call), create a single library file that contains a “group” of parked aircraft as a single object.
- Optimize textures: Use DXT1 compression for opaque surfaces and DXT5 for alpha channels. Texture dimensions should be powers of two (128, 256, 512, 1024) to avoid mipmap issues.
Leveraging Community Resources and Shared Libraries
You do not have to build everything from scratch. The flight simulation community offers thousands of pre-made objects and airport enhancements. Websites like AVSIM and FlightSim.com host libraries of scenery objects that you can drop into your projects. Many are packaged as ready-to-use .bgl files with textures. You can also find generic airport object libraries – collections of hangars, vehicles, terminals, and vegetation – that you can include in your ADE project to speed up development.
Backup and Version Control
Scenery development involves trial and error. Always keep a backup of your original FSX scenery.cfg file (located at %APPDATA%\Microsoft\FSX\scenery.cfg). Also, save your ADE project files (.ad2) after each significant change. If a compilation breaks everything, you can restore your custom scenery without reinstalling FSX. It is also wise to test your airport additions in a separate Addon Scenery folder before merging into the main scenery structure.
Final Output Verification
After installing and activating your custom airport scenery, restart FSX and select your airport from the free flight menu. Fly around in slew mode or from an external view to inspect object placement, texture quality, and overall integration with the default terrain. Use the Scenery Library in-game menu to check that your add-on area is active and at the correct layer. If something looks off, go back to ADE, adjust the placement, recompile, and reload the scenery (no need to exit FSX – just go to Scenery Library, uncheck and recheck the area).
By mastering the FSX Scenery Library and the tools described above, you can create airport additions that range from simple hangar replacements to entire fictional airports complete with custom buildings, lighting, and ground markings. The process rewards patience and attention to detail, and the results transform your flight simulation experience into a truly custom environment.