emily emily

portfolio

Fall 2021

For my class, CS 3451 Computer Graphics, I built a ray tracer using TypeScript. The ray tracer generated spheres and disks, utilizing the Phong shading model to include ambient, diffuse, and specular lighting. The model also accounts for colored lights and hard shadows.
Below are images generated by my ray tracer.

Computer-generated image of a sphere. Computer-generated image of disks. Computer-generated image of spheres.

Prototype | Codebase | Video Demo | Fall 2021

For my Junior Design Project, I worked to create a social networking website called Haystack, specifically for the agricultural community. The site was first prototyped using Figma. Our team then built it using mySQL, React.js, HTML, CSS. The app's relational database is stored using Amazon Web Services, and we utilized a Node.js runtime environment to run our code. My specific role on our team was Director of Front End Development. I was responsible for the majority of our User Interface prototyping. As for code, I oversaw all of the HTML elements and CSS, in addition to assisting with front end React.js logic.

As for functionality, users on the site can accomplish a plethora of tasks including: creation of profiles, login, add friends, accept or deny friend requests, search for other users, view their profile and other's profiles, adjust privacy settings, post with or without images, comment and like posts, and discuss agricultural topics on forums.

Login page for Haystack Login page for Haystack User post on Haystack

Prototype | Codebase | Fall 2021

My current portfolio site (this website) is built using HTML, CSS, and JavaScript. The repository lives on Github, and the domain is hosted on Amazon Web Services. Prior to building the site, I designed a prototype using Figma. A potential further step for my portfolio site is a tagging system to make it easier to organize and sort through projects. This would be implemented using React.js.

Link | Codebase | Spring 2020

My previous portfolio site is still live, but no longer up to date. It is hosted by Github where all of the code is also stored. Built using HTML, CSS, and JavaScript, it is the first site I have ever developed, and I think its existence is proof of how far my web design skills have come.

Home page of my former personal website. Project page of my former personal website.

Codebase | Fall 2021

For the class, CS 3451 Computing Graphics, I created an animated 3D object using TypeScript and Three.js. The object is meant to look like a broccoli with a face, inspired by my favorite vegetable. This project was created to demonstrate an understanding in scene graphs and hierarchies using several types of shapes and transformations.

Prototype | Presentation | Spring 2021

recycleATL is a prototyped iPhone application aimed at encouraging recycling on Georgia Tech's campus by making it easier for students to access recycling resources, as well as the locations of recycling receptables. It was created using Figma for the class, LMC 3710 Principles of Interaction Design. For this project, user research was conducted, scenarios and storyboards were created, and multiple versions of prototypes were iterated through. To present this project, I also created an accompanying website.

Home page of recycleATL application. Map feature of recycleATL application. Recycling flowchart feature of recycleATL application.

Spring 2021

Over the course of CS 2261 Media Device Architecture, I coded a series of GameBoy Advanced games written in C. The purpose of this class is to gain experience combining software with the limitations of hardware. I created 8-bit graphics, sound, and user interfaces using machine-level programming.

For one game, I conceptualized my own mechanics to make Penguin Plunge. Players must move left and right to fall down from randomly-generated platforms that are moving upwards at a continuous speed. To gain points, the player collects fish. The game ends when the player hits either the top or bottom of the screen.

Start screen for Penguin Plunge Game Main screen for playing Penguin Plunge Game Lose screen for Penguin Plunge Game

As another project, I recreated the classic game, Space Invaders. Invaders slowly moved down the screen, animating between two different variations of sprites. There were continuous shots thrown by randomly selected invaders; lives were deducted if a player was hit by the invaders' shots. The player could shoot a finite number of bullets at any time, and if the bullet collided with the invader, that invader would disappear. Finally, the game ended once the player ran out of lives or was touched by an invader.

Start screen for Space Invaders Game Main screen for playing Space Invaders Game

The final game I implemented was the most difficult, Tetris. My version of Tetris included all of the original shapes and their rotational transformations. Sprites were implemented as the individual squares of each tetrimino, and the board was tracked as a matrix. Players won by eliminating a set number of rows or lost by having a tetrimino touch the top of the board.

Start screen for Tetris Game Main screen for playing Tetris Game Lose screen for Tetris Game

Play Game | Codebase | Spring 2020

Buzz and the Long Way Home is a game created for the class, LMC 2700 Introduction to Computational Media. I designed the graphics in Adobe Illustrator, and the game itself is developed using HTML and JavaScript. The objective is to collect good grades as the Georgia Tech Buzz mascot, while avoidng the UGA Bulldog, who moves in loops, and failing grades.

Main gameplay screen for Buzz and the Long Way Home Instructions screen for Buzz and the Long Way Home

Fall 2020

Created in Adobe Illustrator, my Mixed Media Broccoli were designed by using physical textures created using acrylic paint and transforming them into digital art. I took a simple sketch I drew of a broccoli and repeated it in order to form new and interesting shapes.

Mixed Media Broccoli Mixed Media Broccoli

Link | Fall 2019

Clyde is a fictional company promoting the happiness and health of domestic rabbits. For this company, I created a brand identity that includes a logo, color scheme, poster, business cards, and a website design, all of which have been compiled for the style guide. These elements were created using Adobe Illustrator and Adobe InDesign.

Interactive VR Scene | Codebase | Spring 2020

For the course, LMC 2700 Introduction to Computational Media, I created a virtual reality scene depicting a work from one of my favorite artists, Keith Haring, called "Barking Dogs". The scene is developed using AFrame within HTML. An interactive version of this scene is also available.

A screenshot of the VR scene of Barking Dogs The original painting of Barking Dogs by Keith Haring