Technologies and dependencies
Last updated: 2024-01-05
Logo | Description | License |
---|---|---|
BrickSim uses C++. The main reason for this choice was execution speed. | - | |
BrickSim is built using the platform-independent build system CMake. | BSD 3-clause | |
The User Interface is made with Dear ImGui. | MIT | |
OpenGL is used for rendering on all platforms. | - | |
SQLite3 is used to save settings and cache to the disk. The library SQLiteCpp is used. | Public Domain, MIT | |
Hugo is a static site generator using go. It is used in BrickSimWeb. | Apache 2.0 | |
GLFW | to create a window and handle inputs. | zlib/libpng |
glad | to load the OpenGL library | MIT |
Miniball | to determine the smallest enclosing ball of points, for example to center the part thumbnails. | Apache 2 |
stb_image.h and stb_image_write.h | for image reading and writing. | Public domain |
tinyfiledialogs | to open native file dialogs on all platforms. | zlib/libpng |
rapidjson | to read and write data in the JSON format. | MIT |
used for unit testing. | Boost Software License 1.0 | |
pytorch/cpuinfo | used to get information about the processor | BSD-2-Clause |
magic_enum | used for easier enum handling | MIT |
IconFontCppHeaders | For the FontAwesome Icons | zlib |
ImGuiColorTextEdit | Text editor | MIT |
FCL | Flexible Collision Library to determine which parts are close to each other | BSD-3-Clause |
fast_float | fast float parsing | Apache 2, Boost and MIT |
efsw | To get notified about file changes | MIT |
earcut.hpp | Polygon triangulation (for example for !TEXMAP ) | ISC |
json_dto | Mapping JSON to a struct and back | BSD-3-Clause |
spdlog | Logging | MIT |
unordered_dense | Fast and efficient hashmap and hashset | MIT |
utfcpp | UTF handling | Boost |