conquer3d 0.7.7__tar.gz → 0.7.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {conquer3d-0.7.7/conquer3d.egg-info → conquer3d-0.7.9}/PKG-INFO +8 -7
- {conquer3d-0.7.7 → conquer3d-0.7.9}/README.md +7 -6
- conquer3d-0.7.9/conquer3d/_C.pyi +1947 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/_C.so +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/conversion/tmesh.py +82 -23
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/mesh_bvh.cpp +56 -6
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/triangle_mesh.cpp +27 -6
- conquer3d-0.7.9/conquer3d/csrc/binds/ops/chamfer.cpp +185 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/bvh.cu +40 -101
- conquer3d-0.7.9/conquer3d/csrc/data_structure/bvh_traverse.cuh +82 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/mesh_bvh.cu +42 -131
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/mesh_bvh.h +10 -3
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/triangle_mesh.cu +98 -142
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/triangle_mesh.h +14 -2
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/chamfer.cu +129 -6
- conquer3d-0.7.9/conquer3d/csrc/ops/chamfer.h +67 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/flood_fill.cu +5 -126
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/flood_fill_cf.cu +35 -178
- conquer3d-0.7.9/conquer3d/csrc/ops/flood_fill_common.cuh +129 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mc.cu +4 -108
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mtg.cu +4 -103
- conquer3d-0.7.9/conquer3d/csrc/ops/voxel_classify.cuh +136 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/gs_aabb.cu +125 -181
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/pgs_aabb.cu +79 -114
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/distance.py +129 -58
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/primitive/__init__.py +12 -1
- conquer3d-0.7.9/conquer3d/primitive/sq.py +647 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9/conquer3d.egg-info}/PKG-INFO +8 -7
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d.egg-info/SOURCES.txt +5 -1
- {conquer3d-0.7.7 → conquer3d-0.7.9}/pyproject.toml +1 -1
- conquer3d-0.7.7/conquer3d/_C.pyi +0 -1001
- conquer3d-0.7.7/conquer3d/csrc/binds/ops/chamfer.cpp +0 -87
- conquer3d-0.7.7/conquer3d/csrc/ops/chamfer.h +0 -37
- {conquer3d-0.7.7 → conquer3d-0.7.9}/LICENSE +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/MANIFEST.in +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/conversion/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/conversion/grid.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/conversion/mesh.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/creation/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/creation/triangle_creation.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/creation/triangle_creation.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/bvh.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/grid.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/gs_bvh.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/kdtree.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/pgs_bvh.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/data_structure/zcurve.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/dc.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/dmc.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/flood_fill.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/flood_fill_cf.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/mc.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/mca.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/mt.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/mtg.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/ops/volint.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/primitive/gs.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/primitive/pgs.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/primitive/ray.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/binds/primitive/triangle.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/check.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/constants.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/creation/triangle_creation.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/bvh.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/grid.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/grid.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/gs_bvh.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/kdtree.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/kdtree.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/pgs_bvh.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/zcurve.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/data_structure/zcurve.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/f2x2.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/f3x1.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/f3x3.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/f3x4.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/f4x1.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/f4x4.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/maths.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/ops.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/maths/qef.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/dc.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/dc.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/dc_data.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/dmc.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/dmc.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/dmc_data.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/flood_fill.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/flood_fill_cf.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mc.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mc_data.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mca.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mca.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mca_data.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mt.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mt.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mt_data.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mtg.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/mtg_data.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/volint.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/ops/volint.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/aabb.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/edge.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/gs.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/gs.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/gs_math.cuh +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/pgs.cu +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/pgs.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/pgs_math.cuh +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/ray.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/primitive/triangle.h +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/csrc/pybind.cpp +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/assets/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/assets/common.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/assets/iphigenia.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/collate/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/collate/mesh.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/collate/sparse_tensor.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/dataset/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/dataset/base_mesh.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/dataset/digit3d.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/dataset/digit3dmv.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/dataset/mesh.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/dataset/redwood.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/transform/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/transform/base.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/transform/ops.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data/transform/vertex.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data_structure/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data_structure/bmesh.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data_structure/grid.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/data_structure/sort.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/io/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/io/obj.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/io/off.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/io/ply.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/__init__.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/delaunay_triangulation.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/diff_marching_cubes.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/diff_marching_tetrahedra_grid.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/dpsr.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/dual_contouring.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/dual_marching_cubes.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/hermite.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/marching_cubes.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/marching_cubes_asymptotic.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/marching_tetrahedra.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/marching_tetrahedra_grid.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/ops/volint.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/primitive/gs.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d/primitive/pgs.py +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d.egg-info/dependency_links.txt +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d.egg-info/not-zip-safe +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d.egg-info/requires.txt +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/conquer3d.egg-info/top_level.txt +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/setup.cfg +0 -0
- {conquer3d-0.7.7 → conquer3d-0.7.9}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: conquer3d
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.9
|
|
4
4
|
Summary: Geometric Cuda Tool Box
|
|
5
5
|
Author-email: Do Hoang Khoi <khoido8899@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -45,7 +45,7 @@ Dynamic: license-file
|
|
|
45
45
|
[](https://www.python.org/)
|
|
46
46
|
[](https://developer.nvidia.com/cuda-toolkit)
|
|
47
47
|
[](https://pytorch.org/)
|
|
48
|
-
[](https://khoidoo.github.io/conquer3d/api/index.html)
|
|
49
49
|
|
|
50
50
|
<p align="center">
|
|
51
51
|
<b><a href="https://khoidoo.github.io/conquer3d/">🌐 Website</a></b> •
|
|
@@ -102,11 +102,12 @@ on the **[showcase](https://khoidoo.github.io/conquer3d/)**.
|
|
|
102
102
|
|
|
103
103
|
### Isosurface extraction
|
|
104
104
|
|
|
105
|
-
<img src="docs/assets/img/fig-algorithms.webp" alt="
|
|
105
|
+
<img src="docs/assets/img/fig-algorithms.webp" alt="Four extractors on one signed distance field" width="100%">
|
|
106
106
|
|
|
107
|
-
One signed distance field on a 64³ narrow-band grid of 19,329 cells, meshed by
|
|
108
|
-
extractors
|
|
109
|
-
|
|
107
|
+
One signed distance field on a 64³ narrow-band grid of 19,329 cells, meshed by four
|
|
108
|
+
extractors — Marching Cubes, MC Asymptotic, Dual Contouring and Dual Marching Cubes —
|
|
109
|
+
with the source mesh on the left. The lower row crops the crease where Marching Cubes
|
|
110
|
+
and Dual Contouring disagree most.
|
|
110
111
|
|
|
111
112
|
### Sharp features from Hermite data
|
|
112
113
|
|
|
@@ -175,7 +176,7 @@ on the **[benchmarks page](https://khoidoo.github.io/conquer3d/benchmarks.html)*
|
|
|
175
176
|
pip install -U conquer3d
|
|
176
177
|
```
|
|
177
178
|
|
|
178
|
-
Building from source, the full feature list, worked pipelines and the
|
|
179
|
+
Building from source, the full feature list, worked pipelines and the complete API
|
|
179
180
|
reference are on the **[documentation site](https://khoidoo.github.io/conquer3d/documentation.html)**.
|
|
180
181
|
|
|
181
182
|
---
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
[](https://www.python.org/)
|
|
13
13
|
[](https://developer.nvidia.com/cuda-toolkit)
|
|
14
14
|
[](https://pytorch.org/)
|
|
15
|
-
[](https://khoidoo.github.io/conquer3d/api/index.html)
|
|
16
16
|
|
|
17
17
|
<p align="center">
|
|
18
18
|
<b><a href="https://khoidoo.github.io/conquer3d/">🌐 Website</a></b> •
|
|
@@ -69,11 +69,12 @@ on the **[showcase](https://khoidoo.github.io/conquer3d/)**.
|
|
|
69
69
|
|
|
70
70
|
### Isosurface extraction
|
|
71
71
|
|
|
72
|
-
<img src="docs/assets/img/fig-algorithms.webp" alt="
|
|
72
|
+
<img src="docs/assets/img/fig-algorithms.webp" alt="Four extractors on one signed distance field" width="100%">
|
|
73
73
|
|
|
74
|
-
One signed distance field on a 64³ narrow-band grid of 19,329 cells, meshed by
|
|
75
|
-
extractors
|
|
76
|
-
|
|
74
|
+
One signed distance field on a 64³ narrow-band grid of 19,329 cells, meshed by four
|
|
75
|
+
extractors — Marching Cubes, MC Asymptotic, Dual Contouring and Dual Marching Cubes —
|
|
76
|
+
with the source mesh on the left. The lower row crops the crease where Marching Cubes
|
|
77
|
+
and Dual Contouring disagree most.
|
|
77
78
|
|
|
78
79
|
### Sharp features from Hermite data
|
|
79
80
|
|
|
@@ -142,7 +143,7 @@ on the **[benchmarks page](https://khoidoo.github.io/conquer3d/benchmarks.html)*
|
|
|
142
143
|
pip install -U conquer3d
|
|
143
144
|
```
|
|
144
145
|
|
|
145
|
-
Building from source, the full feature list, worked pipelines and the
|
|
146
|
+
Building from source, the full feature list, worked pipelines and the complete API
|
|
146
147
|
reference are on the **[documentation site](https://khoidoo.github.io/conquer3d/documentation.html)**.
|
|
147
148
|
|
|
148
149
|
---
|