Wednesday, October 06, 2010

Orthophotos Are Not Going Away

I mean to blog this a while ago, and Austin has moved on to new missives about the future of X-Plane, but:

A while ago Austin posted to the news list describing our approach to global scenery (that is, the scenery that ships with the sim), and he said some, well, rather disrespectful things toward orthophotos:
Orthophotos are garbage. I see this all the time. I am zooming along in an airplane looking that rooftops of WalMarts painted flat onto the ground. And the rooftops are blurry. And pixelated. And with a magenta or purple tint. And with big blurry shears right through the middle of them when they fall between offset satellite passes. It looks just terrible.
So first let me point out a few obvious things:
  1. There was never any chance that the global scenery would be based on orthophotos - not in v8, not in v9, not in v10. Simply put, we can't ship you 900 DVDs in a dump-truck. Orthophotos of any reasonable quality are too large for covering the entire world in the base X-Plane product. This is not a change or new to v10.

  2. X-Plane is very capable of handling third party orthophoto scenery. We invested a bunch of engineering in this in the v9 run, and that code is not going away in v10. X-Plane will page orthophotos on multiple cores so that you get smooth flight and crisp images. If you want to see some orthophoto that don't look blurry or pixelated, look here.

  3. DSF-based scenery that works in X-Plane 9 will work in X-Plane 10, unmodified. We are not getting rid of any modern scenery file formats.

Beating Ourselves Up

Austin continues in his rant^H^H^H^Hdiscussion, with this:
Then, to make the 2-dimensional, blurry, pixellated, mis-colored, distorted roof of a WalMart painted on the ground look even worse, if you throw in some REAL roads or auto-generated buildings, they invariably fall ACROSS the roof of the WalMart painted on the ground, compounding the wretched orthophoto with an Escher-like rendering-error. This looks terrible, and is not even plausible.
This is a critique of the version 8 and 9 global scenery. In fact, it is an observation of the fundamental problem with the urban global scenery: we never found a way to synchronize the real-world-driven and real-world derived 3-d scenery (real roads with plausible buildings and forests in between) with the photo-based land-class textures running underneath.

Ironically, this is not a problem with orthophotos (that is, specific photos placed in the world where they belong) per se. It's really a problem with how to combine 3-d with land class textures. I don't believe anyone has solved this problem yet for global scenery; if you look at FSX, there isn't a lot of real world vector data to interfere with the land classes and their autogen.

In fact, orthophotos can look very good when they are combined with 3-d in a correlated way. For example, take a look at this screenshot of FlyTampa's KBUF . They are using an orthophoto but they are putting matching 3-d on top of it, which makes things look good close up.

The Global Scenery Problem

I'll leave you with this thought: the problem for the version 10 global scenery is to combine:
  1. the plausibility that you get from having synchronized 3-d and ground textures.
  2. the detail we've come to expect in photo-based scenery textures.
  3. the realism you get from using real vector data for the real world.
The current global scenery manages points 2 and 3 but fails pretty badly on point 1. That is what we are trying to address in X-Plane 10.


Anonymous said...

Awesome to hear you've identified and are working to solve the texture/object alignment issues with v9 scenery - the only issue I ever had with it! /Nils

Anonymous said...

The solution might lie in cutting the texture map in a cookie cutter fashion into different colour zones. Black or near black (shadow) layer 0, Earth tones and blue layer 1, Grey to white and red layers 2+.

Use your newly created drape attribute with default offset for colour zone types. eg Black or near black offset -1 foot. Earth tones incl blue 0 feet offset. Grey +1 foot. White + 35 foot. Perhaps + level textures would have to be converted to objects or pseudo objects to somehow generate vertical fill. By psudo object I mean a texture that behaves like an object with a predefined height. An oxymoron I suppose (textures with object like behaviour, but efficient). Perhaps that is the challege. /Gavin newby