Sunday, May 26, 2013

3D OpenGL Engine Demo

Fractal terrain rendering – Interactive 3D Environment

Languages: C++, GLSL
API: OpenGL 3.3
Tool and resources: GLFW, GLEW, Assimp, GLM


Rendering techniques:

     1)      Terrain rendering
                        Fractal generated terrain
                                      Tri-planar texturing
                                      Distance based texture level of detail
     2)      Water rendering
                       Normal mapping
                        Displacement mapping
     3)      Sky and clouds rendering
                                     Gradient sky dome
                        Parallax scrolling


Key characteristics:

       Environment
       Free first person navigation
       Third person navigation
       Quad-tree for fast terrain frustum culling
       Fractal terrain
       Procedurally generated terrain based on parameters: size, roughness and height scale
       Adjustable level of detail based on the number of iterations in the generation algorithm

       Unique terrain shape



Screenshots:

1. Terrain


        Roughness=1.0                             
        Height scale=1.5
        Iterations=11









        Roughness=1.0
  Height scale=1.5
  Iterations=7





         Roughness=0.8
   Heightscale=2.5
   Iterations=11








         Roughness=1.3
    Heightscale=1.3
    Iterations=10








- Texturing level of detail based on the distance to the camera
- Tri-planar texturing to solve the issues when texturing high slope terrain

High-slope terrain:




    - Texture level of detail - Far
    - low-detail texture
       












    - Texture level of detail - Near
    - high-detail texture









2. Water

• Two displacement maps
• Two normal maps
• Per-pixel lighting
• Effect of moving water with adjustable waves in terms of speed and scale

High level of displacement

Low level of displacement









3.  Skydome





      Parallax scrolling clouds: Two layer of dynamic clouds moving at different speeds to create the illusion of depth.









     Gradient skydome: interpolates between the horizon color and the top color of the skydome based on the local height of the sphere model













Demo: Youtube Demo

No comments:

Post a Comment