6.7 KiB
6.7 KiB
Credits
ComfyUI-GeometryPack is made possible by wrapping and building upon the following amazing open-source geometry processing libraries. We are deeply grateful to the authors and communities behind each of these projects.
Currently Integrated Libraries
Ordered from least to most stringent license.
| Library | License | Description | Homepage |
|---|---|---|---|
| trimesh | MIT | Core mesh I/O, queries, convex hull, proximity, and boolean operations | https://trimsh.org |
| fast-simplification | MIT | Fast quadric mesh simplification (~10x faster than classic implementations) | https://github.com/pyvista/fast-simplification |
| PyVista | MIT | VTK-based 3D visualization, mesh analysis, and DecimatePro decimation | https://pyvista.org |
| xatlas | MIT | Automatic UV atlas generation and lightmap UV unwrapping for triangle meshes | https://github.com/jpcy/xatlas |
| xatlas-python | MIT | Python bindings for xatlas | https://github.com/mworchel/xatlas-python |
| Open3D | MIT | 3D data processing — point clouds, meshes, RGBD; used via mesh-to-sdf | https://www.open3d.org |
| mesh-to-sdf | MIT | Converts triangle meshes to signed distance fields | https://github.com/marian42/mesh_to_sdf |
| point-cloud-utils | MIT | Point cloud and mesh utilities — Hausdorff/Chamfer distance, sampling | https://github.com/fwilliams/point-cloud-utils |
| CuMesh | MIT | CUDA-accelerated mesh processing — GPU UV unwrapping and hole filling | https://github.com/JeffreyXiang/CuMesh |
| pyQuadriFlow | MIT | Scalable and robust quad remeshing (used in Blender) | https://github.com/hjwdzh/QuadriFlow |
| pmp-library | MIT | Polygon Mesh Processing Library — uniform and adaptive isotropic remeshing | https://www.pmp-library.org |
| pypmp | MIT | Python bindings for pmp-library (nanobind) | https://github.com/PozzettiAndrea/pypmp |
| NumPy | BSD-3-Clause | Fundamental N-dimensional array operations and scientific computing | https://numpy.org |
| SciPy | BSD-3-Clause | Scientific algorithms — Delaunay triangulation, spatial operations, optimization | https://scipy.org |
| PyNanoInstantMeshes | BSD-3-Clause | Python bindings for Instant Meshes field-aligned quad remeshing | https://github.com/vork/PyNanoInstantMeshes |
| Instant Meshes | BSD-3-Clause | Field-aligned quad-dominant remeshing (original C++ implementation) | https://github.com/wjakob/instant-meshes |
| embreex | BSD-3-Clause | Python wrapper for Intel Embree high-performance ray tracing | https://github.com/trimesh/embreex |
| geogram | BSD-3-Clause | Voronoi diagrams, centroidal Voronoi tessellation, parameterization, remeshing (INRIA) | https://github.com/BrunoLevy/geogram |
| pygeogram-ap | BSD-3-Clause | Python bindings for geogram CVT remeshing, booleans, repair, reconstruction (nanobind) | https://github.com/PozzettiAndrea/pygeogram |
| libigl | MPL-2.0 | Geometry processing — signed distance, UV parameterization (LSCM/harmonic), winding number, booleans | https://libigl.github.io |
| skeletor | GPL-3.0 | Skeleton extraction from triangle meshes (wavefront, vertex clusters, edge collapse, TEASAR) | https://github.com/navis-org/skeletor |
| pymeshfix | GPL-3.0 | Automatic mesh repair — hole filling, self-intersection removal, watertight conversion | https://github.com/pyvista/pymeshfix |
| PyMeshLab | GPL-3.0 | Python bindings for MeshLab — isotropic remeshing, Poisson/ball-pivoting reconstruction, smoothing, decimation | https://github.com/cnr-isti-vclab/PyMeshLab |
| MeshLab | GPL-3.0 | The open-source mesh processing system (CNR-ISTI Visual Computing Lab) | https://www.meshlab.net |
| CGAL | GPL-3.0 / LGPL-3.0 | Computational Geometry Algorithms Library — isotropic remeshing, alpha wrap, booleans, edge collapse, self-intersection repair. Dual licensed: algorithms are GPL-3.0, kernel/support components are LGPL-3.0. Commercial licenses available from GeometryFactory. | https://www.cgal.org |
| quadwild | GPL-3.0 | Feature-line driven quad remeshing for producing quad-dominant meshes (BiMDF solver) | https://github.com/nicopietroni/quadwild |
| pyquadwild | GPL-3.0 | Python bindings for QuadWild BiMDF tri-to-quad remeshing (nanobind) | https://github.com/PozzettiAndrea/pyquadwild |
| Blender (bpy) | GPL-3.0 | Blender's Python module — voxel/modifier remeshing, booleans, UV projection, texture remeshing | https://www.blender.org |
Future Integrations
We hope to also wrap the following outstanding libraries in future releases:
| Library | License | Description | Homepage |
|---|---|---|---|
| manifold3d | Apache-2.0 | Robust, GPU-friendly CSG/boolean operations on manifold meshes | https://github.com/elalish/manifold |
| gmsh | GPL-2.0+ | 3D finite element mesh generator with built-in CAD engine; linking exception available | https://gmsh.info |
License Notes
- CGAL uses a dual-license model per component. Geometric algorithm packages (Surface Mesh Simplification, Polygon Mesh Processing, etc.) are GPL-3.0. Kernel and support components are LGPL-3.0. Commercial licenses are available from GeometryFactory.
- PyMesh license situation is ambiguous —
setup.pyreferences MPL-2.0 but no formal LICENSE file is present in the repository. - MeshLib is source-available but not OSI-approved open source. Free for evaluation and non-commercial use; commercial use requires a paid license.
- gmsh is GPL-2.0-or-later but includes a linking exception that allows use as a library without triggering GPL obligations on the calling code.
- GeometryPack itself is licensed under GPL-3.0-or-later, which is compatible with all of the above.