Instant Meshes
This repository contains the interactive meshing software developed as part of the publication
Instant Field-Aligned Meshes
Wenzel Jakob, Marco Tarini, Daniele Panozzo, Olga Sorkine-Hornung
In ACM Transactions on Graphics (Proceedings of SIGGRAPH Asia 2015)
PDF, Video, Project page
In commercial software
Since version 10.2, Modo uses the Instant Meshes algorithm to implement its automatic retopology feature. An interview discussing this technique and more recent projects is available here.
Screenshot
Pre-compiled binaries
The following binaries (Intel, 64 bit) are automatically generated from the latest GitHub revision.
Please also fetch the following dataset ZIP file and extract it so that the
datasets
folder is in the same directory as Instant Meshes
, Instant Meshes.app
,
or Instant Meshes.exe
.
Note: On Linux, Instant Meshes relies on the program zenity
, which must be installed.
Compiling
Compiling from scratch requires CMake and a recent version of XCode on Mac, Visual Studio 2015 on Windows, and GCC on Linux.
On MacOS, compiling should be as simple as
git clone --recursive https://github.com/wjakob/instant-meshes
cd instant-meshes
cmake .
make -j 4
To build on Linux, please install the prerequisites libxrandr-dev
,
libxinerama-dev
, libxcursor-dev
, and libxi-dev
and then use the
same sequence of commands shown above for MacOS.
On Windows, open the generated file InstantMeshes.sln
after step 3 and proceed building as usual from within Visual Studio.
Usage
To get started, launch the binary and select a dataset using the "Open mesh" button on the top left (the application must be located in the same directory as the 'datasets' folder, otherwise the panel will be empty).
The standard workflow is to solve for an orientation field (first blue button) and a position field (second blue button) in sequence, after which the 'Export mesh' button becomes active. Many user interface elements display a descriptive message when hovering the mouse cursor above for a second.
A range of additional information about the input mesh, the computed fields, and the output mesh can be visualized using the check boxes accessible via the 'Advanced' panel.
Clicking the left mouse button and dragging rotates the object; right-dragging (or shift+left-dragging) translates, and the mouse wheel zooms. The fields can also be manipulated using brush tools that are accessible by clicking the first icon in each 'Tool' row.