Tuesday, October 16, 2007

Roads: State of the Union

When I posted about roads a few days ago, I didn't realize that people had such, um, "strong" feelings about them. At risk of throwing fuel on the fire, here's the overall state of the road system in X-Plane:

1. Architecture

For all of the problems with the road system, I think the architecture makes sense: DSFs contain directed networks of roads, graphic resources describe how to draw them as scenery, and cars are generated on that road network dynamically. I don't see the system fundamentally changing - rather, we'll have extensions to the rendering definitions, more advanced car behavior, and other additions within the existing framework.

(I think this is true for most v8 scenery technology - we have a lot of room to grow without a huge rewrite.)

2. Default Road Data

This is the weakest part of the road system - the data in Europe comes from horribly old sources (VMAP0) and even the US data (from TIGER) doesn't contain accurate enough flow information to really draw a nice detailed road grid. I don't see this getting a lot better any time soon...but I think there are three ways this could get better:
  • We'll keep improving how we process the data in the default scenery. (But to some extent, junk data going in is going to produce poor results no matter what.)
  • If we can ship overlay roads in v9, users will be able to customize road data. This would be the source of the best road data possible, at least for the relatively small* area where users customize roads.
  • Some one (us or a third party) could build an add-on pack that uses commercial navigation-quality roads. I do not think we will ever have this in the sim itself - the pricing of commercial data makes this impossible. (This is not about LR being cheap - this is about not losing money on every sale of X-Plane.)
3. Road Rendering

I believe that while road rendering leaves a lot to be improved right now, it is appropriate to the level of data we have. That is, we don't have nicely rendered intersections, but with such weird intersection data in the global scenery, even nicely rendered intersections would look absurd.

Once we have better road data (via better generation, or more likely, user-modified data) we'll incrementally provide improvements in the way roads look, probably including extensions to the .net format that defines their look.

4. Car Brains

Right now the AI for the generated traffic is very simple, and the way the cars drive is crude. But here again I think we need to crawl before we can walk - without nicely rendered intersections (from well-formed data), there's not a lot of point in working on this.

Summary

The road system will grow incrementally, first by allowing users to insert customized data, then by providing tools to make that data, and then by improving the way the sim draws and drives on this data. It will be an incremental process, and when it comes to roads, version 9.0 will have some evolutionary steps but nothing revolutionary.

* I think in terms of the whole world (14,000 DSFs), so user-contributed data represents a small fraction of the total scenery system. On the other hand, human beings live in clustered areas, so the numerically small number of contributions we receive will have an outsized benefit by being in "important" areas.

7 comments:

Josh W said...

http://www.openstreetmap.org/ ?

Patrick Waltmeister said...

Oh my god, this is a great idea! If we could have a talk with those over there, we might actually have global roads!

Please Ben, please look into this as a mighty solution!

Benjamin Supnik said...

OSM will be a great resource some day, but I don't think it contains enough data yet to be used for global scenery.

Patrick Waltmeister said...

But don't you think its better than what we have outside the US at the moment? To me it looks like an awsome idea. I mean, it's not like there will be -fewer- roads in the future OSM, but rather the opposite!

I really feel that whatever is better than what we have now outside US is well worth looking into.
Please Ben.. I'm begging you :) I live outside US and I have for more than half a decade wished for a better roadsystem.

Regards,
Pat

Benjamin Supnik said...

Hi Patrick,

First of all, no OSM in the next render. That can't change - the render is by date, that is, we will cut what we have with whatever improvement we have ... given the complexity of including new vector sources, I would have had to be working on OSM months ago, which I wasn't. (I admit, the last time I looked at OSM was not months ago, but rather years ago, but this turns out to be moot - see below.)

I am not saying we will NEVER have OSM...but I am saying it is not, in its current level, appropriate for a render now. It will get better -- and when it does, we'll use it.

I think the ideas behind OSM are really great, and the progress they've made is very impressive.

But I've spent a few minutes browsing the database, and it doesn't take long to find big gaps in coverage. The problem is with the patterns -- you might find a neighborhood within a city where the roads just aren't there...or a major arterial highway just stops 20 miles outside a city.

It's these kinds of _inconsistencies_ in _quality_ that make OSM inappropriate for global scenery right now (but a possibly beneficial use for custom scenery).

Remember that any conflict or problem with the data in global scenery must be resolved completely by computer program, not by humans...VMAP0 (road data outside the US) is really awful...but it's _always_ awful, and that means that whenever the SWBD data and VMAP0 data conflict, we know exaclty what to do (trust SWBD over VMAP).

It looks to me like OSM coverage isn't adequate to throw out VMAP0, but the coverage isn't consistent enough to blend them (blending vectors is very hard).

So we'll get there someday, probably first with custom scenery and then even with global, but not for the next render which will happen relatively soon.

Patrick Waltmeister said...

Really sorry for making a doublepost here, but check out London in OSM. I would just dream of flying there. But seriously, the detail and quantity seems outstanding!

Patrick Waltmeister said...

Oh, I just read your post. And to be honest, I really understand you. I guess it's really a question about time. But please don't forget about this site. But instead let it grow as you say.

Thanks anyway Ben and keep up on the great work!