A C++ prototyping engine that is striving for an easy to use API, hiding all the dirty details so that you don't have to care.
- C++
- CMake
- Vulkan
- OpenGL
- GLFW
- stb_image
- stb_truetype
- Dear ImGui
- ImPlot
- Google Test
- Github Actions
- Box2D
- OpenAL Soft
- minimp3
- libcurl
- libsodium, added through libsodium-cmake
- nlohmann json
- tinyxml2
There are a lot of examples in the repository. Have a look at ExampleSnake for a first start. To create build files for your local machine you have to download and install CMake and the Vulkan SDK. Then, while being in the main directory of the repository, execute the following commands in a terminal:
mkdir Build
cd Build
cmake ..
After that, build files like Solution Files (on Windows) are created. To build the projects you can either use your favorite IDE or directly interact with CMake using the following command while you are in the Build directory:
cmake --build . --target ExampleSnake
This will build an executable that you may run.
No. The Brot Box Engine is still in a very, very early state. The API is changing rapidly, without warning, without changelogs and without backwards compatibility.
Yes. Feel free to open merge requests! They are always welcome, even if you are a beginner. In such a case you get information about what can be improved, and you can learn from it. Don't be shy, just go for it!
The project is regularly build with Microsoft Visual Studio Version 16.5.4 (with its default MSVC) as well as GCC Version 8.4.0. Other versions of said compilers probably also work as long as they have full C++17 support. Completely different compilers like clang are untested, though it's quite possible that they work as well. Feel free to try and let me know.
This shows you how you can set up an external project that uses the Brot Box Engine. The repository itself is tiny, but it's CMake code downloads and integrates the Brot Box Engine in an easy to use way.