A 3D world exploration and alteration program based on Minecraft. Collaborated in a group of 3 team members; I was responsible for implementing efficient terrain rendering and chunking using interleaved VBOs, texturing with normal mapping and texture animation, a post-process camera overlay effect using frame buffers, an atmospheric effect using color interpolation based on distance, an onscreen GUI/inventory system that allows users to collect and place blocks, and sound effects based on player movement and time of day. Features I plan to implement in the future include shadow mapping, a crafting system, and weather effects (rain, snow) using billboards and particle instancing. Built using C++ and GLSL/OpenGL.
Coded a variety of OpenGL vertex and fragment shaders to apply different coloration effects and post-processing effects to the surfaces of 3D models. Built using C++ and GLSL/OpenGL.
Coded a simple mesh editing program; functions supported include subdivision, extrusion, vertex manipulation, and shader-based skin deformation. Built using C++ and GLSL/OpenGL.
A web app that allows users to plan and record meetups or events. Users can view each others' profiles, add and remove friends, and choose from a list of users to add to a meetup. Users can view meetups in a calendar and add images to meetups, which can be viewed in a gallery. Built using Node.js, Express, MongoDB, and Handlebars.
A platform game in which the player's goal is to collect berries and nuts to increase his or her total score. The player also shoots fireballs at soda cans, which decreases total score upon collision. Users can switch between a Fox and a Hawk avatar. Coded in Java, graphics illustrated in Adobe Photoshop.