Game engine & shadows mapping
Two projects developed using C++ and OpenGL.
the first one emulates the core logic used by popular game engines. The goal was to create a small, functional game engine, showcasing fundamental features such as rendering and input handling.
the second one explore the techniques required for implementing shadow mapping. This involved understanding and applying the principles of light projection, depth buffering, and shader programming to achieve realistic shadow effects in a 3D environment.
Two projects made during my bachelor degree last year
Both projects utilise CMake to build
My info
Project Info
tools/engines:
  • OpenGL(C++)
Created for:
  • Bournemouth University assignment
Time frames:
  • 2021
  • 4 months
Team size:
  • 1 person
level of education:
  • studying bachelor degree
my role:
  • Game programmer
Years of experience:
  • 2 years with C++
  • 1 Years Of professional internship
Links to project pages
Repositories might be set to private, contact me to gain access
Original concept

The game engine project aimed to recreate the main features included in the modern game engines by investigating the winning techniques used in the Unity engine.
The project focused on the creation of a system based on entities (Game Objects in Unity), collision detection, managing components and resources and lastly to allow local multiplayer by splitting the screen view depending by the number of players in the scene.
The second project was created with the scope of implementing soft and hard shadows in the game.

The game engine project scored: 71/100
The shadow mapping project scored: 69/100

Devlog
Project Scope:
Key Learnings:
  • How to use smart pointers
  • How to implement shadow mapping
  • how to use CMake
  • how to create a box collider class
  • more...

To learn the logic used by popular game engines to simulate shadows and add game elements