I'm a postdoc in Computer Science at École Polytechnique, working with Mathieu Desbrun. I work on algorithms for reliably and efficiently processing geometric data, drawing inspiration from classical topology and differential geometry. I just received my PhD in computer science from Carnegie Mellon University, advised by Keenan Crane. Previously I was an undergraduate at Caltech, where I worked on plasma simulation with Peter Schröder, chromosomal shape embeddings with Mathieu Desbrun, and interval analysis root finding techniques with Alan Barr.
In my spare time, I like to design origami models and knit.
Research
ACM Transactions on Graphics (SIGGRAPH 2024)
Sphere tracing is a fast and effective algorithm for visualizing surfaces encoded by signed distance functions (SDFs), which have become a centerpiece in a wide range of visual computing algorithms. We introduce an analogous algorithm for a completely different class of functions, harmonic functions, opening up a whole new set of possibilities. We show how our new algorithm can be used to directly visualize smooth surfaces reconstructed from point clouds (via Poisson surface reconstruction) or polygon soup (via generalized winding numbers) without performing linear solves or mesh extraction. We also show how it can be used to render nonplanar polygons (including those with holes), and to visualize key objects from mathematics, including knots, links, spherical harmonics, and Riemann surfaces.
project
pdf (11.2 mb)
supplement (350 kb)
video (2 min)
video (10 min)
doi
code (ShaderToy)
code (C++)
bibtex
@article{Gillespie:2024:RTH,
author = {Gillespie, Mark and Yang, Denise and Botsch, Mario and Crane, Keenan},
title = {Ray Tracing Harmonic Functions},
journal = {ACM Trans. Graph.},
volume = {43},
number = {4},
year = {2024},
publisher = {ACM},
address = {New York, NY, USA},
doi = {10.1145/3658201},
month = jul,
articleno = {99},
pages = {1--18}
}
ACM Transactions on Graphics (SIGGRAPH 2024)
This paper introduces a new fabrication technique called solid knitting. Unlike standard knitting, which makes hollow surfaces, solid knitting creates dense volumes by layering knit sheets—much as 3D printers layer plastic sheets. We envision a future where everyday objects like furniture or shoes—including soles—can be knit as one piece. We define the basic building blocks of solid knitting and demonstrate a working prototype of a solid knitting machine controlled by a low-level instruction language, along with a volumetric design tool for creating machine-knittable patterns.
project
pdf (18.5 mb)
video (5 m)
hand knitting instructions (10 mb)
hand knitting instructions (video)
doi
code
bibtex
@article{Hirose:2024:SK,
author = {Hirose, Yuichi and Gillespie, Mark and Bonilla Fominaya, Angelica M. and McCann, James},
title = {Solid Knitting},
journal = {ACM Trans. Graph.},
volume = {43},
number = {4},
year = {2024},
publisher = {ACM},
address = {New York, NY, USA},
doi = {10.1145/3658123},
month = jul,
articleno = {88},
pages = {1--15}
}
PhD Thesis (Carnegie Mellon University)
This thesis presents algorithms and data structures for computing on surfaces whose intrinsic geometry evolves over time. We take as examples the problems of mesh simplification and surface parameterization—in both cases, we find that the intrinsic perspective leads to simple algorithms which are robust and efficient on a variety of challenging examples.
pdf (25.5 mb)
slides (75.9 mb)
bibtex
@phdthesis{Gillespie:2024:EIT,
author = {Mark Gillespie},
title = {Evolving Intrinsic Triangulations},
school = {Carnegie Mellon University},
month = {April},
year = {2024}
}
ACM Transactions on Graphics (SIGGRAPH 2023)
Winding numbers are a basic component of geometric algorithms such as point-in-polygon tests, and their generalization to data with noise or topological errors has proven invaluable in robust geometry processing. However, standard definitions do not immediately apply on surfaces, where not all curves bound regions. We develop a meaningful generalization, starting with the well-known relationship between winding numbers and harmonic functions. Ultimately, our algorithm yields (i) a closed completion the input curves, (ii) integer labels for regions that are meaningfully bounded by these curves, and (iii) the complementary curves that do not bound any region.
project
pdf (11 mb)
supplement (2.7 mb)
video (20 s)
video (10 min)
code
doi
bibtex
@article{Feng:2023:WND,
author = {Feng, Nicole and Gillespie, Mark and Crane, Keenan},
title = {Winding Numbers on Discrete Surfaces},
journal = {ACM Trans. Graph.},
volume = {42},
number = {4},
year = {2023},
publisher = {ACM},
address = {New York, NY, USA},
issn = {0730-0301},
url = {https://doi.org/10.1145/3592401},
doi = {10.1145/3592401},
month = {jul},
articleno = {36},
}
ACM Transactions on Graphics (SIGGRAPH 2023)
This paper describes a method for fast simplification of surface meshes. Rather than approximate the extrinsic geometry, we construct a coarse intrinsic triangulation of the input domain. In the spirit of the quadric error metric (QEM), we perform greedy decimation while agglomerating global information about approximation error. In lieu of extrinsic quadrics, however, we store intrinsic tangent vectors that track how far curvature “drifts” during simplification. The overall payoff is a “black box” approach to geometry processing, which decouples mesh resolution from the size of matrices used to solve equations.
project
pdf (15.6 mb)
poster (9 mb)
arxiv
code
doi
bibtex
@article{Liu:2023:SSI,
author = {Liu, Hsueh-Ti Derek and Gillespie, Mark and Chislett, Benjamin and Sharp, Nicholas and Jacobson, Alec and Crane, Keenan},
title = {Surface Simplification Using Intrinsic Error Metrics},
journal = {ACM Trans. Graph.},
volume = {42},
number = {4},
year = {2023},
publisher = {ACM},
address = {New York, NY, USA},
issn = {0730-0301},
url = {https://doi.org/10.1145/3592403},
doi = {10.1145/3592403},
month = {jul},
articleno = {118},
}
ACM Transactions on Graphics (SIGGRAPH Asia 2021)
This paper describes a numerically robust data structure for encoding intrinsic triangulations of polyhedral surfaces. Our starting point is the framework of normal coordinates from geometric topology, which we extend to a broader set of operations needed for mesh processing. As a stress test, we successfully compute an intrinsic Delaunay refinement and associated subdivision for all manifold meshes in the Thingi10k dataset.
project
pdf (7.6 mb)
arxiv
video (20 min)
video (5 min)
video (45 s)
code (C++ demo app)
code (C++ library)
doi
bibtex
@article{Gillespie:2021:ICI,
author = {Gillespie, Mark and Sharp, Nicholas and Crane, Keenan},
title = {Integer Coordinates for Intrinsic Geometry Processing},
journal = {ACM Trans. Graph.},
volume = {40},
number = {6},
year = {2021},
publisher = {ACM},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3478513.3480522},
doi = {10.1145/3478513.3480522},
}
Geometry Processing with Intrinsic Triangulations
ACM SIGGRAPH Courses (2021), SIAM IMR 2021 Courses
Intrinsic triangulations de-couple the mesh used to encode geometry from the one used for computation. The basic shift in perspective is to encode the geometry of a mesh not in terms of ordinary vertex positions, but instead only in terms of edge lengths. This course provides a first introduction to intrinsic triangulations and their use in mesh processing algorithms, covering the theory, practical details, and some cutting-edge research in the area.
pdf (25 mb)
video (3 hour)
coding tutorial
doi
bibtex
@article{Sharp:2021:GPI,
author = {Sharp, Nicholas and Gillespie, Mark and Crane, Keenan},
title = {Geometry Processing with Intrinsic Triangulations},
booktitle = {ACM SIGGRAPH 2021 courses},
series = {SIGGRAPH '21},
year = {2021},
publisher = {ACM},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3450508.3464592},
doi = {10.1145/3450508.3464592},
}
ACM Transactions on Graphics (SIGGRAPH 2021)
We present a numerical method for surface parameterization, leveraging hyperbolic geometry to yield maps that are locally injective and discretely conformal in an exact sense. Stress tests involving difficult cone configurations and near-degenerate triangulations indicate that the method is extremely robust in practice, and provides high-quality interpolation even on meshes with poor elements.
project
pdf (16 mb)
video (5 min)
video (20 min)
code (C++ demo app)
doi
bibtex
@article{Gillespie:2021:DCE,
author = {Gillespie, Mark and Springborn, Boris and Crane, Keenan},
title = {Discrete Conformal Equivalence of Polyhedral Surfaces},
journal = {ACM Trans. Graph.},
volume = {40},
number = {4},
year = {2021},
publisher = {ACM},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3450626.3459763},
doi = {10.1145/3450626.3459763},
}
Awards
2019 | NSF Graduate Research Fellowship |
2017 | SIGGRAPH ACM Turing Award Celebration Grant |
I was one of 10 students sponsored by SIGGRAPH to attend the ACM Turing Award Celebration. | |
2017, 2016 | Arthur R. Adams SURF Fellowship |
Fellowship to fund my summer research. | |
2016 | William Lowell Putnam Mathematics Competition |
31 points (rank: 365/3214) |
Education
- Carnegie Mellon University
- 2018-2024
- PhD in Computer Science
- California Institute of Technology
- 2014-2018
- Majors: Computer Science, Mathematics
- GPA: 4.1
Talks
Apr. 2024 | Evolving Intrinsic Triangulations |
Carnegie Mellon University (CMU) | |
Thesis defense. My slides are available here and my thesis document is available here. | |
Dec. 2023 | Dynamic Intrinsic Geometry Processing |
Carnegie Mellon University (CMU) | |
Thesis proposal talk. My slides are available here and my proposal document is available here. | |
Sept. 2023 | Intrinsic Triangulations in Geometry Processing |
Institute of Science and Technology Austria (ISTA) | |
90 minute talk about my work on intrinsic triangulations. | |
Aug. 2023 | Intrinsic Triangulations in Geometry Processing |
Geometry Workshop in Obergurgl | |
30 minute talk about my work on intrinsic triangulations. | |
Jul. 2023 | Intrinsic Triangulations in Geometry Processing |
TU Berlin SFB TRR 109 Colloquium | |
45 minute talk about some of my assorted work on intrinsic triangulations. The slides are available here. | |
Apr. 2022 | Discrete Conformal Equivalence of Polyhedral Surfaces |
UCSD Pixel Cafe | |
45 minute talk about my paper of the same name. The slides are available here. | |
Mar. 2022 | Discrete Conformal Equivalence of Polyhedral Surfaces |
Toronto Geometry Colloquium | |
10 minute talk about my paper of the same name. The slides are available here, and the beautiful poster designed by Rachel Joan Wallis is available here. | |
Oct. 2019 | Origami and Geometry |
Carnegie Mellon University Graphics Lab | |
1 hour overview of algorithms for origami design, and how they relate to geometetry. The slides are available here. | |
Jun. 2019 | Hyperbolic Geometry and Discrete Conformal Maps |
Carnegie Mellon University Graphics Lab | |
1 hour talk about discrete conformal maps, length cross ratios, and hyperbolic geometry. The slides are available here. | |
Jan. 2019 | Magnetohydrodynamics and the Geometry of Conservation Laws |
Carnegie Mellon University Graphics Lab | |
1 hour talk covering introducing geometric mechanics and magnetohydrodynamics. The slides are available here. | |
Oct. 2017 | 2D Plasma Simulation via Discrete Exterior Calculus |
Caltech Summer Research Seminar Day | |
15 minute presentation on the results of my summer research. The slides are available here. | |
Sept. 2017 | Combinatorics and the Probabilistic Method |
Westfield High School Seminar in College Mathematics | |
30 minute presentation to a high school math class. Gave an introduction to elementary combinatorics and presented some simple applications of the probabilistic method. My notes are available here. |
Miscellanea
Web demo which traces out geodesics on a mesh. The code is available here.
GLSL implementation of BPM: Blended Piecewise Möbius Maps by Rorberg, Vaxman & Ben-Chen, incorporated into polyscope.
Takes any triangle mesh and turn it into an orientable manifold mesh by constructing the orientable double cover.
This is a rough implementation of the Delaunay edge split algorithm presented in Efficient construction and simplification of Delaunay meshes by Yong-Jin Liu, Chunxu Xu, Dian Fan, and Ying He. It takes in a triangle mesh and then performs edge splits to make the mesh Delaunay.
Demo of an implementation of the combinatorial map data structure for n-dimensional simplicial complexes that I experimented with in geometry-central. It has not yet made its way into the library itself, but the implementation can be found here.