SkillAgentSearch skills...

Pdmc

Parallel Dual Marching Cubes for Intersection-free Mesh

Install / Use

/learn @seonghunn/Pdmc
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Parallel Dual Marching Cube for Intersection-free Mesh

parallel, Intersection-free iso-surface extraction module used in PaMO

Installation

Requirements: torch (must be compatible with CUDA version), trimesh

pip install pdmc

Quick Start

You can effortlessly try the following command. The generated results are saved in out/.

python test/example.py

Usage

Firstly you should build an iso-surface extractor as follows:

from pdmc import DMC
dmc = DMC(dtype=torch.float32).cuda() # or dtype=torch.float64

Then use its forward function to generate a single mesh:

verts, faces = dmc(sdf, isovalue=0.0, return_quads=False, normalize=True)

Input

  • sdf: queries SDF values on the grid vertices (see the test/example.py for how to create the grid), ([N, N, N, 3])
  • normalize: whether to normalize the output vertices, default=True. If set to True, the vertices are normalized to [0, 1]. When False, the vertices remain unnormalized as [0, dim-1],
  • return_quads: whether return quad meshes; If set to True, the function returns quad meshes ([F, 4]).

Output

  • verts: mesh vertices within the range of [0, 1] or [0, dim-1]. ([V, 3])
  • faces: mesh face indices (starting from 0). ([F, 3]).

Reference

Differentiable Iso-Surface Extraction Package (DISO)

Cite

If you use pdmc or PaMO in your research, please cite:

@inproceedings{oh2025pamo,
  title={PaMO: Parallel Mesh Optimization for Intersection-Free Low-Poly Modeling on the GPU},
  author={Oh, Seonghun and Yuan, Xiaodi and Wei, Xinyue and Shi, Ruoxi and Xiang, Fanbo and Liu, Minghua and Su, Hao},
  booktitle={Computer Graphics Forum},
  pages={e70267},
  year={2025},
  organization={Wiley Online Library}
}

Related Skills

View on GitHub
GitHub Stars26
CategoryDevelopment
Updated4mo ago
Forks0

Languages

Cuda

Security Score

77/100

Audited on Nov 23, 2025

No findings