Not logged in, Join Here! or Log In Below:  
News Articles Search    

Submitted by Chris Allport, posted on February 18, 2001

Image Description, by Chris Allport

Pictured here are screen shots from different places throughout the GVP (Global Visualization Process) database. GVP is a real-time visualization engine with complete object management capabilities. Developed by the Navy Crewstation Technology Lab over the last two years, it is ideal for out-the-window scene generation (i.e. flight simulation), command and control systems, mission rehearsal, and just about anything else you might want to simulate in the real world.

The top left image, shows the entire earth as rendered in GVP. Unlike most visualization systems, GVP uses round world geometry (WGS84). This eliminates many of the problems encountered in distributed simulation with engines using flat-world databases. Also, most graphics engines use fog to obscure the far clipping plane. In GVP, we are using the curvature of the earth to limit the visual field. For those interested, the far clipping plane is set at 30,000,000 meters, and the near clipping plane is set at 1 meter. Additionally, we have a model of the entire earth (as demonstrated in the picture) at varying resolutions. For the sake of simplicity, we used a map over parts of the US instead of terrain -- it makes things a little more interesting. The imagery here has a feature resolution of 2km.

The next image, counter-clockwise, shows part of our Washington DC database, Reagan-National Airport. You can see two planes on approach to the runway. Actually, there is just one plane captured at two different instances in time -- they would not likely be landing aircraft that closely. The next image is from the same database. It is the Ellipse (the White House is in the bottom of the image). The resolution of this piece of the database is 1.25 meters.

The mountains (center-right) simply show that we are not just pasting imagery on a flat ball. We are building a terrain database using DTED (digital terrain elevation data). The imagery resolution here is 5 meters.

In the lower and upper right, you can see sample images from our 3 inch database. In the top image, you can see two people standing on a runway with their shadows stretching out from them. In the lower image, you can see that cars are clear to the point that make and model can easily be discerned. Anyone want to guess what the red car is?

All told, the imagery in this system comprises about 180 GB. We are looking at ways of using image compression techniques to make that database about 36 GB.

Not shown in this image is the object management capability of GVP. We can simulate thousands of entities all at once, and have multiple viewpoints attached to the database at once. This allows for unique interactions like dogfighting and head-to-head mission planning. Think 3D Risk.

Since this system is currently under patent investigation, I cannot make too many comments on specific implementation details, though I will happily share what I can. We do not have a web page, but I did produce a DVD which showcases this system rather well. If anyone is interested in a DVD, please let me know.

Image of the Day Gallery


Message Center / Reader Comments: ( To Participate in the Discussion, Join the Community )
Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.
Joachim Hofer

February 18, 2001, 04:19 PM

This looks really impressive, espcially when taking the huge data into account. I donīt want to know what kind of computer you use for this, but the technique seems to be very professional indeed. Good to see something like this at flipcode.
I just wonder what you meant with "round world geometry". Is this some sort of Splines or what do you mean with round?
Anyways. Good work. You for sure may be proud of that.


February 18, 2001, 04:45 PM

Well, there are a group of people that would argue that if you set out in any one particuliar direction and went straight in that direction for a given amount of time, you would end up back where you started. They are a particuliarly fanatical group. Everyone with a sane mind knows that you would fall off the edge of the earth ;)


February 18, 2001, 05:04 PM

Cool. This truly shows that real-time 3D systems also have a place in the "real" world, and not just in games. Is your image database completely made up of satellite-images, or is it a mix of satellite and airplane images?


Jesse Yurkovich

February 18, 2001, 05:51 PM

Yes, i too have been wondering just how to make the world "round". Im currently using USGS DEM models for my elevations. Would i be able to use this data still if i could somehow warp it into "round" space, or are DEM models round to begin with.


February 18, 2001, 09:09 PM

This is the singualrly most impressive IOTD I've ever seen - sarcasm aside. I don't remember who I'm quoting here from this forum, but I agree, there's certainly something "naughty" about seeing real data used as input. I'd love to see a live transition between different image databases as you come in from high altitude... it'd be a nightmarish recreation from my first skyjumping experience ;)
It's a shame this was created for use by the US navy - it'll probably be quite a few years before a home-market flightsim has access to the sort of intelligence that makes a project like this possible.
3 Inches resolution.. damn man. "I CAN SEE MY HOUSE FROM HEEEERE!"

What am I saying?! How can it be "a SHAME" the US navy has this kind of topography data on hand instantly?? I must be nuts :) I sleep better at night knowing we've got a couple of AGCF's parked off the coast with access to this kind of data :).

As brilliant as this is.. as with all tech geeks I'm instantly thinking of "wish list" ways it could be better... Even at 3inches texel size the worlds going to look a very barren place for a chopper pilot, and the ocean pretty cardboardish for your ships... but who am I kidding??

Awsome project, simply awsome.

Mark Friedenbach

February 18, 2001, 09:25 PM

3 Inches resolution.. damn man. "I CAN SEE MY HOUSE FROM HEEEERE!"



February 18, 2001, 11:43 PM

Hmmmm, i don't like the bit about the system being "under patent investigation", sounds like US big-brother military crap.

It would be no shock to realise that the US government would have something like this already, and for a while now. I mean, if you've been leading the computer age since it's military beginings, sending satelites up into space, collecting (plus already having) large amounts of world wide data, you'd surely think you'd have one of these too!

Apart from the political, the technical side is pure brilliance!!


February 19, 2001, 01:35 AM

gfmgh... good god, 3 inches? Damn, I was happy with my 2048x1024 earth textures. That's truly incredible, what kind of hardware are you guys using?
As for 'round world' geometry, that's not too tricky . I imagine you'd just have your height map data mapped using spherical coordinates and then use the height data to perturb the point on the sphere by that amount along the vector between that point and the centre of the sphere. Flat terrains are annoying, I hate dropping off the edge of the world. Stop using flat terrains people, the flat earth society probably think they have more support amongst the coders of the world than they actually have.

Anyway, nice to see some stuff from people who have computers powerful enough to make the rest of us drool.


February 19, 2001, 02:01 AM

As for the car, would I be correct in assuming that it's yours? The geometry for the sphere appears to be a geosphere, the type that I've been playing with to do this sort of thing (although I'm not sure that any comparisons between what I can do on a 500 mhz Pentium and this kind of monster stuff are applicable). I imagine there are quite a few novel ways to control tessellation using the curvature of the earth as a guide; Not only do areas that are further away require less polygons but the earth's curvature would allow you to drop the polygon count at the horizon as the geometry would be bunched up there. I imagine that the current altitude would be a useful tool for this as well.
Anyway, as if any proof was needed that the military still have all the best toys, this is it.


February 19, 2001, 02:26 AM

I think he is asking about the make of the model, not who's it is.
I say the red car on the far left is either a Porsche or a Miata.
But then it seems odd that a Porsche would be parked next to a
pickup trunk and the other cars look kinda crappy, so I would
probably go with the Miata guess.

Jesse Yurkovich

February 19, 2001, 02:31 AM

Yeah, you should be able to determine far clipping plane based on altitude. I remember doing a problem in algebra II 3 years ago that basically asked "if a cell phone tower is 200ft off the ground, what is the maximum range it can 'see' before the Earth's curvature interupts it and another tower nneds to be put up?" it turned out to be around a 17mile radius (27358 meters). Bad thing is i forget the formula :( DOH!!! The formula worked for sea level also correctly matching accounts by sailors who could only see another ship roughly 3miles (???) off into the horizon. his 30,000,000 meter clip plane would prolly feel like you're off in space somewhere and would be 'unreal' in the fact that "fog/smog" can be seen on earth :) hehehe

but getting back ontopic. Can you describe your technique a lil more as i am still very interested!! If you dont want to post here, ill reply back with my e-mail so you can just mail me.

Adrian Lark

February 19, 2001, 04:25 AM

I think the formula you are looking for is

where R is the radius of the planet and H is the height of the viewer off the ground.


February 19, 2001, 11:41 AM

Wow. Never expected to see something like this here. "Weapons Grade Graphics", very cool.


February 19, 2001, 12:18 PM

You be the judge

Boxter S


Miata (This is the best picture I could find on their site)

I'm edging towards it being a Boxter S but the size of the headlights make it look a little more like a Miata.
I'm still guessing Boxter S though. It would really help if you had a resolution where we might be able to read
the text on the back of the car. How about you post another picture when your 3D engine can display that? :P


February 19, 2001, 02:44 PM

I think your formula is an approximation, if my calculations are correct the formula is
D = sqrt(2*r*h + h^2) (where D is the distance from the viewpoint to the horizon)

D = r*arcsin(sqrt(2*r*h + h^2)/(h+r)) (where D is the distance on the surface of the sphere)



February 19, 2001, 10:44 PM

That's just scary.

So when are you releasing a RTS game based on the engine?

Ben Dilts

February 20, 2001, 01:44 AM

hmmmm... stop me if my math is wrong.
The map is about 4000 miles across.
4000*5280 ft*12 inches / 3 inches = 84480000 pixels across

total map size is 180 GB, or about 193273528300 bytes. That's 64424509440 24-bit pixels grand total.

64424509440 / 84480000 = 763 pixels high. 763/4 = 191 feet.

Does this mean that if the entire database is 24-bit color and 4000 miles across, it is 191 feet tall? When i first saw the numbers, it seemed a little bit off. Or is it just that much of the data still has to be collected?

But anyway, this is pretty amazing. I can just see this system being updated in realtime by satellite broadcast. Imagine flying in a sim where you can literally have your friend stand on his roof and fly by and see him waving. That's uncanny.

~BenDilts( void );


February 20, 2001, 11:57 AM

Thank you all for such encouraging comments. This has been a serious undertaking of this lab for about the last two years, and it is really nice to share a little with the community. I will do my best to address each of the comments/questions. If you would like more information, please let me know. My sincerest apologies for not following this yesterday, it was a day off, and I was busy at home.

The Round World Geometry.
Most simulators use flat world geometry. Meaning that the entire world is constructed on a plane - i.e. the X-Z plane. With a round world geometry, you base the world on a spheroid (or in the case of earth, an ellipsoid). This allows us to get accurate results using latitude and longitude. Flat world simulators using lat/lon are constantly battling fudge-factors to make things fit - they are plagued with these problems and the results are terrible (it is not unheard of, in on of these systems, to see land units in water, etc.).

While we would certainly love to rebuild the system using subdivion surfaces (based on actual data), we do not have the time or budget (yes, government labs have serious concerns about that, too, but that is a discussion WAY off topic).

Making the data round is one part of our database building process. First, we build the data the same way as if it were a flat geometry. Then, we locate where that data is in the world. At that particular location, there is a certain amount of curvature to the underlying elipsoid. Thus, we warp the data to that reference ellipsoid (WGS84). We are using several different sources for heightmap data, DEM, DTED, etc.

There was a little discussion about the clipping plane. The clipping plane is set at 30,000,000 meters for a coupl eof reasons. We are, in fact, drawing the entire earth all the time. This is not really a waste since the entire earth is not high-res at all. We are doing terrain paging so you do get significantly more detail (mountains, hills, etc) as you close in on the terrain. The view is limited by the curvature of the earth not by an artificial clipping plane. This permits us to do much more realistic visibility simulation as well as have unconstained visibility. This is particularly nice when we are demonstrating the system and flying around at 3,000,000 meters/sec. (The system can easily handle these update rates.)

The Imagery.
The imagery in this system is a mix of satellite imagery and aerial photography (black and white, pseudo-color, and true-color). Our system can take arbitrary relution images and mesh them into one giant database, which provides the final result of one giant seamless texture.

Yes, you could see your cat. While this system is showing 3-inch data, theoretically, we can show 4 cm resolution. Believe it or not, we just can't get the source data! This is true for most of the world. A fine point that I omitted, out system does support this resolution over the surface of the ENTIRE planet, we just need the hard drive space and time to process it!

As for the math, that is a great observation, but the underlying assumption is wrong. First of all, the map is not at 3-inch resolution. The map resolution is at about 250-meter, which results in a MUCH smaller database. Plus, there is more than 4000-miles of imagery -- the ENTIRE earth is textured with 2-km resolution imagery. Then, in San Francisco, we have some 30-meter and 5-meter data. A little further southeast, we have a large section of 30-meter data. Around the Marine Corp training range at 29 Palms, we have 5-meter and 1-meter data. Then, we have half of Maryland at 5-meter resolution, Washington, D.C. at 1.25-meter, and our location at 3-inch. All together, this makes the 180GB. At this time, we are not using texture compression, but it is on the horizon.

The Hardware.
First I will make you cry, then I will make you happy. The screenshots above were taken from the system running on an SGI Onyx 2 InfiniteReality (a VERY expensive machine). That's the bad news. The good news, it also runs on a $3000 PC. That's right. We have this system running on a dual 800MHz Pentium III with an NVIDIA GeForce 2 Ultra, 512MB RAM, and LVD-SCSI hard drives running GNU/LINUX! It DOES NOT run on any Microsoft platform. The PC version is not as fully featured as the SGI version. Primarily, two things are missing. First, the PC version does not do stereo. The SGI version can do true-stereo incurring NO ADDITIONAL PERFORMANCE HIT. Second, the SGI-IR systems have hardware support for texture paging and the PC does not. Texture paging can (and has been) emulated in software. This limitation is temporary.

On one development platform, the system runs at speeds close to flight-simulator (30-60 Hz) speeds. On the inexpensive development platform, the system runs at 70Hz (1024x768) -- we suspect it will go higher with different refresh rates.

The Politics.
It is widely held that this system is not patentable. There is very little that is actually novel here. The object manager is the most novel piece, but anyone in the industry would just recognize it as a distributed simulation engine. Basically, everyone developing a MMORPG has built this (with a few modifications).

The world that came down to me was basically this. If an innovative project has been developed by the Navy, it must go under patent review. This protects the Navy from having to buy this exact same software back from a vendor in the future. This makes excellent sense since this project was started so the Navy would have the source code to such a powerful system.

The Car.
Okay, that was more of a joke than anything. Around here, we are saying it is a Miata, and no, it is not my car. It could be a Porshe, but I somehow doubt it.

The Future.
We are actually exploring the idea of stripping live-feed imagery into the system in real-time or near real-time. Right now, our production step in on the order of days (for a small addition) and probably months (3-4) for a complete rebuild of the entire database. We are primarily supporting the Navy's UAV (unmanned aerial vehicle) effort, so you could understand why this would be of interest to them.

Personally, I am very interested in developing a RTS/MMORPG using this as the engine. Logistically, it would be hard to do because of the large database and amount of processing power needed to run this. While a $3000 PC is not unheard of for hard-core gamers, it is still a little out of reach for many of us. But in terms of RTS, you could actually have a complete military hierarchy, with indpendent & related decisions being made on each level. The object manager was design with this in mind.


This thread contains 18 messages.
Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.