📌 项目地址huxingyi/autoremesher | ⭐ 1,907 颗星 | 🔧 C++ | 📜 未标注

项目核心价值

在三维建模中,从扫描或雕刻得到的高密度三角网格往往拓扑混乱,不便于后续的动画绑定、细分曲面或实时渲染。AutoRemesher 是一个跨平台的自动四边形重拓扑工具,它能把杂乱的高多边形网格重新拓扑为规整的四边网格,显著降低面数并提升结构清晰度。

项目基于 Geogram、libigl 等成熟库,提供了命令行(CLI)和图形界面两种使用方式,支持 Linux、Windows、macOS 三大平台。

构建与运行(基于 README 原文)

AutoRemesher 的构建依赖 Qt 5.15.2、TBB(Intel Threading Building Blocks)以及 C++14 编译器。以下是各平台的构建步骤,均来自项目 README:

Linux(Ubuntu/Debian)

# 安装 Qt 和编译工具
sudo apt install build-essential qt5-qmake qtbase5-dev qttools5-dev-tools libqt5svg5-dev libqt5multimedia5-dev
# 安装 TBB 和 OpenGL
sudo apt install libtbb-dev libgl1-mesa-dev

# 克隆并构建
git clone https://github.com/huxingyi/autoremesher.git
cd autoremesher
qmake
make -j$(nproc)

Fedora 用户请将 apt 替换为 sudo dnf install gcc-c++ qt5-qtbase-devel qt5-qttools-devel tbb-devel mesa-libGL-devel

Windows(Visual Studio 2022)

  1. 安装 Visual Studio 2022(勾选“使用 C++ 的桌面开发”工作负载)。
  2. 安装 CMake(用于编译 TBB 源码)。
  3. 安装 Qt 5.15.2(选择 msvc2019_64 编译器归档)。
  4. 打开 x64 Native Tools Command Prompt for VS 2022,执行以下命令:
cd thirdpartytbb
cmake -B build2 ^
    -DTBB_BUILD_SHARED=ON ^
    -DTBB_BUILD_STATIC=OFF ^
    -DTBB_BUILD_TBBMALLOC=OFF ^
    -DTBB_BUILD_TBBMALLOC_PROXY=OFF ^
    -DTBB_BUILD_TESTS=OFF
cmake --build build2 --config Release
cd ....

qmake -spec win32-msvc
set CL=/MP
nmake -f Makefile.Release

编译完成后,可执行文件位于 releaseautoremesher.exe

macOS

xcode-select --install
brew install qt@5 tbb cmake
export PATH="/usr/local/opt/qt@5/bin:$PATH"
git clone https://github.com/huxingyi/autoremesher.git
cd autoremesher
qmake CONFIG+=sdk_no_version_check
make -j$(sysctl -n hw.logicalcpu)

快速测试(CLI 模式)

common-3d-test-models 下载一个 OBJ 文件(如 armadillo.obj),然后运行:

./autoremesher 
    --input armadillo.obj 
    --output remeshed.obj 
    --report remeshed_report.txt 
    --target-quads 50000 
    --edge-scaling 1.0 

该命令将输入模型重拓扑为目标四边形数量 50000 的结果,并输出一个报告文件。更多参数可参考项目官方文档或运行 ./autoremesher --help

与同类工具的差异

  • QuadRemesher(商业软件):功能类似但闭源,AutoRemesher 免费且开源,用户可自行编译、修改。
  • Instant Meshes:同样擅长四边重拓扑,但更侧重实时交互,AutoRemesher 则提供了完整的 CLI,适合批量处理或集成到管线中。
  • BRetopo(手动重拓扑):需要美术师手动操作,AutoRemesher 全自动,适合对拓扑质量要求不太苛刻的快速场景。

AutoRemesher 的独特之处在于:它同时提供 GUI 供预览调整,以及 CLI 供自动化处理;且构建脚本支持三大主流平台,可适配大多数开发环境。

注意事项

  • 构建复杂度:依赖 Qt 5.15.2 和 TBB,Windows 上还需手动编译 TBB。如果只需要 CLI,可考虑使用 Docker 或预构建二进制(项目 Release 页面可能提供,需自行确认)。
  • 许可证:README 未明确说明授权方式,仓库内包含 LICENSE 文件,使用前请务必查看其具体条款(常见为 GPL 或 MIT,以实际为准)。
  • 输出质量:自动拓扑结果受模型复杂度和参数影响,高曲率区域可能需要手动调整,建议先用少量四边形测试边缘缩放 (--edge-scaling) 等参数。
  • 作者捐赠:项目主页包含 PayPal 捐赠链接,支持作者继续维护。

若你追求可控的拓扑质量且希望集成到自己的工具链中,AutoRemesher 是一个值得投入时间尝试的开源选择。

这篇文章对你有帮助吗?

发表回复