
MY PORTFOLIO

A 3D TERRAIN GENERATION TOOL
C++, SDL, OPENGL, CEREAL, IMGUI
A 3D terrain generation tool built using my 3D game engine. This tool allows for easy loading, modifying and saving of terrain height map and blend map, environmental shader effects, positional data and collision data. All terrain data is saved as a binary file, and then easy loaded into a game, using my game engine.
ADDITIONAL FEATURES
-
Real-time transformation to adjust position, rotation and scale, including setting world bounds
-
Environment effects including skybox, skybox tint and fog
-
Wireframe Mode to ensure correct vertex placement
-
Normal Map Mode to view lighting effects in real-time
-
Multiple cameras to switch between player or edit view
-
Full serialization for fast loading and saving of terrain files
-
Slick and simple UI design using ImGui
-
Default texture starter pack including height map, blend map, normal map and tiled textures

3D GAME
C++, SDL, OPENGL, CEREAL
A 3D puzzle game built using my game engine and terrain generation tool. This project was built during university, to enhance and showcase my understanding of the OpenGL API and shader effects. The game is a mini-psychological horror game, with the player trapped in a state of sleep-paralysis.
ADDITIONAL FEATURES
-
Full PS4 controller support, using ASR input handling
-
Debug Mode to view shader effects being applied in real-time, such as limited distance normal maps
-
Environment effects including skybox, skybox tint and fog
-
Multiple lighting effects including directional light, point lights and spot light (for the players flashlight)
-
A live mini-map embedded into the UI
-
Multiple use of textures, such as diffuse, emissive and normal, including height maps and blend maps for terrain
-
Fully functional UI system including player guide and inventory
-
Immersive audio using FMOD sound engine
-
Transitioning shader effects upon triggered events

2D TILEMAP GAME
C++, SDL, TILED
A 2D tiled, side-scroller time trial game. This game makes use of various layered tile maps to ensure correct rendering and collision physics is achieved. The player uses the keyboard to navigate and to pickup or interact with objects. The player must collect all the gold sacks, before the timer runs out.
ADDITIONAL FEATURES
-
Fully functional player and game object animation
-
A complete 2D tile map, created using Tiled
-
Various custom-made pixel art
-
Trigger-event system
-
Full finite state machine
-
UI with text rendering and player high score board