Very Large Terrain Demo

antlers

Regular
Spacecraft have been collecting vast amounts of topographic data from various planets for some years now, and I've always wanted a program that would display that as 3-d terrain and let you wander around in real-time. I realized that Humus' Infinite Terrain demo got me most of the way there, so I decided to finish the job.

This demo will display the most detailed Mars Global Surveyor topographic data available as terrain.

Not much new specifically 3d here, although I did add support for nVidia's vertex array range extension to Humus' terrain code which should help performance on nVidia cards.

Thanks to Humus for doing all the tricky stuff and making his code available for others edification.

mars_example.jpg
 
Ah, that's pretty cool :)
I grabbed the first of those .img files and it looked very flat .. going down close to the ground and it looked like it actually was some kind of height difference. Not sure if I just got a boring flat part of mars or if there's a problem. I'm grabbing another .img file now to see if that helps.
 
Oki, so it was just a boring part of mars I got first. The other one had much more interesting landscape. Looks very good indeed, way more real than my perlin noise function, well it's real data so it should better look real :)
From an artistic viewpoint though, I would have changed the skybox though. This one looks too much earth and not so much mars. Something more red would have suited the environment better.
 
The northern hemisphere is extremely flat except around the 230 meridian where there are some volcanoes (some very big volcanoes).

You can use this page to find interesting spots to look at.
 
Check out JCanyon at http://java.sun.com/products/jfc/tsc/articles/jcanyon/

Smooth flythrough of 300+mb of terrain data (geometry and textures) with Java in "real time" (45fps with 1.4.0 client VM, probably faster using 1.4.1 server VM with concurrent GC)

I think the Webstart link doesn't work anymore, but nonetheless was impressive when it was first demoed.

Edit: the webstart link still works. Best to have atleast Java 1.4.1 installed.
 
About scale: I know very little about the OpenGL coordinate system. In this application there are 128 height samples to a degree, and height samples are spaced 8 "units" apart on display. Samples, therefore, are about 450 meters apart at the equator; closer to the poles they are closer together. There are 1024 "units" per degree; each "unit" represents about 55 m at the equator. Samples are accurate to 1 m vertically; I scale 30 vertical meters to 1 "unit". So vertical scale is somewhat exaggerated at the equator; less so at higher latitudes.

Very interesting link on the JCanyon demo. It seems that JCanyon is using essentially the same rendering algorithm as Humus' to render the geometry. Texture coordinate assignment is much more sophisticated in order to render photo-realistically, but most of that processing is done off-line. I was thinking of porting the terrain demo to Java3d; I wonder how the performance would compare.

It seems like they had the same experience with the Vertex Array Range extension that I did; if you don't have more than 32 MB in your card (no cards did at the time they were doing JCanyon) it ends up slowing you down when you start trying to render more geometry than your card can hold.
 
On the subject of modelling planetary surfaces in 3D, is everyone aware of this site?

http://www.mars3d.co.uk/

They've got a Mars explorer, Earth and Venus globes plus a nice one with galaxies. All worth a play with!
 
mars.jpg


this is my home planet

lol it kinda looks like some hyper space scene from star trek or star wars now that I look at it
 
I think that's what you get when it's trying to display random data.

What video cards do you guys have?

Which .img file did you download?
 
Sorry antlers4, never read the manual before I tried it (typical) ;)
Going to download a mars map and see what it can do :)
 
Back
Top