Research software and source code

AirCode [Link]
Lead Contributors: Dingzeyu Li, Avinash Nair

AirCode is a technique that allows the user to tag physically fabricated objects with given information. An AirCode tag consists of a group of carefully designed air pockets placed beneath the object surface. These air pockets are easily produced during the fabrication process of the object, without any additional material or postprocessing. This codebase implements the robust decoding process and the computational imaging method we use in the paper. For technical details, please checkout the project page.
Modal Sound Synthesis [Link]
Lead Contributor: Changxi Zheng

This project releases the educational C++ code used at SIGGRAPH 2016 Course "Physically Based Sound for Computer Animation and Virtual Environments". There are two sub-projects, IsoStuffer and ModalSound. IsoStuffer is an implementation of [Labelle and Shewchuk 2007]. It provides the functionality to construct a tetrahedral mesh from a water-tight triangle mesh. ModalSound is a demostration of synthesizing rigid body sounds using the modal sound model. It includes the code of computing stiffness and mass matrices from a volumetric mesh and use the precomputed acoustic multipole coefficients to evaluate the acoustic transfer values at runtime.
The Structured Contact Impact Simulator (SCISim) [Link]
Lead Contributor: Breannan Smith

SCISim is a powerful 2D and 3D rigid body simulation library with a focus on preserving core physical properties. SCISim supports numerous collision models, integrators, and numerical solvers, and is easily extended to support new solvers and custom collision primitives. SCISim makes it trouble-free to run complex simulations with a full-featured yet compact user front end, while providing the ability to rapidly customize a simulation's behavior through Python plugins. Building SCISim is designed to be as trouble free as possible, with minimal user setup required.
libigl [Link]
Lead Contributors: Alec Jacobson, Daniele Panozzo

libigl is a simple C++ geometry processing library. We have a wide functionality including construction of sparse discrete differential geometry operators and finite-elements matrices such as the cotangent Laplacian and diagonalized mass matrix, simple facet and edge-based topology data structures, mesh-viewing utilities for OpenGL and GLSL, and many core functions for matrix manipulation which make Eigen feel a lot more like MATLAB.
Sensitive Couture [Link]
Lead Contributor: Nobuyuki Umetani

The garment design process involves multiple iterations when it comes to ideation, designing and revisions, which consume a significant amount of time and money. Recently, computer applications are being used to predict the three-dimensional shape of the garment in a virtual environment before experimenting with real cloth. This technology is an application that allows interactive garment modeling and editing for 2D garment patterns and their corresponding 3D models. By eliminating the need for manual alterations, this software may make garment designing more time and cost efficient. Real-time garment designing for synchronous 2D and 3D simulations without manual alterations
Los Topos [Link]
Lead Contributors: Fang Da, Christopher Batty

Los Topos is a multimaterial mesh-based surface tracking library that supports a full suite of topological operations such as T1 and T2 transition, and multilateral merging, while maintaining an intersection-free mesh at all time.
Quadratic Bending [Link]
Lead Contributor: Miklós Bergou

Can the nature of isometric deformations be exploited to speed up simulations of materials such as cloth? This project addresses this issue by looking at the Laplace-Beltrami operator on a surface. Applying this linear operator to the immersion of a surface gives the mean curvature normal of the surface. Under the class of isometric deformations of the surface, this operator is invariant, so it only needs to be computed once. If we consider a bending energy given as the square of mean curvature, then we see this leads to a naturally quadratic expression without any approximations.