Skip to content

zong4/MinecraftEngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧱 Minecraft Engine

A custom game engine built from scratch for voxel-style games like Minecraft and Terraria — optimized for procedural world generation, chunk rendering, and simulation performance.

Logo


🚀 Overview

This engine is designed specifically for Minecraft-like voxel games, focusing on performance, chunk management, and real-time procedural generation — without the overhead of general-purpose engines like Unity or Unreal.

By narrowing the engine’s scope, development can target core voxel mechanics (terrain, lighting, rendering, and physics) with maximum efficiency.


🛠️ Current Features

Editor

  • OpenGL-based rendering of squares and cubes using the Blinn–Phong lighting model — optimized to draw entire scenes in a single draw call.
  • Integrated Dear ImGui for lightweight, real-time UI controls and debugging interfaces.
  • Basic window management, input handling, and rendering loop via C++/OpenGL backend.
  • Configurable camera controls and shader-based material system.

🧩 Planned Features

  • Additional Primitive Support — spheres, cylinders, cones, and more.
  • Procedural Generation Algorithms — Perlin Noise, Simplex Noise, and hybrid terrain methods.
  • World Generation Techniques — Chunked LOD, Greedy Meshing, seamless world streaming.
  • Basic Physics System — rigid bodies, collisions, and forces.
  • Physics-Driven Animation — ragdoll, procedural motion, and dynamic interaction.

⚙️ Build & Run

1️⃣ Clone the repository

git clone https://github.com/zong4/MinecraftEngine.git

2️⃣ Install dependencies

Make sure XMake is installed on your system.

3️⃣ Build and run

cd MinecraftEngine
xmake run -y

💡 xmake will automatically download and compile all required dependencies on first run.

💡 Design Philosophy

“Focus on what matters for voxel games.”

This engine deliberately avoids unnecessary systems (animation controllers, complex asset pipelines, etc.) to prioritize:

  • Efficiency — small codebase, optimized memory layout
  • Clarity — clean architecture for rapid iteration
  • Flexibility — modular design for future expansion

The goal is to understand — and control — every piece of a voxel-based engine from the ground up.

📚 References & Inspirations

🧠 Tech Stack

Category Technology
Language C++17
Build System XMake
Rendering OpenGL
UI Layer Dear ImGui
Lighting Blinn–Phong model
Physics (planned) Custom lightweight solver
Platform Windows & MacOS

About

A game engine created for games like Minecraft and Terraria.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •