SarahWeiii/CoACD
[SIGGRAPH2022] Approximate Convex Decomposition for 3D Meshes with Collision-Aware Concavity and Tree Search
What it solves
CoACD decomposes 3D meshes into a set of approximate convex hulls. This is essential for geometry processing tasks like collision detection, where algorithms are significantly more efficient when dealing with convex shapes rather than complex, concave 3D models.
How it works
The project implements a method that preserves collision conditions of the input shape while using fewer components. It utilizes a tree search (MCTS) and a collision-aware concavity metric to determine the best way to split the mesh. It includes a manifold preprocessing step to handle non-manifold meshes (which are common in 3D scans or CAD models) and supports a "real metric mode" to allow users to specify concavity thresholds in meters for real-world scale models.
Who it’s for
Developers working in robotics, physics simulations, and game development (with native support for Unity) who need to generate efficient collision meshes from complex 3D assets.
Highlights
- Multi-platform support: Available as a Python package, C++ library, and Unity package.
- Collision-aware: Designed specifically to preserve the physical interaction properties of a shape.
- Flexible preprocessing: Includes an "auto" mode to handle non-manifold meshes automatically.
- Real-world scaling: Supports real metric mode for meshes scaled in meters.
- Customizable search: Allows tuning of MCTS iterations, depth, and node count to balance speed versus the number of components.
Related
- Project
- Project
- Project
- Project
- Project