Project Details

OpenGL Game Engine

A custom-built game engine similar to Unity or Unreal, built utilizing OpenGL, SDL2, & GLFW libraries. This Engine uses C++ as its primary syntax and can render a 3D or 2D object with shaders textures in an open 3D environment.

category:

Game Engine

Tools:

OpenGL, SDL2, GLFW, ASSIMP

Languages:

C++, GLSL

Project Description

This game engine was made to showcase the ability to load 3D or 2D objects with proper lighting and shaders using the OpenGL rendering pipeline and will be used in the future to create game applications. This Engine also uses the SDL2, GLFW, SOIL2, & ASSIMP libraries to handle other functionality with the engine. Both fragment and vertex shaders were written using the GLSL syntax. For more details check "Production Notes".

OpenGL Game Engine Demo

Production Notes

After running into issues with other game engines and wanting to create a similar product, I decided to create a custom game engine that would have the ability to load objects, apply shaders, add a skybox, & have added a camera that can easily move around the environment. This led me to use OpenGL and many corresponding libraries, below I have included the function of each library and what its purpose was in this project.

  • GLFW: Was used to create the project window & handled keyboard and mouse input for the Camera.
  • SDL2: Handled rendering of objects & object event handling.
  • ASSIMP: Handled the importing of my 3D models
  • SOIL2: Handled uploading textures into OpenGL

The skull object with a "Toon Shader" applied

15+

Project Done


Lines of Code

5000

Cups of coffee

4+

Years Experience