My Projects

I have achieved wonderful things over the years and I hope to continue that trend for many more.

October 2024

Multiplayer Sword Fighting Game

Made with Unreal Engine 5

Over the past 3 years I have been learning game development using several programs such as Blender, Maya, Unreal Engine and Unity, and as I learned, I experimented with different technologies in my own game. I used C++ and Unreal Engine's blueprint system to create a souls-like combat system that was heavily inspired by FromSoftware games such as Elden Ring. I created a multiplayer combat system that used the Steam Networking API to allow people to connect to their friends games over the internet. This project was a combination of a lot of what I have learned over the years, and following the big growth in AI I decided to implement a boss-fight that was powered by an artificial behavior tree. This allowed boss-fight encounters to be filled with interesting moments where the enemies would dynamically react to user's inputs.
May 2024

Agent Smith -
Swarm Robot

Class: AP Computer Science Applications

The goal of this project was to create a system of robots that could work together to build infastructure in locations that are not safe for humans. One such environment is the surface of mars. Martian exploration has been the goal of several groups in modern times such as SpaceX and Nasa and swarm robotics could be one possible way to utilize natures strongest force: power in numbers, to create complex infrastructural projects such as habitats and labs that could be used by humans once construction is complete. The prototype that we created uses an L298N motor driver and an ESP32 to control and power the two onboard DC motors and the robot is able to connect to a central computer through bluetooth to send data back and fourth. We utilize and PID control loop to control the precise position and rotation of each individual robot and created a 3D simulation/visualization program to visualize the pathplanning algorithms of the robots, and calculate their trajectories.
April 2024

Generative AI Paper: Lidar

Class: AP Computer Science Applications

This paper investigated the possibility of optimizing the generation of 3D point cloud meshes using a generative AI model.Generative AI models have been used to generate 3D meshes using a text prompt, and many havebeen usedto classify 3D objects, but one area in which generative AI hasnotbeenusedyetis in the field of Lidar technology.Lidar isthe use ofa laser to detect the distance of different points surrounding acertainrobot system, as is commonly seenonthings like self-driving cars and autonomous robots. Lidar is very useful as it gives the system a full 3D scan of the environment and allows it to make educational decisions based on this stimulus; however, extracting this precise 3D mesh from the billions of point-cloud points is a daunting task that needs a lot of computer power and a significant amount of time.Thisis where AI can come in;generative AI could be usedto analyze the point cloud and output a 3d mesh with redundant data removed,and thiscould significantly increase the speed at whichpointcloudscould be processed.Thisis key forcertainfields, such as self-driving cars, as many require very low latency systems and the lowest reaction time possible to react in potentially dangerous situations.
February 2023

Vex Smart Car

Class: Principles of Engineering

The objective of this project was to design and build a smart car that Computer Science Essentials students could program and operate. I was responsible for designing and building the vehicle and writing the "How to Guide". I learned a great deal about engineering and programming through this project.  I also learned how to collaborate with the other members of my team to create a final product that utilized all of our unique ideas. The main obstacle throughout this whole project was the size constraint of the final robot design. The robot had to be within an 8 in x 8 in x 8in size limit and none of the components could be sticking out of this border. I collaborated with my peers on a design for the smart car that would not only fit into all project criteria but also excel at its intended purpose. Throughout this project, I had the chance to show off my leadership and collaborative abilities. I provided support to the team whenever they needed it, and my experience with the VEX ecosystem through my high school robotics club proved to be extremely useful throughout this process. After the robot was done a "How to" was created, and I was able to utilize my experience in the past from programming my own robots to create an in-depth and comprehensive guide for anyone that wanted to use our VEX smart car. Overall, this project was an amazing learning opportunity, and I am happy that our team was able to accomplish our goals.
November 2022

Vex Competition Robot

Class: AP Computer Science Principles

This project was created for the VEX robotics competition Spin Up. The objective of this project was to create a robot only using approved VEX Robotics parts that could pick up disks from the playing field and throw them into a goal on one corner of the play area. My specific role for this project was to work on the code and GitHub source control of the project. I also helped educate my team members in the use of GitHub and how to commit code changes. I was responsible for overseeing the code base of our robot and making sure that the code was bug-free and would have the intended effect. Throughout this project I learned about coding in C++ for VEX robots and use the VEX PROS IDE, to create and upload code files to GitHub. This project taught me a lot about source control and how it is used in the engineering field. I also learned a significant amount about how code can affect the physical mechanisms of a robot and how you need to design a mechanism in a way that it interacts with the code in the desired way.
October 2022

Compound Machine Project

Class: Principles of Engineering

The compound machine project is one of my favorites by far, for what it has taught me about mechanical engineering and for the connections I have made along the way. The objective of this project was to create a simple machine that utilized several simple machines to achieve a task. For our project, we decided on making a box-packing machine. This machine would take an eraser by loading it into a tray at the front of the machine and deposit it into a box sitting at the end of the machine. My specific role in the project was to document and plan how the machine would be created. To document our process I used Gantt charts, project logs, and pictures to track the progress of the mechanism and to keep track of when we made certain modifications. One of the main challenges that we overcame with this project was making the machine consistent as it did not achieve the intended task 100% of the time. One highlight of my role in this project was my push for stability in mechanisms to promote consistency, as I pushed to make sure that mechanisms did not rely on chance, with cross-beams, supporting structures, and redundant mechanisms. These changes not only made the mechanism far more predictable and consistent but also ensured that it would be rigid and resistant to wear.
April 2022

AP CSP Create Task

Class: AP Computer Science Principles

This project was a first for me in many ways and taught me a lot about how projects are completed and what kinds of constraints and objectives I might have to handle in the future. This project was created for the AP Computer Science Principles Create Task, which is a part of the AP exam for that class. This project required me to create a program that used Procedural Abstraction, Lists or other storage types, and Algorithmic processes. Through the execution of this project, I learned how important code documentation is and how to explain complex algorithms through formal language. Code documentation through formal language is key as it is essential that members of a team that are not programmers such as product managers or designers are aware of how the program functions.
March 2018

Personal Desktop Computer

In this project, I created a desktop computer using commercial components that could run Windows 10 and provide enough performance to handle my daily tasks. In order to develop this project, I first researched commercial components for the computer and their specifications to ensure that they would handle the tasks I wanted them to perform, such as compiling code, rendering 3D scenes or playing video games. I learned to manage my budget while keeping in mind the client's needs, or in this case, my own. By making this computer, I learned a lot about how they work, such as the various systems and components that make a computer function. Through the use of the computer, I was able to run code and understand at a deeper level how code interacts with computer hardware. Additionally, I was able to learn advanced concepts like memory management and compile my own C++ and C# code thanks to the use of this computer.