/devenir

An Interactive Mesh Retopology Tool with Rigid/Non-Rigid Registration

Primary LanguageC++

Devenir: An Interactive Mesh Retopology Tool

Features

Manual 3D Point Annotation

  • Import/export .obj
  • Put and move points on triangular faces (face id + barycentric)
  • Import/export Wrap3 compatible json formats

devenir_points_20230506

Registration & Texturing

  • Correspondence based registration (rigid + scale)
  • Rigid ICP
  • Non-Rigid ICP
  • Texture transfer

devenir_registration_2_20230506

Build

Linux (clang/gcc) and Windows (MSVC) are supported.

  • git submodule update --init --recursive
    • To pull dependencies registered as git submodule.
  • Use CMake with CMakeLists.txt.
    • reconfigure.bat and rebuild.bat are command line CMake utilities for Windows 10/11 and Visual Studio 2017-2022.

Motivation

Non-rigid registration is still an active research area in academia, but it also has a commercial aspect. The semi-manual mesh retopology process, one of the critical steps in the CG industry, relies on non-rigid registration techniques. In addition to algorithms, manual work with GUI, for example, adding correspondence points between geometries, is practically essential to ensure quality.

Excellent commercial software exists for this purpose, but none of the open tools have been found to my satisfaction. I have found many open research codes for non-rigid registration, but most do not have an interactive GUI.

The goal of this project is to create an open interactive retopology tool.