e.knudsen256@gmail.com
linkedin.com/in/eric-knudsen-8a6160230/
My Games

Iguanamoth Capstone Project, Spring 2022
This project was developed by myself and a team of 4 other programmers for our Spring 2022 Capstone project using Unity. The idea behind Iguanamoth was that it would be a movement-based exploration game set in a large, ever-changing desert. The player would utilize different movement mechanics to get around, such as the hoverboard shown below, or the gravity crystals littered around the desert. I was responsible for many parts of the project. For instance, I developed the terrain generator system that created the desert and mountains seen in the screenshot above. Additionally, I modelled the small temple show in the screenshot, and I created the procedural shader used for the desert terrain and mountains. Finally, I was in charge of fixing many of the bugs discovered by the other members of the group, and dealing with the merge conflicts that arose throughout the project.

SWAT VR Demo, Spring 2022
This project was developed by me and another student during my Spring VR game development course using Unity. This game was developed to be a VR SWAT game where players had to enter a building and clear it of enemies, similar to the non-VR game Ready or Not. I was responsible for the procedural building generation system, the three game modes and objectives, nav-mesh generation, and the enemy AI. The level generator combined pre-generated room prefabs together in random layouts, placing objectives and enemies throughout the building. The three game modes, Elimination, Hostage Rescue, and Bomb Defusal, each had their own completion criteria. The AI used Unity’s inbuilt nav-mesh system to generate dynamic links between the generated rooms, and enemies were able to see the player, shoot them, and would chase the player down for a while if they lost sight of them.

Vulkan Horror Demo, Fall 2021
My most technologically advanced project to date, this horror game demo was developed using only the Vulkan rendering engine, SDL2, and C. In this game, the player finds themselves in a randomly-generated maze of rooms, and must find the exit before they are killed by the monster chasing them. As the player moves around, they are able to interact with the objects and furniture around them to hide and slow down the monster as it follows them. I developed everything seen in the demo video, the first person movement system, the collision detection and avoidance system, the main menu and interaction systems, and the monster AI. All models other than the monster were also created by me. This game additionally includes a content editor, allowing the user to create more room templates that can spawn in any future generated maze. The shaders for this game are all self-made, including both a shader to pixelate the textures of the environment, and a simple dynamic lighting system that illuminates only the objects near the player.

2D Automation Demo, Spring-Summer 2021
This game is a demo for a 2D building and automation game I had been working on for one of my first in-depth game development classes using SDL2 and C. While many of the building systems never made it into the final build for the classes, I have since updated the game to include some of these building systems. For this demo, I developed a collision detection and avoidance system, a platformer character controller, a recursive level generator, a robust menu system, and an interaction system with the environment. The collision detection is optimized enough to not cause any performance issues with a relatively large amount of entities on-screen, and works in many different settings. The level generation system is notable, as I had to completely refactor the codebase a few times in order to accommodate new systems that I wanted to implement. The menu system I created is simple to use, but has allowed me to create a main menu, a minimap, a pause menu, and menus for the inventory and building systems. The interaction system allows me to build game systems easily, such as allowing the player to mine for ore when standing near a rock.