FlightGear is a free, open-source flight simulator that has grown into one of the most comprehensive and community-driven simulation platforms available. Among its many powerful features is a highly flexible system for aircraft liveries and textures, which allows users to completely transform the visual appearance of any aircraft. Whether you want to replicate a real-world airline paint scheme, design a fictional military livery, or create a completely original personal design, mastering the art of livery creation opens up a new dimension of immersion and creativity. This guide will walk you through everything you need to know to create, test, and share your own custom FlightGear liveries — from the fundamentals of texture mapping to best practices for distribution within the community.

Understanding FlightGear Liveries and Textures

Before diving into design, it is essential to understand the difference between a livery and a texture in FlightGear, and how they work together. A livery is the overall visual identity of an aircraft — it includes the color scheme, logos, decals, markings, and any special artwork. A texture is the actual image file (typically PNG) that is mapped onto the 3D model of the aircraft. The relationship between the two is that a livery is made up of one or more texture files arranged in a specific folder structure.

FlightGear uses a standard material system (often referred to as the “FGDATA” format) that relies on texture mapping coordinates embedded in the 3D model. The model’s UV map determines how a 2D texture wraps around the 3D surface. When you create a custom livery, you are essentially repainting those texture files while respecting the UV layout of the model. Most aircraft in FlightGear store their base textures in the Models/Textures or Liveries directory within the aircraft’s folder. Common texture sets include:

  • Diffuse map (color) – The primary bitmap showing all colors and details.
  • Normal map – Adds simulated bump and surface detail (often stored as texturename_norm.png).
  • Specular map – Controls shininess (often texturename_spec.png).
  • Transparency mask – Used for windows or cutouts (often texturename_alpha.png or included in alpha channel).
  • Night texture – Optional self-lit version (often texturename_night.png).

Understanding which files you need to edit is the first step to a successful livery. Most modern FlightGear aircraft use diffuse maps with alpha channels for transparency, along with normal and specular maps to achieve realistic lighting effects. Always check the aircraft’s documentation or the models.xml file to see what texture channels are expected.

Tools and Preparation

Essential Software

  • Image editing software – GIMP (free, open-source) or Adobe Photoshop (paid). Both can handle layer-based editing and export to PNG with alpha channels.
  • NWT/Advanced options – For generating normal maps from height maps, tools like NormalMap Online or the NVIDIA Texture Tools Exporter are excellent.
  • FlightGear (latest stable version) – The simulator itself is your testing ground.
  • A 3D viewer (optional but helpful)Blender can help visualize the UV layout or even your texture on the model.

Locating Source Files

Navigate to your FlightGear data directory (typically %FG_HOME%\data\Aircraft\ on Windows, ~/.fgfs/Aircraft/ on Linux). Inside each aircraft folder you will find a Models/ directory containing the base textures. If the aircraft already supports custom liveries, there will be a Liveries/ folder. Standard liveries from the base package often live inside Liveries/ with their own subfolders. For the aircraft you want to customize, find its main .ac file and inspect the associated texture files. The important ones usually have names like c172p.png or 787_dif.png.

Backup and Organization

Always make a backup copy of the original texture files before editing. Create a dedicated working directory for your livery project. I recommend using a naming convention that includes your username and a short description (e.g., myskyhawk_JohnDoe_BlueGold/). Inside that folder, place your working .xcf or .psd files and export finished PNGs into a separate textures/ subdirectory. This keeps your work organized and makes it easy to package for sharing later.

Step-by-Step Livery Creation

1. Study the UV Map

The most common mistake beginners make is painting without understanding where the pieces go. Open the aircraft model in a 3D viewer that can display UV coordinates, or find a UV map reference image (often included in aircraft documentation). Many FlightGear models have their UV layout baked into the texture files as faint outlines or colored guides. If none exist, you can import the model into Blender and look at the UV editor to see exactly how the texture is mapped. Alternatively, you can create a test texture with numbered squares and apply it in FlightGear to map out the model’s parts.

2. Create a Base Template

Open the main diffuse texture file in your image editor. Create a new layer and start blocking in the major color areas. Use the UV mapping as a guide: the nose section, fuselage side, wings, tail, and engine cowling will each appear in specific regions. When painting, work at the original resolution (often 2048×2048, 4096×4096, or sometimes higher). Avoid scaling up low-resolution work – always maintain or increase pixel quality.

3. Add Details and Decals

Add airline logos, registration numbers, stripes, and other markings. Use layers with transparency to keep elements editable. For text, choose vector shapes or high-resolution text layers to avoid aliasing. Use the strong tag with CSS? No, in HTML we use inline for emphasis but here we're describing design. We'll just write it in narrative form.

When adding complex artwork like cheatlines or flag emblems, use a separate layer so you can easily reposition or scale without affecting the base paint. Keep in mind that the alpha channel of the diffuse map controls transparency – for example, a black hole with alpha=0 becomes a window. Do not accidentally paint over areas that should remain transparent.

4. Create Normal and Specular Maps

A flat paint job without surface detail will look unrealistic. For the best results, generate a normal map that adds subtle panel lines, rivets, and curvature. You can do this by painting a height map (grayscale) and converting it using a normal map generator, or by carefully hand-painting the normal map itself (more advanced). Similarly, a specular map defines which parts of the aircraft are shiny (paint) and which are matte (tires, landing gear). A white specular map indicates full reflectivity; black is matte. Use a gentle contrast to achieve a realistic gloss finish.

5. Test In-Simulator

Install your new livery by following the standard installation procedure for the specific aircraft. Typically, you create a new folder inside the aircraft’s Liveries/ directory, place your texture PNGs inside, and then create a livery.xml file (or modify the existing config) that tells FlightGear where to find your textures. Many aircraft use a simple Models/Liveries/ structure where each subfolder (e.g., MyLivery/) contains the textures and a small XML file.

Launch FlightGear, select your aircraft, and choose your livery from the Aircraft → Livery selection menu. Fly around, look closely at the model, and check for alignment issues, seams, or color mismatches. Make notes on what needs adjustment. Repeat until satisfied.

6. Refine and Polish

Iterate on your design based on in-sim observations. Seam issues often appear along the fuselage or wing edges – use Photoshop/GIMP’s offset filter (Filters → Map → Offset) to check how the texture tiles. Painting with offset turned on helps eliminate visible seams. Also pay attention to the alignment of decals on both sides of the fuselage. Many models mirror texturing for symmetry, so you may need to mirror certain details.

Advanced Texturing Techniques

Using Alpha Channels for Windows and Cutouts

For aircraft that have painted windows (e.g., an airliner with cockpit glass), the window transparency is controlled by the alpha channel of the diffuse map. A white alpha pixel = visible, black = fully transparent. To create a window, paint the window area black in the alpha channel. Most image editors allow you to edit the alpha channel directly. Be careful not to erase parts of the fuselage by mistake.

Night Time Lighting Textures

Some aircraft use a separate night texture that is illuminated from within at night. This is a diffuse-style map but with brighter internal lighting effects (e.g., windows lit from inside). If your aircraft supports night textures, you can create a separate file (often with a _night suffix) to enhance night flights.

Reflection and Environment Maps

To achieve a glossy metallic look on polished aluminum or glossy paint, you may need to adjust the specular map and environment map. FlightGear supports environment maps (cubemaps) via the env-map property in the model. While advanced, you can create a custom environment map to match the livery’s environment (e.g., a runway ground reflection). This is optional for most users but can take your livery to the next level.

Sharing Your Custom Liveries

Packaging Your Livery

To make your livery easy for others to install, create a clean package containing:

  • A README file (plain text) with installation instructions, credits, and license information.
  • The texture files (diffuse, normal, specular, etc.) in the appropriate folder structure.
  • A livery.xml file if required by the aircraft.
  • A preview image (screenshot of your livery in FlightGear) so users can see what they are downloading.

Where to Share

  • FlightGear Forums – The official Livery and Texture section is a great place to share and request feedback.
  • FlightGear Wiki – The Livery Wiki page provides guidelines and a hub for contributed liveries.
  • GitHub / GitLab – Many livery creators host their work in version-controlled repositories, making it easy for others to clone or submit improvements.
  • Third-party repositories – Websites like FlightGear.com livery downloads are official distribution points.
  • Discord servers – The FlightGear community on Discord has channels dedicated to textures and liveries.

Licensing and Attribution

Always respect the original aircraft developers’ licenses. Most FlightGear aircraft are distributed under the GPL or other open-source licenses. Your derivative livery work is typically required to be shared under the same license. Include a license file or clearly state your own terms in the README. If you use textures or logos from external sources (e.g., airline logos), ensure you have permission or are using public domain / fair-use imagery.

Community Collaboration and Feedback

Creating liveries in isolation can be limiting. Join the FlightGear community to get constructive criticism, discover techniques, and find collaborators. The official forum is active with artists and modellers. When you post your work-in-progress, be specific about what you need help with (e.g., “seam correction between nose and fuselage”). Respond to feedback and update your livery accordingly. Many of the best community liveries go through multiple versions before final release.

You can also contribute to group projects. For example, the FlightGear World Airlink community creates fleet-wide livery packs or fictional airline sets. Participating in such projects helps you learn from others and expands the range of available liveries for everyone.

Troubleshooting Common Issues

  • Livery doesn’t appear in the selection menu – Check that your folder is inside the correct Liveries/ directory and that you have a valid livery.xml pointing to your textures. Also ensure file permissions are correct.
  • Textures appear stretched or misaligned – Your UV mapping understanding is flawed. Study the model’s UV layout more carefully. Use a test texture with colored squares or numbers to identify the mapping.
  • Seams visible between fuselage halves – Use the offset filter while painting. Make sure the colors and patterns match perfectly at the edges. For symmetrical models, you may need to mirror one side.
  • Normal map looks lumpy or incorrect – Normal maps can be tricky. Use a dedicated tool like NormalMap Online to convert height maps, and always preview the normal map in a 3D viewer. Over-aggressive normal maps cause strange lighting.
  • Alpha channel not working – Ensure your PNG is saved with alpha transparency (RGBA, 8-bit or 16-bit). In GIMP, export as PNG with “Save color values from transparent pixels” unchecked. In Photoshop, use “Save for Web (legacy)” and select PNG-24 with transparency.

Conclusion

Creating and sharing custom FlightGear liveries is one of the most rewarding aspects of the simulator’s open-source ecosystem. It allows you to express your creativity, learn about 3D texturing workflows, and give back to a vibrant community. By understanding the relationship between UV mapping and texture files, using the right tools, and following best practices for packaging and sharing, you can produce liveries that rival the quality of default designs. Remember to test thoroughly, seek feedback, and always credit the original aircraft authors. With patience and dedication, your custom skins will soon be flying by countless pilots around the world, making every flight a little more personal and visually stunning.

Now it’s time to fire up GIMP, grab the texture files of your favorite aircraft, and start painting. The skies of FlightGear are waiting for your unique touch.