Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Results 1 to 2 of 2

Thread: Exaggerated Elevations on Globe

  1. #1
    Junior Member Newbie
    Join Date
    Feb 2010
    Posts
    20

    Exaggerated Elevations on Globe

    I think this is more of an advanced topic rather than a shader topic for please forgive if posted in the wrong forum.

    Iíve have seen in the past many rendering of globes, Earth and Mars for example, where the heights of the terrain were greatly exaggerated and give a very unique look to the final rendering. Iíd like to know the techniques used to create such renderings.

    I have been working a solar system rendition and have many techniques worked out like bump and parallax mapping, shadowing and translucencies for rings and all looks really good. I have attempted to do deformations, just for effect, but from what I have gathered so far is this work can only be accomplished in the vertex shader. Using the marís elevation maps for example I can extract the height at the texture coordinate and adjust accordingly. To get any sense of accuracy I need to generate an enormous amount of geometry for my sphere in the order of one vertex per height sample. I have done this in a smaller extent with flat geometry and quad-trees to generate flatter elevations with shadowing but large geometry is also required to get any sense of realism and the cost of performance. The global perspective is something Iíd like to play with.

    I suspect the answer is it will require the detailed geometry but wondering if there is something I am missing. My target is earlier versions of GLSL since Iíd like to target iOS for example. Is this type of effect even possible in a real-time type simulation? Are there techniques that I have overlooked?

    Any insight is greatly appreciated.

    This is more of a research question at this time as Iíve wanted to dive into this more but not sure of the approach.

  2. #2
    Senior Member OpenGL Pro
    Join Date
    Jan 2012
    Location
    Australia
    Posts
    1,101
    The easy way is to use tellesation with LOD but I don't think iOS supports tesselation - in which case you need real vertices but you can use LOD index buffers to keep the render time up. It may also be possible to rebuild a fixed vertex buffer bases on the distance the camera is from the sphere for the frame.

    In general you cannot do everything on a iPhone/iPad that you can on a desktop - it just does not have enough grunt.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •