X-Plane 8 Scenery - An Introduction

X-Plane 8 introduces a major revision to the X-Plane scenery system.

What's New, What's the Same

Here are the major new features of the scenery system:

  • There are now two scenery formats - one for editing and one for distributing scenery. Both are new.
  • You can now customize the image of vector roads (or other transportation networks) and specify a lot more visual detail.
  • The terrain mesh is now an arbitrary set of triangles, allowing for any mesh configuration and resolution, with multiple levels of detail.
  • Buildings can be specified as facades, a set of wall patterns wrapped around a polygon, or as X-Pane objects.
  • Forests can be created by specifying a vector boundary and some tree parameters.
  • Resources used in a custom scenery package can be stored anywhere in the package for complete control of the package layout.
  • There is no autogen in the new scenery - all buildings are pre-placed in the scenery files.
  • Scenery packages can use the artwork from other scenery packages. Custom scenery packages can therefore easily modify the look of the default scenery.
  • Terrain is specified with text files that refer to one or more PNG or BMP files, allowing for more complex terrain texturing effects with customization.

Still a number of things are still the same as before:

  • The world is still divided into 1x1 degree tiles, each one of which is defined by one file.
  • Custom Scenery is still stored in packages, or folders that contain all relevant files.
  • Objects (OBJ files) are still supported, and can be placed at any location.
  • Custom terrain textures may be used to create orthophoto-style scenery.

What Is/Will Be Available to Authors

At this point file formats, some library code, and the model editing tools are released. We are working on getting the full scenery tools finished and released. The full SDK will contain:

  • A set of open source cross platform tools for creating scenery. This will include the tools used to make the global scenery.
  • Specifications for all of the new file formats.
  • A code library to allow third party applications to create and work with X-Plane 8 scenery.
  • Documentation for the new tools and tutorials.
  • The source code for our tools will be available.

Open Source Tools

The new scenery generation tools make extensive use of open source libraries; in order to comply with those licenses and to give back to the open source communities that make the new scenery possible, all of the new scenery tools will be released in source code as well as binaries. If you are a programmer interested in working with the new scenery, we recommend working within the source code bases for these tools, as they already solve a number of problems relating to in-memory storage and processing of the new scenery.

Future Expansion and Compatibility

The new X-Plane 8 scenery file formats differ from the old X-Plane 7 formats in that they are open-ended; they can represent almost any configuration of scenery as long as a tool can create it. With X-Plane 7, to implement new features with the scenery, the format had to change. With X-Plane 8, the format can represent almost anything. This means that the format will not change as we develop new scenery technology. Also, third party programmers will be able to design new scenery creation tools without being limited by our file formats, and it may even be possible to convert scenery from other flight simulators.

X-Plane 8 is made up both of scenery files (DSF files) and text files that describe the various entities in the scenery package. (Object files describe buildings, network files describe road patterns, forest files describe vegetation, etc.) These text files can be extended in a backward-compatible manner, so that new features can be made available to scenery authors without affecting the main DSF scenery files at all. For example, we could introduce pixel shaders by adding an extension to the "terrain info" text file to allow authors to specify pixel shaders for terrain types; the DSF files would not have to change.