The Portfolio of

Amy DiGiovanni

About Me

Hi! I'm Amy DiGiovanni, a senior undergraduate at the University of Southern California. I am currently working on my Bachelor's Degree in Computer Science with an emphasis in game development, through the Viterbi School of Engineering. Technology has always been a passion of mine, and so has creativity. It gives me great joy to find solutions to problems and bring something to life that other people can enjoy. This drive, in conjunction with my pension for computer technology and my love of games, has inspired me to pursue a career in video game programming.

Other things I enjoy are nature, animals, music, art, and puns.



Closeted is a text-based game where you experience what a day in the life of a closeted transgender person might be like. There are many different experiences of trans people - this game attempts to convey what some of them might be like. You can download the game here.

This is a personal project of mine. I built the entire game in C# using Unity 2D and implemented dialogue trees using XML.

Literally: A Word Game

Literally A Word Game is literally a word the form of a 2D puzzle-platformer. Explore this world as Literal Lee, and use letters to make words and interact with the environment. Discover all that there is to discover in this humorous adventure.

Together with Cherys Fair, I developed the high concept, designed levels, and programmed all of the game's functionalities. Jonathan Kreimerman, from the Berklee College of Music, created the music and sound effects and recorded the narration by Aaron Berton. This game was also created in Unity.

Trojan Blast

As part of ITP470 Information Technology Practicum, I took a single player game written in C++ and added support for multiple players on different hosts. I implemented a User Datagram Protocol using Windows's Socket API and created an efficient reliability layer.

Game Engine

For ITP485 Programming Game Engines, I developed a simple game engine in C++. I started by implementing a SIMD math library and a pool allocator. I then wrote code to render objects using basic wireframe and default lighting, and then vertex and pixel shaders. Finally I implemented skeletal animation and camera movement.

Rhythm Runner

Rhythm Runner

Rhythm Runner was created as a final project for USC's ITP380 Video Game Programming class. It is a retro, low-fi graphics rhythm game with two modes - one in which players navigate a ship through notes, and another in which players must use their fingers to dance on a numpad. It comes with a song editor as well.

My teammates were Tiffany Tran, David Zhang, and Daron Lee. I worked on most of the game mechanics (scoring, abilities, hitting beats, accuracy, health, win/lose states) as well as population of the beatmap by parsing a .txt file. The game was written in C# using Visual Studio 2010 and XNA game studio.

SimCity 201

This was the final project for USC's CSCI201 Principles of Software Development. It is a multi-threaded crude city simulation which utilizes agent methodology and concurrency. The application was written in Java, using Git for source control. All team members unit tested their code extensively.

I worked on this project with Cherys Fair, Anjali Ahuja, and Jesus Garcia. As the team lead, I was responsible for the components central to the entire operation of the city, including the person agent, transportation, and city operation structure.

Out of Focus

Out of Focus is a top-down 2D puzzle adventure game, designed and built during the 48-hour Global Game Jam 2014. The game's main mechanic is that the player has a limited field of vision in which, and only the objects in this field of view are active (i.e. if you don't look at a door that is closing, it won't continue to close until you look at it again). To get around this limitation, the player has the ability to place a "camcorder" that provides a live view of a distant location, meaning that the object that the camera can see acts as if it is being viewed by the player.

My teammates for this project were Matthew Pohlmann, David Zhang, Brian Chen, Bryan Chong, Omar Khulusi, and Jeffrey Chau. I drew the art assets and laid out several of the levels in Unity.