* I've actually updated it since - see this commit for the 48 hour version.
- Infinite, procedurally generated world
- Infinite height/depth
- Day/night cycle
- Biomes
- ECS-driven player and entities with full collision and movement
- Full RGB lighting
- Full transparency + translucency support
- Sprite blocks (flowers)
- Animated blocks (water + lava)
- Distance fog
- A whole lot of different block types
- More
$ git clone --recurse-submodules https://github.com/jdah/minecraft-weekend.git
$ make
The following static libraries under lib/
must be built before the main project can be built:
- GLAD
lib/glad/src/glad.o
- CGLM
lib/cglm/.libs/libcglm.a
- GLFW
lib/glfw/src/libglfw3.a
- libnoise
lib/noise/libnoise.a
All of the above have their own Makefile under their respective subdirectory and can be built with $ make libs
.
If libraries are not found, ensure that submodules have been cloned.
The game binary, once built with $ make
, can be found in ./bin/
.
Be sure to run with $ ./bin/game
out of the root directory of the repository.
If you are getting "cannot open file" errors (such as "cannot find ./res/shaders/*.vs"), this is the issue.
good luck 🤷♂️ probably try building under WSL and using an X environment to pass graphics through.
step1:
git clone --recurse-submodules git@github.com:Mark24Code/minecraft-weekend.git
step2:
Fix:
minecraft-weekend/lib/cglm/include/cglm/types.h L:46
# before
typedef float vec3[3];
# after
typedef float vec3[4];
step3:
ruby ./build.rb