Skip to content

qaxl/craft

Repository files navigation

Craft

Screenshot of generated chunk

Custom Voxel Engine in C++ with Vulkan

Note

Craft is still under heavy development. Do not expect a functional product in its current state.

Features

Feature Implemented?
Implement Vulkan abstractions for most things DONE
Implement voxel generation and meshing DONE
Implement world editing (building and breaking) DONE
Play as blocks that shoot each other NO

More features will come, as they will be implemented. I'll try my best listing them all here.

Controls

  • WASD for moving
  • Tab for toggling mouse access
  • ...

Building

All compilers should be supported. A GLSL shader compiler glslc is required, and the easiest way to install it is via the Vulkan SDK.

All libraries are included within the repository. Clone with:

git clone --recursive https://github.com/qaxl/craft

Building with CMake (platform-agnostic):

# Create build directory, you can call this whatever.
mkdir build && cd build
# Generate project files and build the program.
cmake .. && cmake --build .

Platforms Supported

Currently supported platforms are the following:

Platform Support
Android Planned
Linux Planned
Windows Supported

Third Party Libraries Used

  • Vulkan for rendering graphics
  • Volk for loading the Vulkan library
  • VulkanMemoryAllocator for allocating memory in Vulkan
  • ImGui for intermediate GUI
  • GLM for mathematics (will be replaced soon:tm:)
  • SDL for windowing and platform-specific APIs
  • stb_image for image loading
  • Steamworks for Steam integration (TODO!)

Attributions

About

C++ Voxel Engine using Vulkan

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published