The addition of airport buildings to the default installation of X-Plane in 10.25 makes it much more important than it used to be to prioritize your scenery packs. It also makes it much more important that custom scenery exclude the scenery below it.
I have heard reports of users going into X-Plane and deleting the airports we ship to deal with conflicts. This is way more work than necessary, will be undone by the updater, and simply isn't necessary. So this post will explain how you can sort out scenery conflicts without having to change content.
Some Light Reading
I try not to write up documentation in the blog - it's not really useful to require users to search 900+ posts to find something I mentioned off-hand in a beta four years ago. So I wrote a knowledge base article. Please go read the entire article. I'll go get another cup of coffee.
Let me summarize how things are supposed to work:
- Custom overlay scenery packs should be higher priority than our airports. If you went out and got a custom scenery pack, you almost certainly want to see it, not our work. (Note that if you get X-Plane, run it once, then install custom scenery, this is what happens automatically.)
- Custom overlay scenery packs should have exclusion zones to mask out the scenery below them, whether it is autogen, airports we ship, or rogue trees that have decided to invade a runway. (The need to exclude what is below you is not new - this has been in the sim since X-Plane 8.
- Mesh scenery packs should be lower priority than our airports if you want to see our airports on top of custom mesh scenery. (This step is not automatic.) Mesh scenery excludes everything (think of the mesh as one giant excluzion rectangle) so you can't have overlays below meshes.
Where Theory Meets Practice
My favorite Farside cartoon ever is a picture of two sets of engineers standing next to the ends of two highways that were clearly meant to connect - the highways are misaligned and do not connect. The caption: "Where theory meets practice."
And like the cartoon, the reality of scenery packs doesn't meet the theory in a few ways:
- Some custom airport overlays don't have exclusion zones. There was nothing under them in the past, so the authors didn't bother to exclude.
- Some users have their global scenery at the wrong priority level. The easiest way to have this happen is to delete scenery_packs.ini - the prioritization is lost and our airports end up on top.
- If you install a base mesh into X-Plane, it goes to the top of the priority list, which is stupid; it needs to be below all of the overlays.
What is particularly concerning is that users way of fixing this (going in and editing the actual scenery packs) is probably making the situation more complicated, not less. Here's what I think needs to happen:
- Custom scenery authors need to start excluding their scenery. This isn't a new rule; I consider it a bug to ship an airport without exclusion zones. If you have a custom scenery pack and it doesn't have exclusion zones, ask the author to add them. It is not that hard to add a few exclusion zones in WED.
- Users need to stop deleting their scenery_packs.ini. The .ini file is there to help you resolve conflicts, but it won't work well if you constantly delete it. Once you set up your priorities properly X-Plane will not change them! Put your base meshes on the bottom, default airports in the middle, custom scenery in the top, and you are ready to go.
- X-Plane needs to get the priority of base meshes correct when they are first installed - the fact that users have to go and 'fix' the scenery packs list is really annoying. We are looking at ways to fix this now, but unfortunately we don't have any plan that we can execute in 10.25. This is high priority for a future update.
- X-Plane needs to keep its own overlay scenery (the airports we ship, the demo areas) at a lower priority than any custom overlays that users add. This is the expected behavior and should be totally automatic.
Exclusion Zones and Custom Scenery
A number of authors have rightfully complained that the exclusion zone is a blunt object and doesn't provide a way to carefully integrate autogen and custom scenery.
I agree, but I consider the problem to go significantly beyond exclusion zones; there is no way for a custom overlay to "edit" base vector data (e.g. to say "I want to move that road over there.") The underlying data doesn't have any kind of identifier to refer to it, and the underlying data can change if we recut and take newer OSM data.
I think the future solution to this lies not in more precise or powerful editing in overlays, but rather in the fact that we're getting more network bandwidth, and the global data we have access to is getting better. Therefore the solution is to (1) push updates to the base scenery and (2) ensure that the base scenery is correct. With this process working, misalignments between custom scenery and the default scenery will be less important, and authors can simply fix small but ugly bugs in the base scenery (via OSM) and the result will be better scenery alignment in an update.
Exclusion Zones and Shared Global Airports
It is possible to include exclusion zones in an airport you share with the global airport database for inclusion in X-plane; some authors have already done this.
There are some cases where an exclusion zone is a must-have:
- If the airport gets a new runway, there will be autogen in the location where the old runway used to be; a draped polygon + exclusion zone can "clear" the area for airport.
- If the airport has trees on the runway (a bug in the default scenery) you can "fix" the bug with an exclusion zone.
The global shared default airports are one case where I don't think we need complete exclusion in an overlay - they are meant to be the lowest priority overlay, and therefore don't need to exclude other scenery.