Skip to content
forked from swr06/Minecraft

A Tiny Minecraft clone made with C++ and OpenGL.

License

Notifications You must be signed in to change notification settings

caseymcc/Minecraft

 
 

Repository files navigation

Minecraft Logo

Created by Samuel Rasquinha using C++17 and OpenGL 3.3 🎲

A Tiny Minecraft Clone

A Tiny Minecraft clone made with C++ and OpenGL.

Current Features

  • 3D Perspective FPS style camera with smooth movement
  • Terrain generation using simplex noise
  • World structures such as trees and cactus
  • Biome generation by noise quantization
  • Infinite Terrain
  • High Definition texture pack
  • Support for translucent blocks such as Glass (sort of)
  • Fast chunk meshing
  • Face culling
  • Frustum culling
  • Complete day/night cycle
  • Exponential fog
  • 3D AABB Collision detection
  • Efficient Flood Fill Voxel lighting algorithm using BFS queue
  • Fast world saving and loading
  • Complete main menu and GUI interface using ImGui
  • Logger
  • Cloud Skybox using cubemaps
  • Accurate block editing using a voxel transversal algorithm
  • Cave generation using 3D perlin noise
  • Water generation
  • No OS Specific commands/dependencies.

Features to come (probably in the rewrite)

  • Multiplayer
  • Sun
  • Weather
  • Multithreading

Compiling

This project compiles with Clang and MSVC.

Benchmarks?

  • Intel HD 4000 - 200~ FPS
  • Vega 8 iGPU - 500~ FPS

Contact me

Credits

The block art, skybox art and fonts are not made by me. All credits go to their owners.

Special Thanks

  1. Dan Bechard (Discord : @dandymcgee#2568)
  2. Krazer (Discord : @Krazer7877)

References

  1. https://www.seedofandromeda.com/blogs/29-fast-flood-fill-lighting-in-a-blocky-voxel-game-pt-1
  2. https://www.seedofandromeda.com/blogs/30-fast-flood-fill-lighting-in-a-blocky-voxel-game-pt-2

License

This project is under the MIT license. See LICENSE for more info

Known bugs

  • Blending issues with glass and models

Screenshots

Minecraft Menu

The Menu screen

Minecraft in-game

An in-game screenshot

Minecraft in-game

Lighting Demo with lamps

Supporting

If you like this project, please consider starring it on github. Thankyou :)

About

A Tiny Minecraft clone made with C++ and OpenGL.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 59.2%
  • C 35.2%
  • HTML 4.0%
  • Objective-C 0.9%
  • CMake 0.4%
  • GLSL 0.3%