Mini-Minecraft

Role: Developer | Software/Languages: C++, OpenGL (GLSL), Qt, Photoshop

For the final project of my graduate course CIS 560: Interactive Computer Graphics, I worked alongside my classmates Hansen Yi and Debby Li to design and code the block-based game Minecraft from scratch! My main contributions to our final “Mini-Minecraft” included:

  1. building a Player Physics Engine and Game Engine Tick() Function

    • I implemented a ray-cast collision detection system for player collision detection mechanics as well as acceleration-based movement for the player’s walking, accelerating, flying, falling, etc.

  2. Block Texturing and Texture Animation

    • I implemented the OpenGL texturing pipeline for rendering block textures, texture transparency, and animating water and lava

    • I also designed new, custom textures for our original biome environment designs in Adobe Photoshop

  3. implementing a Procedurally Simulated Sky with a Day/Night Cycle

    • I designed the sky using a ray-cast method, such that the color of the sun and sky would affect the light that is rendered on the terrain, both direction and color-wise

  • I defined custom time intervals at which dusk, dawn, and daytime would change and interpolated between colors to create a beautifully colored sky.

Below are the shots from my procedural sky! I also included some of my favorites shots from our game, which features new biome environments such as Redstone Canyons, Tropical Islands, the Cherry and Wisteria Blossom Forest, etc.

 
Previous
Previous

Physically-Based Shader

Next
Next

Mini-Maya