research

our primary interest is in visualizing, summarizing, and studying workflows, but we also investigate

note: unless otherwise marked, all source and data available directly from this site is released under the MIT license. please send jon denning an email if you find this work interesting or helpful.

for future ideas, see research ideas page (requires login).

collaborators

below is a short list of some of the excellent people we have collaborated with over the past few years. none of my work would have been possible without their help.

undergrads

current:

past:

articles

3dflow

3dflow: continuous summarization of mesh editing workflows
j.d.denning, v.tibaldo, f.pellacini.
acm transactions on graphics (siggraph),
vol. 34, no. 4, article 140, jul 2015.

presented at siggraph 2015.

acm dl
submission: paper, video
more: fast-forward, details

abstract:

Mesh editing software is improving, allowing skilled artists to create detailed meshes efficiently. For a variety of reasons, artists are interested in sharing not just their final mesh but also their whole workflow, though the common media for sharing has limitations. In this paper, we present 3DFlow, an algorithm that computes continuous summarizations of mesh editing workflows. 3DFlow takes as input a sequence of meshes and outputs a visualization of the workflow summarized at any level of detail. The output is enhanced by highlighting edited regions and, if provided, overlaying visual annotations to indicated the artist's work, e.g. summarizing brush strokes in sculpting. We tested 3DFlow with a large set of inputs using a variety of mesh editing techniques, from digital sculpting to low-poly modeling, and found 3DFlow performed well for all. Furthermore, 3DFlow is independent of the modeling software used because it requires only mesh snapshots, and uses the additional information only for optional overlays. We release 3DFlow as open source for artists to showcase their work and release all our datasets so other researchers can improve upon our work.

meshgit

meshgit: diffing and merging meshes for polygonal modeling
j.d.denning, f.pellacini.
acm transactions on graphics (siggraph),
vol. 32, no. 4, article 35, jul 2013.

presented at siggraph 2013.

acm dl
submission: paper, updated-source
presentation: pdf, encore
source: bin-src-data

abstract:

This paper presents MeshGit, a practical algorithm for diffing and merging polygonal meshes typically used in subdivision modeling workflows. Inspired by version control for text editing, we introduce the mesh edit distance as a measure of the dissimilarity between meshes. This distance is defined as the minimum cost of matching the vertices and faces of one mesh to those of another. We propose an iterative greedy algorithm to approximate the mesh edit distance, which scales well with model complexity, providing a practical solution to our problem. We translate the mesh correspondence into a set of mesh editing operations that transforms the first mesh into the second. The editing operations can be displayed directly to provide a meaningful visual difference between meshes. For merging, we compute the difference between two versions and their common ancestor, as sets of editing operations. We robustly detect conflicting operations, automatically apply non-conflicting edits, and allow the user to choose how to merge the conflicting edits. We evaluate MeshGit by diffing and merging a variety of meshes and find it to work well for all.

appwarp

appwarp: retargeting measured materials by appearance-space warping
x.an, x.tong.
acm transactions on graphics (siggraph asia)
vol. 30, no. 6, article 147, dec 2011

presented at siggraph asia 2011.

acm dl
submission: paper, supplemental-images, video

abstract:

We propose a method for retargeting measured materials, where a source measured material is edited by applying the reflectance functions of a template measured dataset. The resulting dataset is a material that maintains the spatial patterns of the source dataset, while exhibiting the reflectance behaviors of the template. Compared to editing materials by subsequent selections and modifications, retargeting shortens the time required to achieve a desired look by directly using template data, just as color transfer does for editing images. With our method, users have to just mark corresponding regions of source and template with rough strokes, with no need for further input. This paper introduces AppWarp, an algorithm that achieves retargeting as a user-constrained, appearance-space warping operation, that executes in tens of seconds. Our algorithm is independent of the measured material representation and supports retargeting of analytic and tabulated BRDFs as well as BSSRDFs. In addition, our method makes no assumption of the data distribution in appearance-space nor on the underlying correspondence between source and target. These characteristics make AppWarp the first general formulation for appearance retargeting. We validate our method on several types of materials, including leaves, metals, waxes, woods and greeting cards. Furthermore, we demonstrate how retargeting can be used to enhance diffuse texture with high quality reflectance.

meshflow

meshflow: interactive visualization of mesh construction sequences
j.d.denning, w.b.kerr, f.pellacini.
acm transactions on graphics (siggraph),
vol. 30, no. 4, article 66, july 2011.

presented at siggraph 2011.

acm dl
submission: paper, bin-code-data, study data
videos: main, biped, helmet, hydrant, robot, shark
presentation: pdf, encore, preview

abstract:

The construction of polygonal meshes remains a complex task in Computer Graphics, taking tens of thousands of individual operations over several hours of modeling time. The complexity of modeling in terms of number of operations and time makes it difficult for artists to understand all details of how meshes are constructed. We present MeshFlow, an interactive system for visualizing mesh construction sequences. MeshFlow hierarchically clusters mesh editing operations to provide viewers with an overview of the model construction while still allowing them to view more details on demand. We base our clustering on an analysis of the frequency of repeated operations and implement it using substituting regular expressions. By filtering operations based on either their type or which vertices they affect, MeshFlow also ensures that viewers can interactively focus on the relevant parts of the modeling process. Automatically generated graphical annotations visualize the clustered operations. We have tested MeshFlow by visualizing five mesh sequences each taking a few hours to model, and we found it to work well for all. We have also evaluated MeshFlow with a case study using modeling students. We conclude that our system provides useful visualizations that are found to be more helpful than video or document-form instructions in understanding mesh construction.

written in mono. uses opengl (opentk), alglib
readme, scripts, bin, v39615 patch, keys, change log
thanks to peter k.h. gragert for helping update this!

bendylights

bendylights: artistic control of direct illumination by curving light rays
w.b.kerr, f.pellacini, j.d.denning.
computer graphics forum (eurographics symposium on rendering), 2010.

acm dl
submission: paper

abstract:

In computer cinematography, artists routinely use non-physical lighting models to achieve desired appearances. This paper presents BendyLights, a non-physical lighting model where light travels nonlinearly along splines, allowing artists to control light direction and shadow position at different points in the scene independently. Since the light deformation is smoothly defined at all world-space positions, the resulting non-physical lighting effects remain spatially consistent, avoiding the frequent incongruences of many non-physical models. BendyLights are controlled simply by reshaping splines, using familiar interfaces, and require very few parameters. BendyLight control points can be keyframed to support animated lighting effects. We demonstrate BendyLights both in a real-time rendering system for editing and a production renderer for final rendering, where we show that BendyLights can also be used with global illumination.

posters

rptextures

rptextures: systematic layering for large texture generation
a.e.mackay, j.d.denning.
siggraph poster.
no. 10, 2017.

acm dl
submission: abstract, poster, video

abstract:

We use systematic layering of variously sized layers to quickly create large, seemingly non-repeating textures. This leads to significantly more control for artists to create expansive visual scenes without the need for large teams to create massive textures. Our method maintains the visual appeal of seamless and non-repeating design, while using little memory and rendering quickly.

talks

brenneman 2015

maths and algs

the maths and algorithms behind photo-realistic graphics
frank s. brenneman lecture series, tabor college, ks
2015 april 24, invited talk

presentation: pdf, interactive

abstract:

Rendering systems today are able to produce images that are indistinguishable from actual photographs. In this talk, I will present the good, the bad, and the weird parts of the math and algorithms behind photo-realistic graphics.

monte carlo rendering

using monte carlo integration to solve the rendering equation
frank s. brenneman lecture series, tabor college, ks
2015 april 24, invited talk

presentation: pdf, interactive

abstract:

Continuing on from the previous talk (the maths and algorithms behind photo-realistic graphics), I will present the Monte Carlo integration method, the method behind solving the rendering equation.

blender conf 2014

mesh(flow|git)

mesh(flow|git): understanding and managing mesh editing workflows
blender conference 2014, amsterdam, link
2014 october 26

presentation: pdf, video part 1, video part 2

abstract:

Mesh editing videos and tutorials are essential for learning, but are either too short for details or too long to stay interesting. Further, comparing final meshes requires manual search and find. I present my Ph.D. dissertation work on understanding mesh editing workflows and some preliminary but ongoing work.

modeling tools

developing and designing powerful modeling tools
blender conference 2014, amsterdam, link
co-presented with jonathan williamson
2014 october 24

presentation: video

abstract:

This talk will explore the aspects of designing, developing, and implementing modeling tools such as the Contours and Polystrips retopology add-ons. Along side sharing our experiences, this will open many points for discussion on how we can further improve Blender’s core modeling tools and the Blender python API to allow more powerful add-ons and easier development.

taylor sci seminar 2014

open-source mindset and science
science seminar, taylor university
2014 october 20, invited talk

presentation: pdf

abstract:

Large amounts of data are involved in studying how 3D artists create their work, and the gathering of this data can be challenging. In this talk, I present my observation of differences in "closed-source" and "open-source" 3D artist communities.

dartmouth 2011

kernel nystrom method for light transport
jiaping wang, yue dong, xin tong, zhouchen lin, baining guo
a technical papers presentation by jon denning
dartmouth college, 2011

presentation: slides, slides+media

theses

modflows: methods for studying and managing mesh editing workflows
j.d.denning.
ph.d thesis.
dartmouth college, 2014.

submission: paper
presentation: pdf

abstract:

At the heart of computer games and computer generated films lies 3D content creation. A student wanting to learn how to create and edit 3D meshes can quickly find thousands of videos explaining the workflow process. These videos are a popular medium due to a simple setup that minimally interrupts the artist's workflow, but video recordings can be quite challenging to watch. Typical mesh editing sessions involve several hours of work and thousands of operations, which means the video recording can be too long to stay interesting if played back at real-time speed or lose too much information when sped up. Moreover, regardless of the playback speed, a high-level overview is quite difficult to construct from long editing sessions. In this thesis, we present our research into methods for studying how artists create and edit polygonal models and for helping manage collaborative work. We start by describing two approaches to automatically summarizing long editing workflows to provide a high-level overview as well as details on demand. The summarized results are presented in an interactive viewer with many features, including overlaying visual annotations to indicate the artist's actions, coloring regions to indicate strength of change, and filtering the workflow to specific 3D regions of interest. We evaluate the robustness of our two approaches by testing against a variety of workflows, holding a small case study, and asking artists for feedback. Next we describe a way to construct a plausible and intuitive low-level workflow that turns one of two given meshes into the second by building mesh correspondences. Analogous to text version control tools, we visualize the mesh changes in a two-way, three-way, or sequence diff, and we demonstrate how to merge independent edits of a single original mesh, handling conflicts in a way that preserves the artists' original intentions. We then discuss methods of comparing multiple artists performing similar mesh editing tasks. We build intra- and inter-correspondences, compute pairwise edit distances, and then visualize the distances as a heat map or by embedding into 3D space. We evaluate our methods by asking a professional artist and instructor for feedback. Finally, we discuss possible future directions for this research.

ugrad research

can video game players create a balanced game through voting? f17–s18
understanding student programming workflows s18
expressiveness of novel texture mapping techniques s17
exploring expressiveness of tiled texture mapping s17
accelerated, efficient, and artist-friendly rendering of boolean scenes in glsl 2016
using neural networks to optimize filters for noisy path-traced images f16–s17
using genetic algorithms to improve robocup virtual soccer players su15
generating, simulating, and rendering procedurally-generated planetoids su15
exploring novel meta programming language 2015

tech papers

3dflow

sculptflow

crosscomp

meshgit

contents:
research
collaborators
undergrads
articles
    3dflow
    meshgit
    appwarp
    meshflow
    bendylights
posters
    rptextures
talks
    brenneman 2015
    blender conf 2014
    taylor sci seminar 2014
    dartmouth 2011
theses
ugrad research
tech papers
    3dflow
    sculptflow
    crosscomp
    meshgit