Learn how to create MSFS 2024 PBR textures for aircraft and scenery, pack COMP channels correctly, export materials and fix common errors.
Create PBR textures for MSFS 2024 by UV-unwrapping the model, painting a base-colour map, baking a tangent-space normal map, and packing ambient occlusion, roughness and metallic data into one COMP texture. Assign them to an SDK-compatible material, export the glTF asset, build the package, then inspect it inside Microsoft Flight Simulator.
MSFS 2024 uses a metallic-roughness workflow, not the diffuse and alpha-channel specularity used by older simulators. Content creation and local package testing require the PC toolchain; start with the matching version by following our MSFS SDK installation and package-building guide.
Which PBR texture maps does MSFS 2024 use?
An ordinary MSFS 2024 material uses base colour, normal and combined occlusion-roughness-metallic data, with emissive and opacity information added only when the material needs them.
| Texture | Channel contents | Colour handling | Key rule |
|---|---|---|---|
| Base colour | RGB colour; alpha may supply opacity when the selected material mode reads it | sRGB colour | Do not bake reflections, strong shadows or ambient occlusion into it |
| Normal | RGB tangent-space normal data; a neutral normal is approximately 128, 128, 255 | Non-colour data | Use the normal-map orientation expected by the MSFS exporter |
| COMP | Red: ambient occlusion; green: roughness; blue: metallic | Non-colour data | Do not swap roughness for gloss or smoothness |
| Emissive | RGB illumination colour | sRGB colour | Assign it through the material rather than painting light into base colour |
In the COMP texture, white ambient occlusion means unoccluded, white roughness means matte, and white metallic means metal. Painted aircraft skin is normally non-metallic because the visible surface is paint; exposed aluminium can be metallic. Grey metallic values should generally appear only around blended edges or genuinely mixed materials.
The COMP alpha channel is normally left at the value expected by the exporter or original template. Do not put specularity into base-colour alpha simply because an FSX texture used that method. Alpha commonly controls opacity in a suitable MSFS material, not shininess.
Names such as _ALBD, _NORM and _COMP are common conventions, but the material references establish what each image does. For a livery override, filenames and package inheritance must also match the base aircraft exactly.
How do you make and export the textures?
The reliable method is to keep lossless source artwork, build each map in the correct colour space, and let the MSFS 2024 package tools compile the finished asset.
- Prepare the model and UV layout. Apply the required transforms before baking, keep a consistent texel density and leave enough space between UV islands for lower mip levels. Mirrored UVs save texture space but prevent different logos, registrations or weathering on each side.
- Bake supporting maps. From a high-resolution model, bake tangent-space normals and ambient occlusion onto the final low-resolution mesh. Check the bake for projection errors around seams, sharp corners and tightly spaced parts before painting.
- Paint the base colour. Use physically plausible material colours without baked sunlight or glossy highlights. Keep markings and decals sharp, but avoid details finer than the texture and mip chain can retain.
- Create the roughness and metallic maps. Roughness should describe the finish: polished paint is darker, oxidised or dirty material is lighter. Use metallic values near 0 for paint, rubber, fabric, concrete and wood, and near 1 for exposed metal.
- Pack the COMP channels. Place ambient occlusion in red, roughness in green and metallic in blue. Mark the image as non-colour data so colour management does not alter the channel values.
- Prepare normals and emissive details. Import the normal map as non-colour data and connect it through the material's normal input. Use a separate emissive map for displays, signs or lamps; do not make the surrounding base colour glow.
- Assign an MSFS-compatible material. Connect every image to the correct exporter slot, select the proper opaque, masked, blended or specialised material mode, and export the glTF asset. Our aircraft asset pipeline covers the wider model and package process, while the scenery model workflow explains ModelLib assets and Scenery Editor placement.
- Build and inspect the package. Test the compiled output rather than loose source images. Examine it in bright sun, overcast light, at night and at several viewing distances, then check the build log for unresolved textures or material warnings.
If the project is only an aircraft repaint, start from the aircraft's supported paint kit and retain its existing normal and COMP textures unless the new finish actually changes them. Our Blender livery workflow explains UV inspection, texture inheritance and packaging without rebuilding the whole aircraft.
How should aircraft and scenery textures differ?
Aircraft need close-range surface detail and accurate livery alignment, while scenery benefits more from atlases, tiling, restrained material counts and efficient level-of-detail design.
| Decision | Aircraft | Scenery |
|---|---|---|
| UV layout | Reserve unique space for registrations, logos, panels and asymmetric wear | Atlas small objects and tile repeatable roofs, walls and ground materials |
| PBR treatment | Separate painted skin, bare metal, rubber, glass and cockpit materials accurately | Prioritise believable roughness variation across concrete, brick, metal and roofing |
| Normal detail | Use restrained rivets, seams and fasteners that remain plausible at close range | Use normal or detail mapping for broad surface relief instead of excessive geometry |
| Optimisation | Match the source aircraft's sensible resolution and reuse shared maps where supported | Reduce material changes, use LODs and avoid unique oversized textures for distant objects |
Glass needs the material mode intended for glazing; lowering the alpha of an ordinary opaque material is not an adequate substitute. Likewise, clear-coated aircraft paint should use supported material properties rather than forcing an unrealistic metallic value.
Why do MSFS 2024 PBR textures look wrong?
Most PBR faults come from incorrectly packed COMP channels, the wrong colour-space setting, mismatched normal-map orientation or an alpha mode that does not suit the material.
- The surface looks chrome-plated: the metallic channel is probably white on paint or the COMP channels are connected incorrectly.
- Glossy areas appear matte: a gloss or smoothness map was used as roughness without inversion. Roughness is the opposite of smoothness.
- Rivets and dents point the wrong way: the normal map's green-channel convention does not match the exporter. Use the normal preset supplied for the MSFS workflow or invert that channel after confirming the mismatch.
- Colours look washed out or unusually dark: base colour may have been treated as linear data, or a COMP or normal texture may have been treated as sRGB colour.
- The model is transparent or has harsh cut-outs: inspect base-colour alpha and the material's opaque, mask or blend setting. Do not assume an inherited alpha channel is harmless.
- Details bleed or shimmer at a distance: generate mipmaps, add more UV-island padding and remove detail too fine for the chosen resolution.
- The material appears pink or is missing: the compiled material cannot resolve a texture. Check package paths, exported material references and the build log rather than merely renaming the image.
- An old FSX conversion looks flat: diffuse and specular artwork cannot simply be renamed. Remove baked lighting, rebuild roughness and metallic values, and create a proper tangent-space normal map.
DDS, compression and mipmaps
Keep layered or lossless master files and avoid repeatedly editing compressed DDS textures. For a normal SDK model project, let the matching package builder produce the simulator-ready compression and mip chain. If an aircraft paint kit specifically requires DDS output, preserve its dimensions, alpha channel, naming and compression workflow exactly.