Victor Jiao

Projects

Small systems · Some games · Tooling · Things I've built along the way

MusixBox

2019 Javascript Jordan Cazamias

Implemented the music algorithm for MusixBox - a procedural music-box-like music player. I used Perlin noise to stimulate a few different "dimensions" of music - mood and such. Then, I manually added in some chords and notes, in an organized way so that the algorithm would know which notes to play when to create the desired effect (as dictated by the Perlin noise).

Tower Defense

2018 C++ SDL2 OpenGL(incoming)

Built/building an Entity-Component-System game programming engine with a quadtree-based collision system and a callback-based GUI system. This project is equal-parts game development and game engine design.

Built/building a flexible and powerful framework for supporting randomized terrain generation. Models climate, erosion, and rainfall dynamics in real-time. Also supports a ray-tracing based shadow engine.

Weather Modelling

2017 Python scikit-learn NumPy

Analyzed weather data from airports by using statistical machine learning models. The model learned a higher-level sense of climate, and achieved a 15-30% accuracy boost beyond naive methods.

Led a team of five students to code a 4-way multiplayer game including sky and water rendering, a robust server design, a custom physics engine, and a simple AI. Personally worked on the graphics engine and integrating all of the components of the final game together.

Distributed Key-Value Store

2016 Python Austin Byers

Implemented multi-paxos, a distributed algorithm for consistent and fault-tolerant key-value storage. Multi-paxos is a more efficient variant of the classic Paxos algorithm.

English Word Dissymmetry

2016 R C++

A study on word dissymmetry in the English Language through analyzing word prediction accuracy on a language bigram model given different amounts of the first or last phonemes in the word.

Rendered height maps and texture bitmaps with level of detail and deferred rendering algorithms. Includes render systems for grass, water, and rain; fog effects; and detail-mapping.

Audio Leap

2015 Javascript HTML/CSS Leapmotion API

A simple Leapmotion app to play chords depending on user's hand position.

Wolf

2015 C

A 2D top down game where you fight ever-multiplying waves of zombies.

A simple app to generate more text in the same style as some given text. Trained using a bigram language model.

A 3D graphics engine built from per-pixel rendering using SDL, complete with UV texture mapping, camera movement, simple collision detection, z-buffering, and simple lighting.

A 3D graphics engine built from per-pixel rendering using SDL, complete with UV texture mapping, camera movement, simple collision detection, z-buffering, and simple lighting.

A terminal-based shooter game built from scratch with randomized enemies and progressively difficult AI. Supports different kinds of bullets, as well as a multiplayer mode.

A terminal-based flashcard-esque data storage software, with a built-in find function that lets you search the text of the cards, and a pleasant scrolling function for optimal viewing.

Other things on GitHub

C/C++ Rust Python Javascript

Older and in-progress experiments — iOS geofencing in Objective-C, data-visualization pages, tile-based RPG stuff, terrain simulation in Rust. If you've heard me mention something that isn't listed here, it's probably a school or work project I can't show the source for — drop me a line and we can talk about it.