Per-Airport Flattening

X-Plane 10.45 fixed one of the big "ecosystem" problems with the global airports by excluding airport objects by ICAO code. This makes the global airports much less likely to conflict with custom scenery, even if that custom scenery lacks exclusion zones.

For 10.50, I am looking at another change to how we manage airports that should help gateway authors: per airport control of flattening.

As of X-Plane 10.45, airport flattening is a user setting; a user can pick to have all airports flat, or all airports follow the terrain contours.

This is a rather silly setup. One size does not fit all for airport flattening, and the author of the airport is more likely to know how the airport will look with/without flattening than a user who is flying to that airport. It certainly isn't efficient to have everyone in the X-Plane community set flattening individually without authors being able to set up their airport the way they want.

From what I've seen, there are two legitimate uses of airport flattening.

  1. To fix bugs in the underlying terrain, e.g. if the DSF is screwed up, then the airport may need to flatten it to make the airport usable at all. We want this to be the exception, not the rule. (X-Plane 10 is more buggy than past X-Plane releases WRT bumpy runways, so this may sound funny right now, but overall we aim to have users be able to fly with non-flat runways.)
  2. To accommodate highly customized airports where the 3-d models depend on a flat surface.

In X-Plane 10.50, it should be possible (using a new version of WED) to mark an airport as "always flatten". The expected usage is:

  • Users leave "runways follow terrain contours" on, all of the time.
  • Authors mark individual airports as needing flattening, e.g. to fix bugs or accommodate custom scenery.

There is one use case that isn't handled well by this: if an airport needs different flattening based on different base meshes, there is no way to tag that in the airport. But I view this as a fairly difficult problem to solve with existing technology - we would need a 2-d grid matching every custom version of an airport against every version of the mesh ever to exist.

Fixing the Mesh

Please note that this feature is not a replacement for being able to customize mesh elevation at a local airport from an overlay. "Mesh patching" is what we want to be able to do in the long term, but for X-Plane's engine, it also means a lot of complicated internal changes to how the rendering engine works; customizing flattening is something I can ship now in 10.50 that at least helps.

Flattening is also not a replacement for fixing bugs in the base meshes themselves; one trend I have observed over my decade+ working on X-Plane (!) is that the accuracy of source data keeps getting better. Ten years ago it would be silly to say "how about if everyone just uses the real world values for their scenery and it will just work". At this point that's not actually a pipe dream, it is often completely manageable. So my hope is that someday we can reach a point where the terrain is just accurate and everyone uses it.

As of right now I have this code working in X-Plane but I do not have a build of WED that supports it. We are still in the middle of working on 10.50 apt.dat features, so I'm hoping to post something on that soon.


  • Facebook
  • Reddit
  • StumbleUpon
  • Twitter
  • Google Buzz
  • LinkedIn

About Ben Supnik

Ben is a software engineer who works on X-Plane; he spends most of his days drinking coffee and swearing at the computer -- sometimes at the same time.
This entry was posted in File Formats, Scenery, Tools. Bookmark the permalink.

36 Responses to Per-Airport Flattening

  1. This would be fantastic! There's a third legitimate use for this, which is FSX scenery conversions; a lot of these were built with flat areas in mind, and since I have a lot of sceneries like that I have to leave all runways flat. This feature would mean I could set all my FSX sceneries flat while some of the recent payware native scenery I have (E.g. The Rio de Janeiro sceneries) could still stay in their full glory!

    Thanks Ben

    • Ben Supnik says:

      That's a case related to the second case - the author of the 3-d needed a flat surface. Please note that your FSX conversions may -still- not work; my understanding is that in FSX you model on a literally flat plane and FSX "bends" your model to cope with the earth's curvature. X-Plane provides no such service.

      • That's a good point actually. Still, a big win in my books!

        Wouldn't be surprised if it isn't perfect, but since flat runways normally work well enough, I'm sure individually-flattened runways will be perfectly good!

  2. Tom Knudsen says:

    This is by far the most interesting news besides the autogen performance post and oh yea, the Vulcan post. I started to work on ENHA (an airport not currently in X-Plane) and right of the bat I was presented with exactly this issue. Bumpy ground where the placed objects floated mid air, especially in the corner area. So I do welcome a new feature where airport flattening can be easily implemented. I use "runway follow terrain" constantly and replacing airport rather than turning it on. Bumpy runways I can live with and some are in real life, but when runway become a rollercoaster or even a runway with small jumps, its another thing. So best of luck to you Ben, cannot wait for this feature to come down the line.

  3. Bob Foster says:

    Ben, I have been user of X-Plane since very early versions, I started out using other Flightsim applications clear back when Commodore VIC 20 and 64 first became available. I am on of the Gateway Airport Authors and I enjoy rebuilding them to help bring a little more realism to your product. I haven't posted many comments because for my experience X-Plane is a living growing product subject to pains as we all have. My hat is off to you and all the coders who day in and out who have to listen to so many complaints. I have experienced X-Plane to be the best flight-simulation application on the market that fits my needs as a student pilot who has had to take break from real world flying. Keep up the great work improving our flying experience.

  4. Elios says:

    what would it take to be able to have user(or scenery creator) definable area to be flatend

    the issue is some airports on mountains im look at you KAVX

    • Ben Supnik says:

      I wrote an experimental airport-style polygon flattening primitive; the consensus from authors who tried it is that it wasn't accurate enough to be useful. I'll revisit this when we have a better flattening tech.

      • Elios says:

        what about at lest making the flattened area smaller?

        even if its still a box like an exclusive zone?

  5. Michael says:

    How abou a three way choice - no flatten, only airport designer recommended flattening, always flatten ?

    This way the user can still opt out of flattening when suitable mesh is available, e.g. Andras' HD mesh. I have some examples (ZGHC !) where flattening really kills the fun when better mesh is in place ...

    • Ben Supnik says:

      I consider this to be a step in the wrong direction, since our goal is -fewer- rendering option choices.

      • Michael says:

        Ben,
        I feel your pain on the rendering options and keeping the sim viable for *any* permutation of those.
        I re-read your post of 2007 on the subject http://developer.x-plane.com/2007/01/airport-flattening-the-untold-story/ and my take is - flattening works using a single NS-EW oriented retangular areas, very similar to exclusion zones. Although algorithmically very fast, the penalty is worst for narrow, skinny airports laying "diagonal" in the coordinate grid. I have seen default airports e.g. LILO where this severely cuts into adjacent mountains with strange results.
        How about implementing exclusion zone like "flattening zones" ?
        The easiest application would be to place a single zone covering the whole airport, emulating current flattening switch behavior. But if a few more are placed, a tighter fit can be created. Future extensions could allow some way to specify gradients/varying elevations for these zones. Not sure if you need those zones in the apt.dat, as .dsf loading might be too late in the process.

  6. Christophe says:

    Woot! One of the missing feature since ages!
    Thanks Ben!

  7. Alex D. says:

    Great news Ben, I have thought long time ago about this and i think it is a good solution, 10.50 list seems very interesting.

    Off-topic but related with features of X-Plane.
    When we will have more diversity in the sky ?
    It is another thing wich i think all the day. Every morning when i go to work i see the clouds wich have thousands of forms, but only few types and i dream the day when in X-Plane we will can flight over similar clouds.
    People spend a lot of time in sky, so I think this could be improved a lot in X -Plane.

    I made lots of pictures with the intention to make a new free clouds maps, but the results have not been expected because in my opinio X-Plane "repeat to much" the few textures with a high number of cloud performance drops a lot. This does not seem to make much sense and I'm sure can be improved in visual and performance way. In my opinion clouds of X-Plane 9 was more realistics in some ways and more accesible.

    I don t think the solution is in external plugins. What you think about this? If i can give a hand of help please do not hesitate to contact with me.

  8. Fabio says:

    Indeed awesome news!

    Next up: more control over exclusion zones? Pleaaase! lol

  9. Jan Vogel says:

    VERY excited about these news! I might just leave ZBAA unflattened to enjoy my "747-trap" a bit longer 😉

    Jan

  10. Jim Stewart says:

    This is great information. I have several airports that I've built in WED where I've felt that the default mesh was quite good in providing a realistic slope to the runway and to the scenery in general, but then there's others where it's REALLY needed the ability to flatten. As such I normally build in WED with the consideration that I have all the airports flattened, since I don't like trying to remember and switch back and forth.

    The only thing I've found lately, is that since the flatten is applied just to the 'points' inside the boundary, it's possible when drawing the boundary to have a slight slope on the outer edges of the airport, which causes floating taxiways when using the flatten option. The fix seems to be drawing the airport boundary bigger to encompass the 'points' outside of the airport, flattening those points as well to ensure that the whole airport grounds are actually flat.

    Knowing that the boundary is used not only for flattening, but also for the airport background, would it ever be possible to separate the two? As in, be able to draw a flatten poly in WED, that is separate from the physical (and should match the real world) airport boundary?

    (Also, I have put in a pitch here for adding access to the small/medium/large hangar OBJ's in WED. If this were to show up in 10.50, I'd be ecstatic!)

  11. Jose L Castillo says:

    Hi Ben I would like if it is possible to can add sceneries running x-plane, on hot. As an option to rescan sceneries while x-plane is running. I think this can be very usefull, when we planning a new flight.
    Thanks and sorry for my bad english

    • Ben Supnik says:

      This is not possible right now - the sim caches apt.dat information at startup and will crash if you add certain kinds of scenery in-flight.

  12. Jose Almeida says:

    This is great news! I expect it also means base mesh will not be artifitially flattened inplaces where default airports are located, so that designers can create custom scenery on an unaltered base mesh. The question is especially relevant when default airports are misplaced, which is quite common for small airstrips and aerodromes; in this case, the custom scenery can replace the airport location but the default flattening is left behind.

    José

    • Ben Supnik says:

      Only the airport entry that -actually- is used gets to decide flattening. So if the default airport calls for flattening and a custom one replaces it and does not call for flattening, there is no flattening.

  13. Stefano says:

    Hi... that is a good news. I was wondering, for 10.50 are you also working on the night textures for cities as well? I know the autogen is something different, but I remember when Xp10 was released, if you were flying at 38000 feet the cities were not visible (it was all green, like grass) but then you made such a big improvement using grey textures for cities (obviously without 3d buildings cause it would be impossible to see them anyway) At this stage I am thinking if it would be possible to add to those grey city textures a glowing light textures for the night. At that altitude 3d lights will just use computer resources for no added features but if a glowing texture is added it would be possible to see big cities far in the distance too... Big cities are even more visible at night when skies are clear. At the moment if you fly at 38000feet you don't see anything but black. To see some lights you have to go in external view and look perpendicularly down. Maybe adding those textures and getting rid of 3d lights once you are on high FLs would increase performances too and it would be possible to see London lights and English coast lights when flying over the Channel.... 🙂 I guess lots of simmers would appreciate that too... Thanks
    S.

  14. Wim says:

    I see some talented developers who make custom meshes for airports. Is it possible that they can post this meshes to LR so it can baked in the custom or HDR meshes?

    For runways I like to see a sort of micro-meshes, because some runways are curved nicely, but with some bumpy transitions.

    • Ben Supnik says:

      We are not going to bake custom HDR meshes into the default scenery.

    • That would be an extremely complex and convoluted process ... and the I do not even want to talk about the implications of managing all those "custom meshes".

      No, really, the only option I see for the - likely more distant - future is, that X-Plane could maybe (one day) do some kind of "on the fly" mesh patching (and Ben might hit me now for even bringing this idea up 🙂 .... but at least theoretically, this would be a halfway nice way for 3rd parties).

      • Ben Supnik says:

        Well, I can't be that mad about mesh patching because it -is- what I think we will someday do. It's just that we need to further migrate the engine internally to be able to take patches.

        Whether mesh patches are good for full mesh replacement or only fixing airports will depend on the implementation. (E.g. .pols are kind of like "mesh patching" for orthophotos, but they don't scale to do wide-scale orthophoto scenery.)

        • Ilias Tselios says:

          As a commercial developer, I'm looking forward for a way to have the ability to edit the mesh for airport, but without having to replace the whole 1x1 tile.

          Currently working on Chicago O'Hare airport (KORD), which sits on 2 tiles, I did a heavy mesh editing (from creating the missing ponds, underpasses, to "stitching" the 2 tiles cause there where gaps). Now, if someone creates the Midway airport (KMDW - which sits on the same tile with KORD) and wants to edit the mesh as well, a user cannot have the both meshes.

          I believe that as we move forward to more complex airports, mesh editing will be essential, and it is profound that a mesh patching system will be recommended.

          I was thinking more about an "airport special mesh", something like a square about 5x5 nautical miles around the airports (at least the major ones). This way that special tile could be edited, without affecting the rest of the tile. Of course, I have no idea if that is possible!

  15. Manuel says:

    This is GREAT news Ben, congratulations for this feature!

    I always fly -terrain contour on- because is so much realistic and nice looking, but i have been missing to fly in/out from a few airports i like in real life due to the mesh making them unusable.

    This is not the ultimate goal to patch the mesh and have any airport to follow terrain contour, but a huge step forward anyways. thanks!

  16. Colin says:

    Very glad to see this, Prince George airport was rejected because of small bump in the runway and the current version isn't very accurate.

  17. Jim Zane says:

    Austin doesn't pay you enough… 🙂

  18. Guilherme says:

    That is very good news!

    I have a question: does the developers of payware scenery allowed to use stock x-plane library of objects on their scenery? I mean facades, trees, cars, etc.

  19. Fabio says:

    Ben, a quick question I'm pretty sure is answered somewhere but I honestly couldn't find right now:

    Can I create custom .POL for Gateway airport's? For example, we do have the Pavements folder inside the library, with 6 variations of concrete and asphalt. But what if I need grass, gravel, dirt or something like that? Can I make a custom .POL using decals, as long as I'm reffering to textures inside the XP's library?

    Thanks.

Comments are closed.