OpenGL generated scene
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
common
docs
duck
external
group19
skybox
textures
.gitignore
CMakeLists.txt
README.md
Stage-1-Defferrard-Fechting-Doan.zip
Stage-2-Defferrard-Fechting-Doan.zip

README.md

Terrain

An OpenGL application which generates a terrain geometry and renders the 3D scene on the GPU. A camera, pictorially illustrated in the global view, follows a configurable Bézier path through the scene. It was realized as a semester project for an introductory lesson in computer graphics at EPFL.

Featured techniques:

  • Procedural terrain generated by hybrid multi-fractal with Perlin noise function.
  • Material texturing based on terrain height and gradient.
  • Seamless cube-mapped skybox.
  • Self-shadowing using shadow mapping.
  • Water reflection, refraction and depth effects.
  • Free flying and FPS exploration modes.
  • Runtime configurable Bézier camera path: 2 Béziers, 8 control points.
  • Animated pictorial camera along the path.
  • Particles system: 8000 particles which position and speed are controlled in parallel by the GPU.
  • Two (interchangeable) simultaneous views: global and camera.
  • Object oriented programing.

path particles views

Structure

  • group19: main source code
  • docs/reports: reports explaining what has been done
  • common: set of provided CMake and headers
  • external: provided external libraries
  • textures, skybox, duck: texture and vertex ressources

Build and run

Dependencies:

cd build
cmake ..
make
./group19/group19