Projects
Vulkan Project: Real-time Rendering of Voxel Volumetric Clouds
A group project of implementing a viewer for real-time rendering of volumetric clouds in Vulkan. The main algorithm is inspired by the 2023 SIGGRAPH talk "Nubis3: Methods (and madness) to model and render immersive real-time voxel-based clouds".
Language: C++, GLSL
Unreal 3D Game: Inertia Antics
A group game project of creating a 3D action adventure game using Unreal Engine. Our game's theme is about an experimental animal with power to possess on surrounding objects trying to escape from the laboratory. Player will control the experimental animal, possess objects in each stage, explore and solving puzzles to reach the goal of each stage. The video on the right is a trailer of the game produced by me.
Language: C++, Unreal Blueprint
Unity VR Game: Becoming SiFu
A group game project of creating a VR game using Unity and VIVE as the VR device. Our game is a rhythm fittness game that enemies will approach the player in certain poses. Players need to move there arms and legs to match the incoming poses in a short period of time. The poses have static ones, moving ones, and ones that player will pick from weapons generated to match with the enemies. The video on the right is a trailer of the game edited by me.
Language: C#
Authoring Tool: IPC Maya Simulator
A group project about implementing an idea based on SIGGRAPH paper. Our choice of paper is Incremental Potential Contact: Intersection- and Inversion-free, Large-Deformation Dynamics of Minchen Li and his fellows. The paper suggests a new method of solving contact physics problem in a more accuratr and efficient way, which avoids many problems of existing methods. We implemented a simplified version of this idea and integrated it into Maya to simulate contact physics and generate animation from user input.
Click to access the report of the project
Language: C++, MEL script
OpenGL 3D Game Project: MiniMinecraft
A group game project of creating an interactive 3D world exploration and alteration program in the style of the popular computer game Minecraft.
My main contributions are:
1. Procedural random terrain generation using noise functions.
2. Texturing and texture animation.
3. Part of adding new Biomes
4. Weather system
5. NPC system with AI path finding
6. Sound
And also demo video editing.
Language: C++
Game Project: Untitled Journey
An individual game project of a 2D RPG game in Japanese. The development tool used is RPGMaker MV. The game is the prologue of one of my larger game projects that is still in progress.
Click the image on the right to proceed to the game description website ->
Language: Javascript
Game Project: VR Art Museum
An individual VR game project for a class, or maybe it should be a type of my digital art portfolio. Player can walk around in an art museum like space, and by picking up notebooks that are on the tables located in three different locations in the space, player will be taken to video rooms that will stream my video works.
Click the image on the right to proceed to the game description website ->
* The game might not be playable since I only tested it using the developer mode of Oculus, and the Oculus headset has returned to the univerisity at the time I composed the page.
Language: C#
Game Project: Escape Lost Tomb
A group VR game class project. Players are locked in a dark room, and the goal is to find the way out by solving different puzzles and escape from the resident of this tomb.
I mainly contributed in designing and programming some of the puzzles and designing the map.
Since this is a group class project and the github repository is private, I will only show the demo video here.
Mesh Editor Project: Micro Maya
An individual programming project about buidling a "Micro Maya" that has some basic mesh operations like face extrusion, edge spliting, subdivide mesh etc.
Also support loading a skeleton file(.json) to do skinning on the object, then you can see the object moving with respect to the skeleton's movement.
Language: C++
Cloud Computing Project: Cloud-Based Ray Tracing Animation Generator
A group programming project about using cloud computing techniques to support generating multiple frames using ray-tracing algorithm and form GIF files from the generated frames.
Click here to see the report of the project.
The demo video was recorded by one of my genius teammates!
Languages: C++, Python, .yaml files
Data Visualization Project: Interactive Migration Patterns Viewer
A group programming project about visualizing the migration pattern within the United State interactively.
My main contribution is that I implemented a large part of the visualization.
Click on the right image to proceed to the visualization page ->
Language: Javascript
Machine Learning Project: Brain Tumor Detection and Classification
A group programming project about using various neural network algorithms to detect and classify brain tumors from MRI images.
Click here to see the report of the project.
Language: Python
Database Management Project: USBirth
A group programming project about using MySQL to build and manage a database of birth information within United States and build a interface to interact with the database.
Click here to see the report of the project.
Languages: MySQL, php