Brennan T. Bertram

|Game Developer|

|Programmer|

|Software Engineer|

Profile Picture of Brennan I’m a Game Developer with a BSc in Computer Games Programming from Teesside University Middlesbrough, and I have experience in Software Engineering from an internship at DuPont-Teijin Films. I use my experience with C++, C#, Unreal Engine 4, Unity Game Engine, and other tools and languages used to create games and other applications. When I’m not working on my projects, I enjoy playing video games, travel, and using birdwatching to relax.

For any business inqueries or general questions, I can be contacted at:

Yoink! Museum Heist

A small party-game made in Unreal Engine 4 as a university project. As part of team of nineteen people, composed of designers, artists, and engineers, we worked together to create this game in the timeframe of about four months.

Of the nineteen, we had only three engineers (of which I was one), so we decided to have the team work in Blueprints so that more team members could contribute to gameplay features. I was tasked with creating backend game systems, such as the Game State system which helped control the appearance of the Lobby level, and the system which set the materials to differentiate the players. I helped manage a git based source control, helped solve merge conflicts and taught other team members how to use utilities like github. Another responsibility was to optimize and debug blueprints created by other team members, which helped bring various features across the finish line and keep the game stable. I also provided design input (such as suggesting not to cut instruction screens for the minigames) that made it into the final game.

Gatherin’ Game

A technical demo made in Unity with C# and SQLite, which served as my final university project. This project was aimed at researching and implementing an external database as a backend system in a game.

I included several gameplay features through this database system, including world and player persistence, achievements, and leaderboards. I used concurrent programming techniques like C#'s Async system to avoid application locks while queries were run, and to track stats per player, a simple User Account system with parameterized variables, and salt/hash logins are also implemented.

UI elements are also implemented to display data and game menus. I implemented UI control through custom functions and event handlers which react to Unity UI events. Other basic gameplay elements are primarily implemented using Unity's editor features (since they weren't the focus of the project), such as the player following 3rd person camera, and collision, but C# Interfaces are used for "interactable" game objects, allowing abstracted, reusable code.

The entire project can be seen on a github repository as the TeesU-GPP at this link.

MazeGen

A game system made in Ureal Engine 4, using C++ and the UE4 API. I specifically started this personal project to learn about C++ programming in Unreal, and to better understand the engine's best practices and workflows.

I used a depth-first search based algorithm to randomly generate data for a maze, then used this data to spawn actors into a UE4 level. Using UE4's gameplay tags, and inheritance, I made it so that blueprint classes derived from key C++ classes can be included in the generation algorithm if they are placed in the level, in editor. This allows other team members to create custom "maze tiles" with different gameplay features or appearances that can be included in the system without touching the backend C++ code!

This entire project can be seen on my github repository as the UE4MazeGenProject at this link.

Project Keystone

A small puzzle-action game made in Unity, where the player shifts rows and columns of different tiles to arrange them in specific patterns to clear them away. This project is made on my own time, for fun! The technology is simple, implementing a basic search system to find matching patterns in the play area.

EggsCompany

A turn-based tactical game prototype made in Unity as a university project. As part of a team of three people we were tasked with creating a game that showed off several AI programming techniques. My role was to implement pathfinding, and I implemented a node-based A* pathfinding algorithm. Part of this also required implementation of a search system, which was also robust enough to be able to implement other searches, able to provide elements of environmental information to the player and AI necessary for decision making.

Portfolio Website

...yes, this very website! As a personal side project, I learned and used basic HTML5, CSS, and JavaScript to create this showcase.

Since I'm using github pages to host the site, you can see the repository for this website at this link.