Real-Time Interactive Tree Animation
Real-Time Interactive Tree Animation
X, XXXXX 2017 1
Abstract—We present a novel method for posing and animating botanical tree models interactively in real time. Unlike other state of
the art methods which tend to produce trees that are overly flexible, bending and deforming as if they were underwater plants, our
approach allows for arbitrarily high stiffness while still maintaining real-time frame rates without spurious artifacts, even on quite large
trees with over ten thousand branches. This is accomplished by using an articulated rigid body model with as-stiff-as-desired rotational
springs in conjunction with our newly proposed simulation technique, which is motivated both by position based dynamics and the
typical O(N ) algorithms for articulated rigid bodies. The efficiency of our algorithm allows us to pose and animate trees with millions of
branches or alternatively simulate a small forest comprised of many highly detailed trees. Even using only a single CPU core, we can
simulate ten thousand branches in real time while still maintaining quite crisp user interactivity. This has allowed us to incorporate our
framework into a commodity game engine to run interactively even on a low-budget tablet. We show that our method is amenable to the
incorporation of a large variety of desirable effects such as wind, leaves, fictitious forces, collisions, fracture, etc.
Fig. 1: A park containing many trees. The willow tree contains 970,748 articulated rigid bodies, the cherry blossom tree
contains 246,979 articulated rigid bodies, each apple tree has 42,212 articulated rigid bodies, and each maple tree has
138,965 articulated rigid bodies. The most complex tree in the scene contains 3,267,482 articulated rigid bodies.
When objects are stiff, one typically considers rigid body incorporate fracture, wind using Perlin noise, and rest state
approximations, and well-known approaches for evolving editing using inverse kinematics; it was further extended by
articulated rigid bodies in linear time exist for both gen- [37] to incorporate automatic assignment of stiffness and
eralized [2] and maximal coordinates [10]. A tree can be damping parameters. [38] proposed a technique for set-
modeled as an articulated rigid body (see e.g. [11]) as long ting anisotropic stiffnesses for materials such as stems and
as one provides some notion of an elastic stiffness for the leaves. [39] presented a linear time algorithm for simulating
joints. The main drawback with this approach is that the flexible trees, and [40] detailed an image-based modeling
stiff springs utilized to limit bending in the thicker regions approach as well as a sweeping method for simulation that
of the tree require either small time steps or implicit inte- propagates forces and branch displacements. Trees have also
gration, both of which can be rather costly. Therefore, when been simulated to interactively respond to rain [41]. [42]
computational efficiency is required, either for real-time or simulated the change in shape of drying leaves. [43] used
large scale applications, one is forced to resort to either a particle-based approach to simulate underwater plants.
softer springs or potentially error-prone approximations
of the linear solver. Both approaches produce undesirable
artifacts and/or excessive bending similar to that exhibited 3 G EOMETRIC R EPRESENTATION
by flexible underwater plants. To combat these issues, [12] We model the trunk, branches, and twigs as a series of
proposed a modification to Baraff’s Lagrange multiplier conical frustums obtaining a piecewise linear approxima-
method that integrates stiff forces implicitly for open-chain tion of the curved branch. A leaf is represented by a thin
articulated rigid bodies, and [13] proposed the use of ex- triangular prism allowing us to approximate it as a triangle
ponential integrators for solving stiff problems in computer
graphics. The general methodology that we pursue—that of
improving stability by finding an approximate subproblem
that can be solved analytically and thus robustly—dates
back some time; see for example [14] and the discussions
therein.
Work on the geometric modeling of trees considers L-
systems [15], rules based on geometry [16], environmental
factors [17], botany [18], and various combinations of these,
e.g. L-system models that interact with their environment
[19]. Researchers have also developed capture and recon-
struction techniques that take in data formats such as point
clouds [20], videos [21], [22], images [23], [24], [25], and
sketches [26], [27]. Wind-tree interaction has been simulated
in [28], [29], [30] and animated in real time in [31], [32],
[33]. [34] modeled tree motion via a stochastic treatment
that obviated the need to simulate a full wind field. [35]
proposed a growth model and used SPH combined with
sensor particles to achieve two-way coupled effects in real
time. The aforementioned [9] presented a Featherstone-style Fig. 2: A tree is modeled as a collection of articulated rigid
method for tree simulation that operates on articulated bodies. Green circles represent the point joints between
reduced deformable domains, but for shallow hierarchies bodies, and the red arrow illustrates a force applied to the
and few branches. This method was extended by [36] to rightmost rigid body due to the weight of a small creature.
QUIGLEY ET AL.: REAL-TIME INTERACTIVE TREE ANIMATION 3
4 I NTERNAL T REE DYNAMICS Fig. 4: A willow tree sways freely in the wind. Both the trunk
It is well-known that branching articulated rigid bodies can and the individual branches are articulated using many
be evolved using O(N )-style algorithms, see e.g. [2]. We rigid bodies. While the thin branches are flexible enough
to sway in the wind, the thick trunk does not bend (971k
1. We record all timing information from simulations run with 15
threads. rigid bodies, 1.6 sec/frame).
4 IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 22, NO. X, XXXXX 2017
children’s composite bodies adding in their contributions: Analytic spring evolution: We evaluate our analytic
springs in joint space where we assume the joint is at the
origin. The inertia tensor of the composite body Iˆw is rotated
X
m̂p = mp + m̂c (1)
j ˆw w
c∈Cp into joint space via Rw I Rj , and then the inertia tensor
X about the joint is computed as I˜ = −m̂(Rw j
p̂)∗ (Rw
j
p̂)∗ +
Iˆpw = Ipw − mp pm∗ m∗
p pp + (Iˆcw − m̂c p̂m∗ m∗
c p̂c ) (2) j ˆw w
c∈Cp
Rw I Rj where p̂ is the center of mass of the composite
X body relative to the point at which the composite body is
f̂p = fp + f̂c (3) attached to its parent. Similarly, we move the external torque
j
c∈Cp into the joint space via τ̃ = Rw τ̂ .
We define K as a 3 × 3 diagonal matrix whose entries
X
τ̂ p = τ p + (−p̂a∗
c f̂c + τ̂ c ) (4)
c∈Cp correspond to the stiffnesses of the three one-dimensional
springs governing the joint. Using Rayleigh damping, the
where Cp is the set of children of body p, I w is the world analytic equation of motion for the spring is
space inertia tensor, pmp is the center of mass of rigid body I˜θ̈ + (αI˜ + βK)θ̇ + Kθ = τ̃ (5)
p relative to the center of mass of rigid body p’s composite
body, p̂mc is the center of mass of rigid body c’s composite where we expose β as a user parameter, but α is set iden-
body relative to the center of mass of rigid body p’s compos- tically to 0 since our analytic approach provides robustness
ite body, and p̂ac points from the location where rigid body c and stability even when the time step is equal to the frame
connects with rigid body p to the location where rigid body duration (i.e. not requiring any so-called “ether drag”). We
p attaches to its parent (see Figure 5). transform I˜ and K into a pair of diagonal matrices by
This sweep has the dependency structure of the rigid solving a generalized eigenvalue problem, i.e. using the
body hierarchy but is still amenable to parallelization. For Cholesky factorization I˜ = LLT to write the eigendecom-
example, one could maintain a list of all childless rigid position L−1 KL−T X = XΛ. Setting U = L−T X , we use
bodies in the tree and begin the sweep by assigning each ˜ = δ3×3 and U T KU = Λ in order to
the identities U T IU
thread to the next available childless rigid body. Each thread diagonalize Equation 5 into three independent second order
then processes rigid bodies from the leaf towards the root. linear ordinary differential equations
Whenever a thread encounters a rigid body with multiple 0 0
children where at least one child has not yet been processed, θ̈ + (αδ3×3 + βΛ)θ̇ + Λθ 0 = U T τ̃ (6)
the thread stops and moves on to the next available childless 0
where θ = U −1 θ . Each row of Equation 6 takes the form
body. Once no childless rigid bodies are available to be
θ̈ + bθ̇ + kθ = f . Depending on the roots of the characteristic
processed, the sweep ceases to be entirely parallel. At this
equation r2 + br + k = 0, the analytic solutions are of the
point the worst case performance occurs if another thread
form θ(t) = c1 er1 t + c2 er2 t + f /k , θ(t) = (c1 + c2 t)ert + f /k ,
happens to be starting at a childless rigid body which is the
or θ(t) = c1 eγt cos(µt) + c2 eγt sin(µt) + f /k . Thus, given
maximum depth d away from the root of the tree. Thus, the
the current joint condition, we may analytically integrate
time complexity of this sweep is O(N/T + d).
the state θ robustly and stably forward for all time, albeit
we simply use the analytic solution 1/30 sec later. Note that
θ can be clamped in order to enforce joint limits. Since we
evolve each joint independently of all other joints, this stage
exhibits O(N/T ) time complexity when parallelized.
m̂c1 , Iˆcw1 Note that Equation 5 is technically not the analytic so-
m̂c2 , Iˆcw2
ôc1 lution to the exact problem since in reality external torques
and composite body configurations change throughout the
f̂c1 p̂m
c1 time step. Instead, Equation 5 is the analytic equation for
ôp a “frozen coefficient” version of the problem. However, all
τ̂ c1 pm ôc2 discretizations of ordinary differential equations, both ex-
p p̂m
c2
plicit and implicit, use approximations “frozen” throughout
τ̂ p
o f̂c2 the time step. Our analytic equation is therefore not without
τp p̂ac1 p τ̂ c2
f̂p errors; however, it is quite stable and robust, and it admits
p̂ac2 well-behaved, visually pleasing solutions.
fp
mp , Ipw Rigid body state update: Given θ for every joint, we
m̂p , Iˆpw traverse the tree upwards from the root in order to compute
the final maximal coordinates state for each rigid body. For
a rigid body c that shares joint j with its parent p, we first
compute Rcj from θ c . Then, Rcj and the analytic derivatives
Fig. 5: The red rigid body has two children, whose compos-
of θ c can be used to obtain
ite rigid bodies are shown as blue and green ellipses. The
center of mass of each composite rigid body is denoted by Rcw,n+1 = Rpw,n+1 Rjp Rcj (7)
a point ô. The black, dashed ellipse denotes the composite
ω n+1
c = ω n+1
p + Rpw,n+1 Rjp θ̇ c (8)
rigid body corresponding to the red rigid body. Other la-
beled values correspond to the quantities in Equations 1–4. αn+1
c = αn+1
p + Rpw,n+1 Rjp θ̈ c + (ω n+1
p )∗ ω n+1
c . (9)
QUIGLEY ET AL.: REAL-TIME INTERACTIVE TREE ANIMATION 5
τ̂ total
c = p̂∗c f̂ctotal + τ̂ total
c,m (16)
Fig. 8: Apples break away from their parent branches and Fig. 9: (Top) A maple tree bends in a strong wind. (Bottom)
collide with other branches as they fall to the ground (42k The leaves of the maple tree flutter in the breeze. Some break
rigid bodies, 10 sub-timesteps/frame, 13 substeps/sec). away from their branches swirling and tumbling as they fall
to the ground (139k rigid bodies, 0.2 sec/frame).
Fig. 10: Petals fall from a cherry blossom tree and are carried where κl is a scale factor, At is the area of the leaf’s proxy
away by the wind (247k rigid bodies, 0.3 sec/frame). triangle, m is the leaf’s mass, ν is an air resistance multiplier,
and ξ is the ratio of the normal drag coefficient to the
tangential drag coefficient. The second terms on the right
the branch, we compute vrel,n = vrel − (vrel · t)t where t is hand sides of Equations 23 and 24 are taken directly from
the axial direction of the branch rigid body. Then the wind [52]. The first term on the right hand side of Equation 23 is
force we apply to each branch rigid body is similar in spirit to that in [52] but more along the lines of
Equation 21 except that we use ||vrel || instead of ||vrel,n ||
fwind = κρAc ||vrel,n ||vrel,n (21) since the former seems to give more visually rich fluttering
where Ac is the longitudinal cross-sectional area of the motion. The first term in Equation 24 reduces to that in [52]
conical frustum, ρ is the density of air, and κ is a scaling when ϕ = 0. Nonzero values of the parameter ϕ give an
parameter. For fruits, there is no preferred direction, so we azimuthal offset angle for the torque direction that allows
instead use for three-dimensional spiraling motion.
8 L EAVES
Leaves are included among the tree’s articulated rigid bod-
ies, as opposed to being one-way coupled, since the accumu-
lated force and torque (due to gravity, wind, and potentially
collisions) over all the leaves can have a significant impact
on branch motion. We allow leaves (or petals) to fall by
detaching them from their parent branches when the torque
on the parent joint exceeds a threshold (see Figures 9 and
10).
Leaves exhibit interesting fluttering, tumbling, and spi-
raling motion, as well as chaotic motion in between these
phases as discussed in [50], [51]. The phenomenological
approach of [52] estimates the force and torque applied to
a thin disk using Kutta-Joukowski’s theorem to compute Fig. 11: Our method runs interactively on a low-budget
the lift force and moment while adding friction forces for tablet. Here, a user exerts a force on a branch via touch
the normal and tangential wind directions. They solve their (visualized by the yellow arrow).
8 IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 22, NO. X, XXXXX 2017
Fig. 15: A squirrel runs along the branch of a tree, leaps, and lands on the branch of another tree, gently perturbing both.
[16] J. Weber and J. Penn, “Creation and rendering of realistic trees,” [34] J. Stam, “Stochastic dynamics: Simulating the effects of turbulence
in Proc. 22nd Ann. Conf. Comput. Graph. Int. Tech. ACM, 1995, pp. on flexible structures,” in Comput. Graph. Forum, vol. 16, no. s3.
119–128. Wiley Online Library, 1997.
[17] S. Pirk, O. Stava, J. Kratt, M. A. M. Said, B. Neubert, R. Měch, [35] S. Pirk, T. Niese, T. Hädrich, B. Benes, and O. Deussen, “Windy
B. Benes, and O. Deussen, “Plastic trees: Interactive self-adapting trees: Computing stress response for developmental tree models,”
botanical tree models,” ACM Trans. Graph., vol. 31, no. 4, pp. 50:1– ACM Trans. Graph., vol. 33, no. 6, pp. 204:1–204:11, 2014.
50:10, 2012. [36] Y. Zhao and J. Barbič, “Interactive authoring of simulation-ready
[18] P. de Reffye, C. Edelin, J. Françon, M. Jaeger, and C. Puech, “Plant plants,” ACM Trans. Graph., vol. 32, no. 4, pp. 84:1–84:12, 2013.
models faithful to botanical structure and development,” in Proc. [37] Y. Zhao, “Plant substructuring and real-time simulation using
of the 15th Ann. Conf. Comput. Graph. Int. Tech., ser. SIGGRAPH ’88. model reduction,” Ph.D. dissertation, University of Southern Cal-
ACM, 1988, pp. 151–158. ifornia, 2014.
[19] R. Měch and P. Prusinkiewicz, “Visual models of plants interacting [38] Y. Li and J. Barbič, “Stable orthotropic materials,”
with their environment,” in Proc. of the 23rd Annual Conf. on ACM/Eurographics Symp. on Comput. Anim., 2014.
Comput. Graph. and Interactive Techniques. ACM, 1996, pp. 397– [39] J.-M. Aubry and X. Xian, “Fast implicit simulation of flexible
410. trees,” in Math. Progress in Expressive Image Synthesis II. Springer,
[20] Y. Livny, F. Yan, M. Olson, B. Chen, H. Zhang, and J. El-sana, 2015, pp. 47–61.
“Automatic reconstruction of tree skeletal structures from point [40] T. Sakaguchi and J. Ohya, “Modeling and animation of botanical
clouds,” Proc. SIGGRAPH Asia 2010, vol. 29, pp. 151:1–151:8, 2010. trees for interactive virtual environments,” in Proc. of the ACM
[21] J. Diener, L. Reveret, and E. Fiume, “Hierarchical retargetting of Symp. on Virt. Reality Software and Tech. ACM, 1999, pp. 139–146.
2d motion fields to the animation of 3d plant models,” in Proc. [41] M. Yang, L. Jiang, X. Li, Y. Liu, X. Liu, and E. Wu, “Interactive
of the 2006 ACM SIGGRAPH/Eurographics Symp. on Comput. Anim., coupling between a tree and raindrops,” Comput. Anim. Virt.
ser. SCA ’06, 2006, pp. 187–195. Worlds, vol. 23, no. 3-4, pp. 267–277, 2012.
[22] C. Li, O. Deussen, Y.-Z. Song, P. Willis, and P. Hall, “Modeling and [42] S. Jeong, S.-H. Park, and C.-H. Kim, “Simulation of morphology
generating moving trees from video,” in Proc. of SIGGRAPH Asia changes in drying leaves,” Comput. Graph. Forum, vol. 32, no. 1,
2011, 2011, pp. 127:1–127:12. pp. 204–215, 2013.
[23] B. Neubert, T. Franken, and O. Deussen, “Approximate image- [43] M. Müller and N. Chentanez, “Solid simulation with oriented
based tree-modeling using particle flows,” ACM Trans. Graph., particles,” ACM TOG, vol. 30, no. 4, pp. 92:1–92:10, 2011.
vol. 26, no. 3, p. 88, 2007. [44] S. Tomažič and S. Stančin, “Simultaneous orthogonal rotation
[24] P. Tan, T. Fang, J. Xiao, P. Zhao, and L. Quan, “Single image tree angle,” Electrotech. Rev, vol. 78, pp. 7–11, 2011.
modeling,” in ACM SIGGRAPH Asia 2008 Papers, 2008, pp. 108:1– [45] S. Stančin and S. Tomažič, “Angle estimation of simultaneous
108:7. orthogonal rotations from 3d gyroscope measurements,” Sensors,
[25] D. Bradley, D. Nowrouzezahrai, and P. Beardsley, “Image-based vol. 11, no. 9, pp. 8536–8549, 2011.
reconstruction and synthesis of dense foliage,” ACM Trans. Graph., [46] E. Guendelman, R. Bridson, and R. Fedkiw, “Nonconvex rigid
vol. 32, no. 4, pp. 74:1–74:10, 2013. bodies with stacking,” ACM TOG, vol. 22, no. 3, pp. 871–878, 2003.
[26] X. Chen, B. Neubert, Y.-Q. Xu, O. Deussen, and S. B. Kang, [47] J. J. Craig, Introduction to robotics: mechanics and control, 3rd ed.
“Sketch-based tree modeling using Markov random field,” in Pearson Prentice Hall Upper Saddle River, 2005.
ACM SIGGRAPH Asia 2008 Papers, 2008, pp. 109:1–109:9. [48] J. Wejchert and D. Haumann, “Animation aerodynamics,” Comput.
[27] S. Longay, A. Runions, F. Boudon, and P. Prusinkiewicz, Graph., vol. 25, no. 4, pp. 19–22, 1991.
“Treesketch: Interactive procedural modeling of trees on a tablet,” [49] M. Lentine, J. T. Gretarsson, C. Schroeder, A. Robinson-Mosher,
in Proc. Int. Symp. Sketch-Based Interf. Modeling, 2012, pp. 107–120. and R. Fedkiw, “Creature control in a fluid environment,” IEEE
[28] Y. Akagi and K. Kitajima, “Computer animation of swaying trees TVCG, vol. 17, no. 5, pp. 682–693, 2011.
based on physical simulation,” Computers & Graphics, vol. 30, no. 4, [50] H. Zhong, S. Chen, and C. Lee, “Experimental study of freely
pp. 529–539, 2006. falling thin disks: Transition from planar zigzag to spiral,” Physics
[29] X.-y. Hu, W.-m. Tao, and Y.-m. Guo, “Using FEM to predict tree of Fluids, vol. 23, no. 1, p. 011702, 2011.
motion in a wind field,” J. Zhejiang Univ. Sci. A, vol. 9, no. 7, pp. [51] F. Auguste, J. Magnaudet, and D. Fabre, “Falling styles of disks,”
907–915, 2008. J. Fluid Mech., vol. 719, pp. 388–405, 3 2013.
[30] M. Shinya and A. Fournier, “Stochastic motion—motion under the [52] Y. Tanabe and K. Kaneko, “Behavior of a falling paper,” Phys. Rev.
influence of wind,” in Comput. Graph. Forum, vol. 11, no. 3. Wiley Lett., vol. 73, no. 10, pp. 1372–1375, 1994.
Online Library, 1992, pp. 119–128. [53] L. Mahadevan, H. Aref, and S. Jones, “Comment on âĂIJbehavior
[31] R. Habel, A. Kusternig, and M. Wimmer, “Physically guided of a falling paperâĂİ,” Phys. Rev. Lett., vol. 75, no. 7, p. 1420, 1995.
animation of trees,” in Comput. Graph. Forum, vol. 28, no. 2, 2009, [54] Y. Tanabe and K. Kaneko, “Tanabe and Kaneko reply,” Phys. Rev.
pp. 523–532. Lett., vol. 75, no. 7, p. 1421, 1995.
[32] J. Diener, M. Rodriguez, L. Baboud, and L. Reveret, “Wind pro- [55] A. Belmonte, H. Eisenberg, and E. Moses, “From flutter to tumble:
jection basis for real-time animation of trees,” in Comput. Graph. inertial drag and froude similarity in falling paper,” Phys. Rev.
Forum, vol. 28, no. 2, 2009, pp. 533–540. Lett., vol. 81, no. 2, p. 345, 1998.
[33] M. Yang, M.-c. Huang, and E.-h. Wu, “Physically-based tree ani- [56] A. Andersen, U. Pesavento, and Z. J. Wang, “Unsteady aerody-
mation and leaf deformation using CUDA in real-time,” in Trans. namics of fluttering and tumbling plates,” J. Fluid Mech., vol. 541,
Edutainment VI, ser. LNCS, 2011, vol. 6758, pp. 27–39. pp. 65–90, 2005.
QUIGLEY ET AL.: REAL-TIME INTERACTIVE TREE ANIMATION 11
[57] T. Martin, N. Umetani, and B. Bickel, “OmniAD: Data-driven Winnie Lin received her B.S. in Mathemat-
omni-directional aerodynamics,” ACM Trans. Graph., vol. 34, no. 4, ics from Stanford University in 2016, and has
pp. 113:1–113:12, 2015. worked as an undergraduate research assistant
[58] C. Li, J. Qian, R. Tong, J. Chang, and J. Zhang, “GPU based real- in computational geometry and computer graph-
time simulation of massive falling leaves,” Comput. Visual Media, ics. She is currently pursuing her M.S. in Com-
vol. 1, no. 4, pp. 351–358, 2015. puter Science, also at Stanford University.
[59] D. Terzopoulos, J. Platt, A. Barr, and K. Fleischer, “Elastically
deformable models,” Comput. Graph. (Proc. SIGGRAPH 87), vol. 21,
no. 4, pp. 205–214, 1987.
[60] D. Baraff and A. Witkin, “Large steps in cloth simulation,” in Proc.
SIGGRAPH 1998, 1998, pp. 43–54.
[61] J. Stam, “Stable fluids,” in Proc. of SIGGRAPH 99, 1999, pp. 121–
128.
[62] G. Yngve, J. O’Brien, and J. Hodgins, “Animating explosions,” in
Proc. of ACM SIGGRAPH 2000, 2000, pp. 29–36. Ron Fedkiw received his Ph.D. in Mathemat-
[63] D. Enright, S. Marschner, and R. Fedkiw, “Animation and render- ics from UCLA in 1996 and did postdoctoral
ing of complex water surfaces,” ACM Trans. Graph. (SIGGRAPH studies both at UCLA in Mathematics and at
Proc.), vol. 21, no. 3, pp. 736–744, 2002. Caltech in Aeronautics before joining the Stan-
[64] M. Macklin, M. Müller, N. Chentanez, and T.-Y. Kim, “Unified ford Computer Science Department. He was
particle physics for real-time applications,” ACM Trans. Graph. awarded an Academy Award from The Academy
(SIGGRAPH Proc.), vol. 33, no. 4, pp. 153:1–153:12, 2014. of Motion Picture Arts and Sciences, the Na-
[65] M. L. Felis, “RBDL: an efficient rigid-body dynamics library using tional Academy of Science Award for Initiatives
recursive algorithms,” Autonomous Robots, vol. 41, pp. 1–17, 2016. in Research, a Packard Foundation Fellowship,
[66] S. Redon, N. Galoppo, and M. Lin, “Adaptive dynamics of articu- a Presidential Early Career Award for Scientists
lated bodies,” ACM TOG, vol. 24, no. 3, pp. 936–945, 2005. and Engineers (PECASE), a Sloan Research
[67] P. Tan, G. Zeng, J. Wang, S. B. Kang, and L. Quan, “Image-based Fellowship, the ACM Siggraph Significant New Researcher Award, an
tree modeling,” in ACM Trans. Graph., vol. 26, no. 3. ACM, 2007, Office of Naval Research Young Investigator Program Award (ONR
p. 87. YIP), the Okawa Foundation Research Grant, the Robert Bosch Faculty
[68] K. Xie, F. Yan, A. Sharf, O. Deussen, B. Chen, and H. Huang, “Tree Scholarship, the Robert N. Noyce Family Faculty Scholarship, two dis-
modeling with real tree-parts examples,” IEEE TVCG, vol. 22, tinguished teaching awards, etc. He has served on the editorial board of
no. 12, pp. 2608–2618, Dec 2015. the Journal of Computational Physics, Journal of Scientific Computing,
[69] A. Davis, K. L. Bouman, J. G. Chen, M. Rubinstein, F. Durand, and SIAM Journal on Imaging Sciences, and Communications in Mathemat-
W. T. Freeman, “Visual vibrometry: Estimating material properties ical Sciences, and he participates in the reviewing process of a number
from small motions in video,” in 2015 IEEE Conf. on Comput. Vision of journals and funding agencies. He has published over 110 research
and Pattern Recognition (CVPR). IEEE, 2015, pp. 5335–5343. papers in computational physics, computer graphics, and vision, as well
as a book on level set methods. For the past fifteen years, he has been
a consultant with Industrial Light + Magic. He received screen credits for
his work on “Terminator 3: Rise of the Machines," “Star Wars: Episode
III – Revenge of the Sith," “Poseidon," and “Evan Almighty."
Ed Quigley received his B.S. in Computer Sci-
ence from Grove City College in 2013. He has
interned at SURVICE Engineering and Pilot AI
Labs, and is currently pursuing his Ph.D. at
Stanford University where he is supported by
an NDSEG Fellowship. His research interests
include physically-based simulation, animation,
and 3D reconstruction.