Benjamin Naylor

Welcome to my portfolio.

Shader Programming

The techniques I managed to implement are the following: Textures, Models, Normal Mapping, Parallax Mapping, Light Attenuation, per-object lighting, skybox and Shadow Mapping along with enabling 4x MSAA in OpenGL. The focus being how Normal Mapping and Parallax Mapping can give flat surfaces the illusion of looking more 3D. Shadow Mapping also gives the scene more realism by using a Light source to cast shadows of the objects in the scene. A skybox brings the most life to the scene by having a nicely drawn or rendered image of the sky by simply mapping it to a cube which utilises depth testing to ensure it is always drawn behind every other object in the scene.

Game Engine

The game engine was created as part of a group project during the final year of university. I worked on the graphics of the engine as well as core components such as level loading, model management, and menu systems utilising ImGui. Once Box2D physics was implemented, I created a function to automatically create a bounding box around a mesh to use for collsion detecion.

Android Development

For my Final Year Project at De Montfort University, I decided to create a bluetooth game for the Android platform.

Bluetooth for games is generally made for turn based games like card games or turn-based strategy games, where as real-time multiplayer games utilising Bluetooth are rarer due to the limitations of Bluetooth, instead those games connect via the internet through companies own networking code or utilising API’s such as Google Play. This project seeks to research and evaluate the capabilities of Bluetooth for real time multiplayer Android games.


I have developed several mods over the years for various games including The Elder Scrolls V: Skyrim, Saints Row IV, Audiosurf, etc. The mods have amassed around 100,000 downloads since they were published.