Terrain for Real World data

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Terrain for Real World data

      I'm using real world data to model a terrain.My data set is
      coming from GTOP030 .DEM(Digital Elevation Mode) file.I've a total of
      12000 x 14400 grid,which is my world which i've to model.
      Now,The problem comes in that obviously we can't load all the
      data in.What i'm thinking is that load terrain data dynamically as we
      moves over it.The design coming to my mind is that i'll be having a
      Terrain Rendering Queue containing Terrain Class Objects,Which will be
      rendered.This queue can grow or shrink at run time.And data for these
      terrain objects will be loaded in the background thread at run time as
      per requirement.
      This is a very abstract view of what i'm intending.If there're
      any other techniques,please let me know or comment on what i've
      -Human Knowledge Belongs To World.
    • You may want to look into some form of quadtree/octree. If I understand the concept correctly, you're continually dividing up your world into smaller and smaller "sectors" until you reach a set resolution, then you just process the data only for the sector you're currently in.
    • Something I've done successfully in the past was based upon the quadtree breakdown of the height field.

      Once nice thing with DEMs is that the data is regular, so it is very suitable for performance-oriented reorganization (aka:pre-processing).

      Basically, what I'm talking about is preprocessing the dem and related texture data into a database that is quadtree organized so that you co-locate all the height data and related rendering data, and put it into pre-processed form to minimize cpu cycles necessary for loading and rendering ( and spatial queries such as collision and so forth ).

      If you do this in an octree, or a "stack of quadtrees" at different resolutions, you can organize your data in such a way that you can view it as a continuous level-of-detail data field.

      Creating your in-memory structure to maintain a view of the world using some relatively fixed amount of geometry and texture data, and updating it per-frame to change the structure as little as possible to follow the field of view, you can do a lot to tune your terrain simulation to your actual visible area and maximize detail.

    • Using quadtrees and octrees are definitely worth looking into - especially with such a large dataset.

      You'll also want to use a good CLOD algorithm as well (e.g., ROAM, Lindstrom, Rottger, Chunked CLOD, etc) since using brute force to render a 12000 x 14400 height field is going to bring even a GeForce 6800 Ultra to it's knees :D

      Rather than using real world dataset such as DEMs have you considered procedurally generating your height fields? It is possible to create an essentially infinite landscape using Perlin noise.