AVNU: Where Music Meets

3D Game Development — Roblox Studio/Lua — 2022 to 2024


Link to the Experience:

AVNU is a music-themed game that serves as a platform for Sony Music artists to land in the Roblox metaverse. It consists of minigames designed around showcasing the Sony Music catalog and, often, a particular event artist. While developing this game, I became familiar with Roblox Studio, as well as how to develop and maintain a live gaming experience with constant content updates.

My work on this project included:

  • Developing currency, experience, shopping, fashion, and challenge systems
  • Developing lifecycle events and other client-server communication
  • Optimizing game for mobile devices
  • Mitigating exploits
  • Maintaining and reviewing code base
  • Promoting builds along the release chain

Dtail

3D Interactive Development — Unreal Engine/C++ — 2018 to 2021


Link to the Experience:

Dtail is a software suite that allows retail apparel brands to interactively plan their collections and showrooms. It started as a boutique software application developed for a single company, but quickly grew as more companies expressed the same need. While developing this product, I became familiarized with Unreal Engine and learned how to work with external clients and within/across project teams to create a cohesive product.

My work on this project included:

  • Prototyping and developing movement algorithms for seamless touring around virtual showrooms
  • Prototyping and developing additional feature views such as predecessor to canvas
  • Prototyping and developing major backend systems such as cloud asset storage for clients
  • Prototyping and developing asset conversion tools and pipelines for Unreal Engine
  • Optimizing experience for iOS devices
  • Optimizing experience for touch-screen televisions
  • Maintaining and reviewing code base

Piglet's Revenge

2D Game Development — Unity2D/C# — Fall 2016


Download Game:

Piglet's Revenge is an Angry Birds-inspired casual strategy shooter that won a class-voted prize for best game of the assignment in Fall 2016. During the development process, I was introduced to and became familiar with Unity's 2D features, its physics engine, and C# scripting.

My work on this project included:

  • Developing the user interface and setting up the levels
  • Developing behavior scripts for all interactive game objects
  • Developing a scoring system
  • Developing the pot-breaking mechanism

(Build last updated: 3/23/2018)

Enkindle

3D Game Development — Unity3D/C#/Cg — Fall 2016




Download Game:

Enkindle is an RPG-style art game that won several class-decided awards at the end of the Fall 2016 semester, including first prize for Best Art and a runner-up prize for Best Game. In it, the player controls a phoenix as it warms the wintery landscape in preparation for spring. The game was created as an international collaboration in an environment intended to simulate a game studio's operations.

My work on this project included:

  • Developing a terrain deformation algorithm for the snow layer
  • Developing a randomized procedural tree stand generation algorithm
  • Using the phoenix's collider to affect material changes in rocks and leaves

(Build last updated: 12/10/2016)

Dynamic Global Illumination System

3D Graphics Programming — DirectX 11.1/C++/HLSL — Summer 2016-Summer 2017



Download Demo:

(requires installation of DirectX June 2010 SDK)

This research project explored the potential for real-time, dynamically-built global illumination lighting systems on modern GPU architectures. In the project, we used partial octree updates, tessellation, and a variety of other techniques to reduce the memory usage and speed up processing time per frame by 30% over existing techniques. You can see the differences between dynamic updates and partially dynamic updates above, as well as a view of the tessellation/triangle decomposition process and a view of the voxels with stored lighting information.

My work on this project included:

  • Writing the CPU-side code to set up the scene and direct the GPU's actions
  • Developing a highly parallelized algorithm for building an octree using compute shaders
  • Developing a highly parallelized algorithm for gathering voxels on all levels of the octree that had changed between frames using compute shaders
  • Developing a triangle-to-points decomposition algorithm using tesselation and geometry shaders
  • Debugging the team's code

(Build last updated: 1/18/2018)

Coastal Quest Scavenger Hunts

Mobile Web App Development — Javascript/Python/SQL/JSX/CSS/bash — Fall 2017




Coastal Quest Scavenger Hunts is a web app that allowed users to play through scavenger hunts in the Monterey Bay area for prizes. It was one of three featured Capstone projects for CSUMB's Fall 2017 semester.

My work on this project included:

  • Developing the registration system front-end and validating form information
  • Working with the Stripe API to securely receive money from customers
  • Storing all data in a PostgreSQL database and securing sensitive information using SHA-256 encryption
  • Developing the hunt closing and winner announcement algorithms on the back-end
  • Creating bash scripts to streamline the application building process

Unity Prototyping Framework

VR Game Development — Unity3D/C# — Summer 2017


Left: Gun with diegetic UI; Right: Teleporter gun with health indicator attachment


I pair-developed an easy VR prototyping framework with a fellow student in preparation for a game jam hosted by CSUMB in the summer of 2017. Users were able to quickly implement their game jam ideas with little or no prior programming knowledge using this framework.

Our work on this project included:

  • Developing the AI template with linear and Unity navmesh navigation systems and cone-of-sight player detection
  • Developing the teleporter gun's functionality and making the player's experience with the gun more comfortable
  • Developing the gun's laser shooting system with particle effects and adding the diegetic UI to track the gun's current stats
  • Developing the game controller and score manager, along with the health indicator