Render is a new style of action-adventure game that focuses on exploration, experimentation, discovery and growth. I am the sole developer of Render and I created it from the ground up using a game engine I built using C++ and OpenGL. Development is an amazing experience as I'm able to expand upon my programming knowledge and strengthen my game design skills. Render is a game that doesn't hold the players' hands and allows them to freely explore the world and game mechanics at their own pace. This level of freedom for the player allows them to become immersed in the game through gameplay instead of graphical fidelity. The heavy emphasis on the players' experience and exploration of game design makes Render the perfect first game to be created by Obsidian Valley Studios.
Destiny 2: The Final Shape
The Final Shape was an incredibly exciting launch as my second full year at Bungie where I was promoted to Senior Sandbox Engineer. Over the year I continued working with designers to solve bugs, improve workflows, and support new features for both the main release and seasonal updates. But I also stepped into some new responsibilities! One standout contribution for me was being able to work on the Skimmer that was released right before the launch of The Final Shape. This was a really cool experience where I was added to a strike team as the main engineer to build a hoverboard within a tight time frame. Extending the existing vehicle code in Destiny to enable new movement modes and ways to control player animation and working with the designers and artists to deliver something the community loved was incredible. I also stepped into the role of Component Memory Deputy where I work to gain a deeper understanding of the memory constraints during gameplay and how to address the instances where we exceed our budgets. Another exciting project I was able to be a part of was hopping over to the Marathon team to help out with upgrading the Havok physics implementation in Bungie's engine.
Destiny 2: Lightfall
The release of Lightfall marked my first full year at Bungie and I was promoted to Sandbox Engineer. Over the course of the year I worked on the main release as well as the seasonal updates where I became comfortable in my role supporting designers and working with larger systems. I stepped into the role of embedded engineer for weapons design where I took part in weekly meetings to identify pain points in workflows and stay on top of bugs that they were running into or having a hard time solving. In addition to weapons I also had a couple opportunities to help out with the development of the new Strand subclass. It was a really fun year getting to work so closely with the designers and enabling new features for them. One really exciting contribution I made was working on Destiny's perk system where I reworked it from being a fixed pipeline into a flexible state machine which made the process of creating new perks much smoother as well as enabled a lot more functionality which has opened the door to new design spaces. It was really exciting getting this working while not breaking all of the previous perks that were built with the old system. I was also able to get exposure to more systems outside of the Sandbox by working on debug tools to gather budget data for perk usage by items in the game to get a better idea of where the bottlnecks of perks are.
Destiny 2: The Witch Queen
The Witch Queen was the first major release I was a part of at Bungie. I was a new hire at the time, only being employed for a couple months as an Associate Sandbox Engineer, but I was still able to get code into the shipped build. My contributions to this release were mostly bug fixes like glaives not playing audio on melee impact, and other ramp-up engineering tasks like adding a new airborne effectiveness stat to weapons. Outside of the main release I also worked on some debug features like adding a display that notified what content was imported into the game from the tools, which helps identify where content changes are going wrong when they're not being seen in game. This was an incredible experience since this was my first job at a AAA studio and I had shippped code within a couple months of getting hired.
Cars: Fast As Lightning
During my internship at Gameloft I spent most of my time working on Cars. I came on to the project
towards the end of development so as a result I spent a lot of my time fixing bugs to help get the game ready for
release. The types of bugs I worked on greatly varied, ranging from gameplay bugs during the races,
game state changes, UI bugs, issues with the save file, and more. In addition to
fixing bugs I also implemented new UI features, such as altering how certain unlock
screens worked and adding additional information to the main map screen. There was also a short time
where I was tasked with R&D to work on new features of the game that involved collision detection with splines.
Spiderman Unlimited
Spiderman Unlimited is an infinite runner and is a game that I was able to work on during an internship at Gameloft.
While working on this game I spent most of my time fixing bugs and helping get it ready for
release. I worked in C++ and fixed game state changes, collision reactions, issues in menu screens, and various
other types of bugs. In addition to bug fixing there was a small time period where I
did some R&D and created a small cloth physics simulation.
Sky Stadium
I created this game in a group of two other people (Evan Francis and Jake Russell).
The goal of the project was simple, create a fast paced player vs. player game that was fully networked
and incredibly fun to play. I am confident in saying we succeeded all of those goals.
Sky Stadium is an online multiplayer game that captures the essence of a great couch multiplayer experience,
its fast, exciting, funny, intense, and all around entertaining.
I worked in a group of 7 people to create Quicksilver. The goal of the project was to create
a networked multiplayer game of tag that used parkour mechanics. We worked on the project by completing
two week sprints, at the beginning of each sprint we would pick a feature to add in the game (like climbing a wall,
or making the camera avoid walls) and at the end of the sprint we would have that mechanic implemented in the game.
The version of that mechanic might not have been perfect but that would be corrected in the next sprint or in later sprints
dedicated to bug fixes. The life of this project was limited to the span of ten weeks and I am happy with what we were
able to create.
We used Photon for networking, mecanim for animation blending, and imported Unreal assets for the level.
Z-Fighter is a fast paced 2D action game built from the ground up using DirectX 11 and Box2D.
The fighting in this game is focused around projectile weapons and agile characters. In the arena
there are many platforms that you can jump between and power weapons you can pick up. The goal is simple:
be the last one standing by grabbing weapons and throwing them at your opponent.
I worked in a group of five and this was the first time any of us worked with DirectX.
My responsibilities involved helping set up the main game loop, implementing animated textures,
implementing player movement and actions, and handling the game state changes.
(If you would like a copy of the PC executable version please feel free to email me.)
Easter Hunt Nightmare
This project was focused around me getting used to working in a 3D world and with Unity. I implemented
a 3D flocking algorithm and a wander algorithm. I started off just wanting to create a forest scene using
using some cool steering algorithms, but as I continued working on it my idea kept shifting more towards
a dark theme focusing on tension.
The object of the game is to explore the forest and try to find all 7 gems. While you are doing this
there is something in the woods wandering around, if you get too close it will hunt you down.
The area by the pond where you start off is safe. (The model for the creature in the woods is
originally from the Silent Hill games and I got the model off of thefree3dmodels.com)
This game is the child of a Newgrounds animation called Ragemelon. I saw the animation and fell
in love with the character so I created a small beat 'em up game. In this game my
main focus was attempting to create a simple AI that seeks the player and attacks when close.
Another important area was the polish of the game, I really wanted to have nice animations
and sound effects while playing. I also toyed around with attack patterns for the boss.
I created this game as an introductory project for Flash, I had never worked with it before this
and it definitely gave me a strong foundation to move forward with. In this project I experimented
with multiplayer components along with the simple movements, shooting, and collision detection.
Balancing the game so it felt fair and equal no matter what side you
played proved to be a challenge but I feel like I found a nice little sweet spot. Even
though this game is very simple in its nature it has proven to be one of the favorites when
I show my work to colleagues, friends, and family.
This isn't really a game, but more of an interactive scene. With this project I implemented
a few steering algorithms. Adam and Eve use a Wander algorithm, the big devil uses a seek
algorithm, the smaller devils use a leader follow algorithm, and all of them use an avoid
obstacle algorithm. In order to implement these Algorithms I used vector representations
for position and velocity and used vector calculations. In this scene you can click
on the Shrine in the middle to switch between the garden of Eden and Hell.
This game was created as a group project in my First year at RIT.
The main roles that I played in the team was handling game state changes, level layouts,
player movement, game architecture, and the win/loss conditions. I also helped out the
system I/O and converting the text files into actual game levels.
The main goal of this game is to solve the tile-based puzzles before time runs out and
the rooms become completely black.
(If you would like a copy of the PC executable version please feel free to email me.)
Too Many Roaches
I built this game using XNA in Visual Studio 2010. The mechanics of the game are very
simple, collect as many pieces of candy possible while avoiding the cockroaches.
The goal is to try and reach the highest round possible and achieve the greatest score.
The game was originally a small introductory project to try and get simple movement and collision
working (was technically my first fully interactive 2D game),
I then added a few more features and made it playable on the Xbox 360 to see how difficult it would
be. It turned out to be really simple to port over and the gameplay was actually really fun.
(If you would like a copy of the PC executable version please feel free to email me.)