The goal of this project is to create a C++ library encapsulating both classical and experimental techniques in computational geometry, with a focus on real-time performance and ease of use.
Visit our documentation pages for more information on how to build and use glibby in your projects.
git clone https://github.com/2020wmarvil/glibby.git
cmake -E make_directory build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug -DGLIBBY_BUILD_RENDERER=ON -DGLIBBY_BUILD_EXAMPLES=ON -DGLIBBY_BUILD_DOCS=OFF
make install -j8
Note, to build with the debug renderer, you will need the Vulkan SDK installed.
#include "glibby/primitives/point2D.h"
int main() {
glibby::Distance({ 0.0f, 0.0f }, { 5.0f, 5.0f });
}
Coming soon...
- Core Geometry Library
- Math Library
- Primitive Shapes and Operations
- Surface Mesh Data Structures
- Volumetric Mesh Data Structures
- Surface/Volumetric Mesh Operations
- Triangulation/Tetrahedralization
- Voronoi Diagrams
- Arrangements
- Surface/Shape Reconstruction
- Spatial Algorithms
- Convex Hulls
- Job Dispatch
- Compute Dispatch
- Companion Renderer
- Vulkan (in progress)
- OpenGL, DirectX, Metal
- Language Bindings
- Python, C#, Rust, ...
Feel free to dive in! Open an issue or submit PRs. Check out Contributing to see how to contribute.
glibby follows the Contributor Covenant Code of Conduct.
This project exists thanks to all the people who contribute.
@Wyatt Marvil. Reach me at [email protected] or join our Discord server.