Projects
MML Shaders
2023Contributed improvements to the MML project, and actively maintained an experimental fork in collaboration with @TheCodeTherapy. Added support for custom shaders to MML through m-shader
tags.
Shells
2023This project showcases a basic application of shell texturing to create a fur effect. It incorporates simple physics to simulate gravity, alongside noise to mimic wind.
Embers
2023Implemented a particle system to generate the effect of flying embers using GPGPU. The position of each particle is influenced by curl noise to create the appearance of embers drifting through the air.
My First Ray Marcher ™
2023My first attempt at playing around with ray marchers. It implements a simple diffusion light model and it displaces a sphere SDF with a blend of sine functions.
Ulam
2023An implementation of the Ulam Spiral. It combines the simple principles of sine waves with post-processing shaders to create beautiful visuals and patterns.
Space Jams
2022Drifting through space with fragment shaders and my speaker
Space Gliders
2022A prototype for a 3D game inspired by endless runners such as Subway Surfers and Temple Run. Made with React.js and React-Three-Fiber
WebGL Tiles
2022A nice image carousel made entirely with Three.js
Stacks
2022An experiment with game development using React Three Fiber. It's inspired by the Stack mobile game and I still plan to add more features and improvements in the future.
Attractors
2022An exploration into the fascinating topic of mathematical attractors. Specifically, the Lorenz and Thomas cyclically symmetric attractors. All parameters of the simulation are customizable through the scene controls.
Firefly Disco
2022A simple, yet fascinating dive into boid systems. Implementing the principles of emergent behaviors, each firefly in this system exhibits complex, coordinated behavior that mimics the patterns observed in nature.
Benji Bot
2021A Discord music bot that supports Youtube, Spotify, and a Web Dashboard. All of the UI was built from scratch using React.js and CSS modules. The backend API uses Express.js and web sockets to communicate with clients. Client state management is done using Redux Toolkit. It also features Discord slash commands, server management functions, and little games.
3D Sound Visualizer
2021A 3D audio visualizer made using ThreeJS and Typescript. This was my first experience learning to write custom shaders and was based on a previous experiment with the Web Audio API.
Task Manager
2019A college project for CS 242 (Systems Programming) in C++. It has all the basic features you would expect from a task manager like viewing and killing processes, monitoring system stats, and the file system.