Skip to content

3D Graphics Engine For Games | C++ OpenGL 4.1

License

Notifications You must be signed in to change notification settings

stanfortonski/3D-Engine-OpenGL-4

Repository files navigation

3D-Engine-OpenGL-4

3D Game Engine (made with API OpenGL 4.1) for C++

Engine features:

  • Blinn-Phong lighting
  • Bloom/HDR effect
  • Omnidirectional shadows
  • Perspective/orthogonal camera
  • Multisampling
  • Particles generator
  • Terrain generator based on 2D heightmap and tessellation
  • Terrain LOD - level of detail
  • Water with reflection and refraction
  • Heightmap 2D/3D generator based on Perlin noise and random noise
  • Heightmap to normalmap converter based on Sobel operator
  • Input/output based on GLFW
  • Model loader based on Assimp
  • Skeletal animations
  • Font rendering based on FreeType

Engine delivers simple shaders that support features of this engine.

Engine structure:

  / - base engine class, config, include 
  base/ - shader and program compilators, texture class
  buffer/ - buffers e.g framebuffers
  camera/ - classes of cameras 
  renderable/ - everything what you can render
  scene/ - scene class
  support/ - supporting files
  texture-generator/ - noise, heightmap, normalmap generators
  window/ - window class
  shaders/ - proposed shaders

Requirements:

Example applications that use this graphics engine: Procedural Terrain Generator & Stickman 3D