paris2019
paris2019
AXEL PARIS, ERIC GALIN, ADRIEN PEYTAVIE, and ERIC GUÉRIN, Université de Lyon,
LIRIS, CNRS, UMR5205, France
JAMES GAIN, University of Cape Town, South Africa
Fig. 1. From a 2D input height field, our method automatically generates an implicit model for representing the terrain, which is augmented with complex
3D landform features such as caves, overhangs, cliffs, arches, or karsts. Our model can also represent dramatic and scenic science fiction landscapes such
as floating islands, or giant rock spires.
While three-dimensional landforms, such as arches and overhangs, occupy ACM Reference format:
a relatively small proportion of most computer-generated landscapes, they Axel Paris, Eric Galin, Adrien Peytavie, Eric Guérin, and James Gain. 2019.
are distinctive and dramatic and have an outsize visual impact. Unfortu- Terrain Amplification with Implicit 3D Features. ACM Trans. Graph. 38, 5,
nately, the dominant heightfield representation of terrain precludes such Article 147 (September 2019), 15 pages.
features, and existing in-memory volumetric structures are too memory https://doi.org/10.1145/3342765
intensive to handle larger scenes.
In this article, we present a novel memory-optimized paradigm for rep-
resenting and generating volumetric terrain based on implicit surfaces. We
1 INTRODUCTION
encode feature shapes and terrain geology using construction trees that ar-
range and combine implicit primitives. The landform primitives themselves Truly three-dimensional landscape features are some of the most
are positioned using Poisson sampling, built using open shape grammars visually arresting and memorable elements of real terrains. They
guided by stratified erosion and invasion percolation processes, and, fi- are formed by different physical processes (including joint frac-
nally, queried during polygonization. Users can also interactively author turing, percolation, and stratified erosion), take a variety of forms
landforms using high-level modeling tools to create or edit the under- (from steep-walled canyons to underground cave complexes), and
lying construction trees, with support for iterative cycles of editing and exhibit different scales (from mineral deposits, such as stalac-
simulation.
tites, less than a meter in diameter, to sea cliffs stretching for
We demonstrate that our framework is capable of importing existing
large-scale heightfield terrains and amplifying them with such diverse
kilometers).
structures as slot canyons, sea arches, stratified cliffs, fields of hoodoos, The sheer variety of shapes and scales of these landforms
and complex karst cave networks. presents significant modeling challenges and, despite the wide ap-
plication of digital terrain in games, film, and simulation, and ex-
CCS Concepts: • Computing methodologies → Shape modeling; tensive research in this area, effectively representing and generat-
Additional Key Words and Phrases: Procedural modeling, landscapes, ing 3D landforms remains an unsolved problem. This is because
implicit surfaces most solutions address only 2 12 D heightfield terrains, and those
that are truly 3D either focus on specific structural forms or are
This work is part of the project PAPAYA funded by the Fonds National pour la Société limited in the achievable resolution due to memory considerations.
Numérique and the project HDW ANR-16-CE33-0001, supported by Agence Nationale
de la Recherche. This work also received a grant from Bourg en Bresse city and CCI
There is thus a need for compact, memory-efficient models for
de l’Ain. representing large terrains featuring sparse and local volumetric
Authors’ addresses: A. Paris, E. Galin, A. Peytavie, and E. Guerin, Université de landforms.
Lyon, 23 Avenue Pierre de Coubertin, 69100 Villeurbanne, France; emails: {axel.paris,
eric.galin, adrien.peytavie, eric.guerin}@liris.cnrs.fr; J. Gain, University of Cape Existing methods fall into three categories: procedural genera-
Town, South Africa; email: [email protected]. tion, which applies phenomenologically inspired algorithms; ero-
Permission to make digital or hard copies of all or part of this work for personal or sion simulation, where erosion patterns are carved into a base ter-
classroom use is granted without fee provided that copies are not made or distributed
for profit or commercial advantage and that copies bear this notice and the full cita- rain; and example-based synthesis, in which samples from scans
tion on the first page. Copyrights for components of this work owned by others than of real terrains are extracted and combined. These generally rely
ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re-
publish, to post on servers or to redistribute to lists, requires prior specific permission
on heightfields, which locate scalar elevation values on a regular
and/or a fee. Request permissions from [email protected]. grid at a single sampling resolution. As a consequence, steep areas,
© 2019 Association for Computing Machinery. such as cliffs, are generally undersampled, and overhanging fea-
0730-0301/2019/09-ART147 $15.00
https://doi.org/10.1145/3342765 tures, simply cannot be represented. The alternative—an explicit
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
147
147:2 • A. Paris et al.
volumetric representation—is also problematic as such structures Our approach is the first capable of generating sparse volumet-
are memory intensive and, consequently, previous 3D terrain ap- ric landforms over terrains that exhibit both fine detail and large
proaches either focus on smaller isolated landforms (Beardall et al. extent, as demonstrated in Figure 1. This work primarily benefits
2007; Ito et al. 2003; Jones et al. 2010) or represent larger landscapes the entertainment industry, and could be implemented in middle-
at a lower sampling resolution (Becher et al. 2017, 2018; Peytavie ware applications for handling scenic terrains with 3D landforms.
et al. 2009).
Instead, we provide a conceptually simple solution to the prob-
lem of representing and authoring 3D terrain across a range of 2 RELATED WORK
scales, achieved through a unified implicit surface model. This The field of synthetic terrain modeling, as surveyed by Natali et al.
allows 2 12 D elevation models to be augmented with compact, (2013) and more recently by Galin et al. (2019), can be separated
memory-efficient sculpting primitives that encode volumetric into three classes of techniques: procedural generation, erosion
landforms. Our approach can be integrated with existing model- simulation, and example-based synthesis. The overwhelming fo-
ing pipelines, captures a wide variety of landforms from under- cus across these categories is on the creation of 2 12 D height fields,
ground cave complexes to coastal cliffs, incorporates geomorpho- with elevation specified for points on a regular grid.
logical effects, such as stratified erosion and invasion percolation, Procedural generation exploits two characteristics of real ter-
and provides extensive user control (Figure 1). rains: the self-similarity of landforms across a range of scales and
Our implicit model allows the automatic enhancement of ter- translations (Ebert et al. 1998) and the strong shaping influence
rains with complex 3D landforms and generates visually appeal- of river networks and hydrological erosion. Generally, the first
ing, although sparse, geological shapes, which are nonetheless aspect is captured algorithmically through multi-frequency noise
essential for synthesizing dramatic and scenic landscapes. Fur- functions and the second through constrained procedural subdivi-
thermore, detail can be enhanced even where overhangs are not sion (Belhadj and Audibert 2005; Kelley et al. 1988; Prusinkiewicz
strictly present, such as on steep slopes and vertical sections. This and Hammel 1993), diffusion (Hnaidi et al. 2010; Tasse et al. 2014),
is warranted because these often represent visually prominent or warping and blending (Gain et al. 2009; Génevaux et al. 2013,
landmarks. 2015; Rusnell et al. 2009), which can even extend to entire planets
At the heart of our method are various construction trees for (Derzapf et al. 2011).
blending implicit primitives that individually represent the input Although these core algorithms can efficiently generate near-
terrain, landform shape modifiers, and geological structure, and infinite landscapes with unlimited precision, they only provide in-
collectively provide a full 3D volumetric terrain. In this we are direct global control and produce terrains without any underly-
inspired by and extend the notion of Implicit BlobTrees (Wyvill ing geomorphological structure. The paucity of user control can
et al. 1999) and Feature Primitives (Génevaux et al. 2015). Query- be corrected by allowing users to interactively specify constraints
ing this new implicit terrain representation during surface extrac- through sketching or painting (Gain et al. 2009; Hnaidi et al. 2010;
tion allows us to bypass an explicit and memory-intensive volu- Tasse et al. 2012, 2014), but the problem of geomorphological real-
metric representation. Our pipeline imports a 2 12 D input terrain ism remains.
and converts it into a coherent implicit surface, identifies 3D fea- Erosion simulation (Musgrave et al. 1989) approximates the
ture sites, and as specified by the user applies different generation geological evolution of terrain through iterations of hydraulic ero-
algorithms, such as grammar-like production rules or erosion pro- sion (Chiba et al. 1998; Nagashima 1998), subsurface tectonics
cesses, to sculpt and augment the terrain with overhanging land- (Cordonnier et al. 2018), or an amalgam of secondary erosion ef-
forms. Finally, the sparse implicit representation is efficiently poly- fects (Cordonnier et al. 2017) applied to a base terrain. Clearly, sub-
gonized using a novel locally adaptative approach that generates surface strata play an important role in such simulations. Often
a final mesh amplified with 3D terrain features. this is encoded as a cell-based grid of layered stacks, with differ-
More precisely, the main technical contributions of our work ent thicknesses and material properties for the layers of each cell-
include the following: (1) a procedural model for representing the specific stack (Cordonnier et al. 2017, 2018; Roudier et al. 1993).
underlying geology of a terrain (Section 4) and guiding the gen- Nevertheless, since the layers are solid and contiguous, this rep-
eration processes (Section 6) in a memory-efficient fashion; (2) a resents a layered extension of heightfields rather than a true 3D
coherent implicit surface-based sparse landform construction tree representation.
(Section 5) that supports the compact encoding of 3D terrains with While simulation approaches can realistically capture an in-
local 3D landforms, such as arches and overhanging cliffs; (3) ef- creasing variety of geological phenomena, they are difficult to con-
ficient 3D landform generators, which analyze the characteristics trol and computationally demanding. Even with GPU acceleration
of the input terrain and assemble primitives to emulate erosion (Mei et al. 2007; Vanek et al. 2011) these methods cannot be used
processes, such as stream or sea erosion, or incorporate specific to author large-scale finely sampled terrains that match a user’s
landforms, such as goblins (Section 6); and (4) an efficient implicit intent.
surface polygonization algorithm (Section 7) adapted to the sparse Example-based synthesis approaches borrow from texture
amplified terrain data structure of our volumetric terrains. More- synthesis and combine realism and high-level user control by
over, we demonstrate that our model supports both procedural stitching new terrains from patches (Tasse et al. 2012; Zhou et al.
landform shaping processes and interactive editing for the creation 2007), pixels (Gain et al. 2015), or radial primitives (Guérin et al.
of complex terrain using high-level tools that bolster iterative re- 2016) extracted from exemplars. They are thus heavily reliant on
finement with seamless cycles of editing and simulation. sourcing high-quality digital elevation models for the exemplar
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
Terrain Amplification with Implicit 3D Features • 147:3
database. Early patch-based terrain synthesis driven by a user- In contrast, our implicit model efficiently combines 2 12 D and vol-
painted 2D map (Zhou et al. 2007) has subsequently been improved umetric information, which allows a bounded memory footprint
in terms of both computational efficiency and user control (Gain and thus the ability to model far larger scenes. We also provide
et al. 2015; Tasse et al. 2012). Larger-scale alternatives include com- amplification processes and authoring tools at various levels of ab-
piling a dictionary of feature-rich radial primitives that can later straction, enabling the creation of a wide variety of 3D landforms,
be extracted, sparsely placed and blended to form a terrain (Guérin including, but not restricted to, cave networks, hoodoos, canyons,
et al. 2016) or using generative adversarial networks to learn and stratified overhanging cliffs, and karsts.
apply a correspondence between user sketch maps and scanned
terrains (Guérin et al. 2017). These methods are fast, controllable, 3 OVERVIEW
and locally realistic but can fail to respect large-scale geomorpho-
This section provides an overview of the implicit construction
logical patterns, such as drainage networks.
trees that form the basis for the geology and implicit terrain mod-
In general, these techniques build on variants of a 2 12 D height-
els central to our technique. This is followed by a presentation of
field encoding, which limits the resolution achievable on steep
the workflow for generating 3D terrain features (see Figure 2).
slopes and precludes truly three-dimensional features such as
overhangs, arches, and caves. There have been attempts to ad-
3.1 Construction Tree Models
dress this with alternative underlying representations: advected
surfaces (Gamito and Musgrave 2001) borrow from fluid simula- Two structures are central to our 3D amplification of terrains: a
tion by warping terrain according to a differentiable vector field. geology model G for compactly encoding the stratification char-
With suitable restrictions on the vector field, the 3D output surface acteristics of the bedrock, and an implicit terrain model T , which
can be guaranteed to be connected and non-self-intersecting. Alas, defines the surface and captures complex volumetric landforms.
authoring is generally limited to a single global function and the Both are variants of hierarchical implicit construction trees with
surface extraction requires ray marching, which can be expensive. leaves that are implicit primitives and internal nodes that are com-
Voxel structures are at the heart of several volumetric ap- bining operators. A depth-first walk of such a tree is equivalent to
proaches. Ito et al. (2003) emulate fracturing along rock joints by a function evaluation for a given 3D point in the domain. Crucially,
linking neighboring voxels and then selectively breaking these these implicit construction trees enable a representation of volu-
links in fracture zones. Stability analysis is then used to reposi- metric data with a compact memory footprint.
tion or remove connected voxel structures. Although realistic, this In the case of geology, leaves of the construction tree are implicit
strategy is costly, difficult to author, and limited to a specific effect. skeletal primitives that define rock resistance for every point in
Beardall et al. (2007) and later Jones et al. (2010) focus on modeling space. The internal nodes are either binary operators for combin-
small-scale self-contained columnar structures, notably hoodoos ing sub-trees or unary operators for reproducing folds and faults
and goblins. Users define initial conditions, such as a rough overall using various forms of warping. In effect, the geology tree provides
shape and the resistance of stratified voxels, and then spheroidal a resistance function, denoted as ρ.
and cavernous erosion operators are iteratively applied. The curve For terrain T , the leaves are implicit shapes hierarchically com-
diffusion method of Becher et al. (2018) is more general in scope. bined to create specific geomorphological features (e.g., hoodoos,
It extends the heightfield diffusion of feature curves (Hnaidi et al. caves, and tunnels) and ultimately merged with the overall terrain
2010). These curves embody prominent landforms, like ridges and using blending, carving, and warping operators. The correspond-
river beds, and constrain altitude along the curve, but also, cru- ing terrain field function is denoted as f .
cially, the orthogonal slope. This is extended to 3D by writing fea-
ture, noise, and diffusion attributes into a voxel grid, from which 3.2 Amplification Workflow
a surface can later be extracted. Nevertheless, because the voxel The stages of our amplification process are depicted in Figure 2.
grid is encoded explicitly, available memory limits the achievable To begin with, we automatically convert the representation from
resolution. a 2 12 D heightfield H , provided as input, to an implicit 3D terrain
In the Arches system, Peytavie et al. (2009) expand the concept model T (Section 5). In this implicitization step, care is taken to
of stacked layers, first introduced for erosion simulation, by in- ensure that the implicit surface of T accurately embeds the sur-
corporating water and air layers and thereby enabling caves and face of the initial heightfield H . This is coupled with a geology
overhangs. A limited set of sphere and generalized cylinder tools construction tree G, which defines bedrock resistance in the form
are available for users to carve away and accrete material. Al- of strata and fault lines.
though more compact than voxels, the grid of material stacks is This combined representation (Terrain and Geology) is
again stored explicitly and the stabilization process introduced to amenable to various 3D modifications, such as blending and carv-
spread unstable materials to neigboring grid cells prevents alter- ing. Specifically, we augment T with 3D landforms encoded as
nating strata of materials. sub-trees that are attached to and hence modify the construction
All these techniques suffer to a greater or less extent from mem- tree of the terrain T . Those landforms are generated at the most
ory and authoring issues and, with some exceptions (Becher et al. interesting locations, in our case where rock resistance ρ (p) is low.
2018; Peytavie et al. 2009), tend to be restricted in application to During an authoring session, the user can choose from a library
a single global function (Gamito and Musgrave 2001), fracturing of geology and effect archetypes defined as pre-constructed or
effects (Ito et al. 2003), or weathering of small isolated structures procedurally generated construction trees. Alternatively, they
(Beardall et al. 2007; Jones et al. 2010). can manually edit the geology construction tree G by locally
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
147:4 • A. Paris et al.
Fig. 2. Overview of our terrain amplification: Starting from a 2 12 D heightfield H , we first perform an implicitization process to create an implicit terrain
model T suitable for 3D augmentation. At the same time, a model of the underlying geology G is created by the user. Next, a landform generation process
converts T into an augmented construction tree T̃ with sparse 3D features where required. Efficient polygonization is then used to extract a final mesh.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
Terrain Amplification with Implicit 3D Features • 147:5
Fig. 4. Different forms of geology showcased on a simple cliff terrain: sim- Fig. 5. In this example, the hoodoos were created by blending several per-
ple strata combined with noise, folds produced by a warping operator, a turbed sphere and cone primitives, and merging with the ground. Creases
local increase in bedrock resistance produced by sphere primitives, and a and cracks were added by a using warping operator.
fault line. Pale colors map to more resistant and darker to less resistant
bedrock, respectively. Note that we applied a small erosion to the cliff to
visually differentiate the strata.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
147:6 • A. Paris et al.
⎧
⎪ 3T − 2R 2 R − 2T 3
⎪T + x + x + x if 0 <x <R,
σ (x ) = ⎨
⎪ R2 R3
⎪
⎩ 2T otherwise.
The function σ limits the range of the
terrain field function f T to [0, 2T ], with a
minimum of 0 beyond the prescribed dis-
Fig. 7. Our implicitization process allows derivation of a consistent im-
plicit field function representation from an input heightfield and a domain tance R, and a maximum of 2T at a distance
Ω ⊂ R2 . of R or greater beneath the terrain surface.
This is important to allow control when
sculpting the implicit terrain with other primitives: the shape of
H . A bounding prism and a compact field function are required so
the surface of the terrain no longer influences the field function
that the resulting field function falls off to 0 at the border of the
beyond R. Finally, the terrain field function f is obtained by inter-
domain. This property guarantees that terrain primitives have no
secting f T and f P :
influence on the field function beyond a user-controlled distance
threshold. This is particularly important when blending multiple f = min( f T , f P ).
terrains (see the case of the floating islands in Figure 20) or when
carving caves or arches deep into the bedrock (see Figure 13). This subtree provides a C 1 compactly supported volumetric terrain
This conversion is achieved by assembling a subtree T with primitive, such that H ⊂ T over the domain Ω B(R). Because
three nodes: (1) a vertical prism primitive delimiting the extent of such terrain subtrees are fully consistent with other volumetric
the terrain Ω both horizontally and vertically. It has a field function primitives, they can be combined and sculpted just as readily. As
f P that is equal to T within the prism and tails off to zero outside; an illustration, terrain implicitization makes it possible to fashion
(2) a surface primitive, with a field function f T whose value is floating islands simply by intersecting two terrains, one of which
related to distance from the input heightfield and attains a value is inverted with respect to the other (see Figure 1). Note that our
of T when this distance is zero; and (3) an intersection node that representation is compatible with any type of 2 12 D terrain, either
combines f P and f T to produce f . in the form of DEM data or function-based models, such as proce-
The shape of the input terrain is therefore preserved, but in an durally generated terrains (Ebert et al. 1998) or construction trees
implicit form using a field function that combines three functions: (Génevaux et al. 2015).
(1) a bounding function f P , (2) a surface distance f T function, and
(3) a falloff function that guarantees that f should have a com- 5.2 Sculpting Primitives
pact support. The definition of a prism-based region of influence In our system, we augment an implicit terrain model T with
extending beyond and surrounding the initial terrain H is essen- sculpting primitives to create diverse volumetric features, such as
tial for combining in subsequent landforms primitives, for instance arches and caves. Sculpting primitives are controlled by a geomet-
when using the smooth blending operator. Using a domain Ω of ric skeleton S and a surrounding spatial density function f , which
arbitrary shape allows us to create sections of volumetric terrain can be written as a composition f = д ◦ d of the falloff function
with complex horizontal support (Figure 7), which can be com- д (with a radius parameter R controlling the extent of influence)
bined as illustrated in Figure 20. and the Euclidean distance d (p, S) to the skeleton S. For exam-
In more detail: for the prism, we define an enclosing domain as ple, the simple and computationally efficient point-based primitive
the Minkowski difference P = (Ω B(R)) × Δz, where Ω denotes uses the Euclidean distance d (p) = c − p to its skeletal center
the compact support of the heightfield elevation function h, B(R) point c.
is a disk centered at the origin with radius equal to the falloff R, and Skeletal primitives come in two broad classes: infinitely thin
Δz denotes the range of elevations over Ω. The field function of the primitives, built around points, line segments, and curves (Wyvill
corresponding prism primitive is defined as f P = д ◦ d (p, P). The et al. 1999), where the field tails off directly from the skeleton,
radius of influence R defines the extent of the potential field inside and volumetric primitives, such as spheres, cones, boxes, ellip-
and outside the initial terrain surface skeleton H . soids, and more complex geometry (Barbier and Galin 2004), which
For the surface primitive, we seek to construct a field function have a constant field within their volume and only fall off from the
f T such that the extracted implicit surface S = {p | f (p) = T } at boundary (see Figure 8). The former are helpful in delineating lin-
field value T embeds H . Let h(p) denote the elevation function ear features and locations, such as stratification and point erosion,
of the input terrain H over domain Ω ∈ R2 and v (p) = h(pxy ) − while the latter are effective for carving arches and karst struc-
pz the signed vertical distance to the surface. We define f T over tures, as described in Section 6.
domain Ω × R as One limitation of basing primitives on Euclidean distance is that
it leads to smooth rounded shapes, which do not match the irregu-
f T (p) = σ ◦ v (p). larities inherent in rocky surfaces. There is thus a need for suitably
perturbed skeletal primitives. However, simply adding noise to f
The function σ is a compactly supported sigmoid-like attenua- (i.e., placing a noise node at the root of the construction tree) often
tion function that limits the range of f T to [0, 2T ]. We construct it introduces unwanted holes and disconnected surface components,
as a piecewise odd cubic function (i.e., σ (−x ) = −σ (x )) satisfying and removing such artifacts is computationally expensive (Gamito
the constraints σ (0) = 0, σ (0) = 1, σ (R) = 2T , σ (R) = 0: and Maddock 2008).
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
Terrain Amplification with Implicit 3D Features • 147:7
Fig. 8. We use sphere primitives with positive energy to sculpt the terrain
and create arches. Negative skeletal primitives such as points are used to
Fig. 10. A cliff amplified with an erosion operator over the terrain con-
model caves and deep overhangs.
struction tree. Vertical cut planes show the geology tree G composed of
warped high-frequency noise blended with three less resistant strata prim-
itives. This operator allows us to represent precise stratification, creating
overhangs and fine detail without resorting to thousands of primitives.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
147:8 • A. Paris et al.
Fig. 11. An example of sea cliffs produced by our system. Starting from an input synthetic 2 21 D heightfield and geology with horizontal strata, we incre-
mentally applied three steps of sea erosion. Sea action was limited to an 8-meter range either side of average sea level, leading to strong overhangs at the
base of the cliff. Less durable rock area was specified in the geology model, which automatically generated the arch and sea cave. The effects inset shows
the repartition of volumetric features on the terrain from a top view perspective.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
Terrain Amplification with Implicit 3D Features • 147:9
Fig. 13. Four steps in the generation of a cave system using a modified Invasion-Percolation algorithm. Starting from three sinks in the 2 21 D heightfield,
invasion percolation progressively carves the subsurface of the terrain by following the least resistant layers of bedrock. Poisson Sphere sampling allows
the creation of multiple tunnels.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
147:10 • A. Paris et al.
Fig. 17. This example showcases a complex topography with sinkholes, tunnels, and caves formed by our invasion percolation algorithm. The portion of
terrain extends over 5.2 × 5.2km and the underground network of tunnels covers 2% of the surface. 165,773 sphere primitives were generated to create the
caves.
Fig. 19. A more complex scene constructed with multiple hoodoo blocks.
Fig. 18. Examples of hoodoos generated with different symbols and pro-
duction rules.
production rules are driven by the underlying geology, which im-
with some turbulence to produce layered and connected tunnel pacts not only the probability but also the parameters of terminal
structures. Figure 17 shows an example where sinks were com- symbols. We adapt the symbol size to the bedrock resistance ρ (p).
puted automatically on the plateau, leading to a complex set of All the production rules start from an axiom A. We also add rota-
tunnels emerging on the cliff. tions to symbols to add variety to the generated shapes. Figure 19
shows a generated scene composed of multiple Hoodoo blocks.
6.3 Hoodoos and Goblins
Hoodoos are tall spires of rock that protrude from the base of arid 7 POLYGONIZATION
basins and broken land. Their height varies from a few meters to At their core our terrains are implicit surfaces generated by
more than 40 meters and their formation is the result of both frost evaluating an implicit 3D construction tree T . Although im-
wedging and rain. plicit surface visualization can be achieved both directly using
A well-known location for hoodoos is the Bryce Canyon ray tracing, typically with interval arithmetic (Mitchell 1990)
National Park, but they can be found elsewhere as well. Creating or Lipschitz (Hart 1996; Kalra and Barr 1989) techniques, and
such features using a physically based approach would require an indirectly by first extracting a mesh (Wyvill et al. 1986; Lorensen
unreasonable number of erosion iterations. Therefore, we propose and Cline 1987), doing so efficiently for highly detailed terrains
a procedural approach based on an open grammar method, is challenging. Fortunately, in the case of an amplified terrain the
inspired by the grammars introduced in plant modeling (Měch volumetric carving and sculpting elements are bounded in extent
and Prusinkiewicz 1996). The two-step algorithm is as follows: (1) and generally located on or below the input 2 12 D terrain. This
We compute the probabilistic location of hoodoos according to allows potential field queries f (p) used for ray tracing and mesh
drainage area, average slope, and a prescribed user-mask. (2) We extraction to be restricted to a spatial band, thereby reducing the
generate vertical hoodoo shapes with an open grammar, whose number of field function evaluations.
parameters are driven by the geology. The rules are based on the In our case, construction trees consist of thousands of complex
bedrock resistance function ρ: less durable bedrock will produce skeletal primitives (Table 1), each requiring multiple cubic function
shapes differently to more durable bedrock. evaluations. This makes ray tracing techniques less convenient
Figure 18 shows different types of hoodoos produced by our than polygonization in the context of interactive editing, which
grammar rules. is one advantage of our method. Therefore, we focus on polygo-
The probability of hoodoo growth is computed according to nization techniques in this section. Note that while we frame a
the drainage area A and the local slope s. Hoodoos are most subsequent presentation of our acceleration in terms of mesh ex-
likely to appear on talus or cliffs, which are characterized by a traction, the benefits also apply to ray casting where empty space
medium slope and low drainage area. We compute the probability skipping can be exploited (Kruger and Westermann 2003). Our goal
of hoodoo growth by combining these criteria and then perform is to extract a C 0 surface from our implicit construction tree, and
Poisson-disk sampling to generate starting positions, which will take advantage of the localized aspect of volumetric features.
be fed as axioms to the grammar. It is useful to define a measure for the proportion of the domain
Hoodoos are created by assembling multiple terminal symbols occupied by 3D features. Let n(p) denote the number of primitives
using an open parameterized grammar method (see Figure 21). Our whose vertical projection onto the ground plane encompasses the
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
Terrain Amplification with Implicit 3D Features • 147:11
Fig. 20. The floating islands were created by combining implicitized heightfields; an erosion operator was then added to the construction tree to produce a
precise stratification, and we finally carved some tunnels and caves into the bedrock of one island by applying the Invasion-Percolation algorithm. Individual
islands are between 300m and 600m wide and were placed manually in the scene, for a total of 6mb in memory.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
147:12 • A. Paris et al.
Fig. 23. Varied landforms generated using our implicit model on small terrains (500 × 500m2 ): a coastal cliff with three sea erosion steps applied (left), a
large arch forming a bridge (center-left), a canyon where river erosion has sculpted deep overhangs (center-right), and goblins placed along the banks of a
river (right).
Memory Meshing
Scene Size a #N Generation #E Ours Arches Grid resolution t t0 #C #C0
Sea (11) 6.0 × 6.0 0.01 50 693 5.5 156 3.0 300 2, 0002 × 33 13.3 91.5 9 210
Karst (17) 5.2 × 5.2 0.02 165 773 6.2 43 9.9 140 1, 5202 × 447 14.2 188.4 14 1, 000
Canyon (15) 1.1 × 1.1 0.20 137 043 6.8 0 9.3 110 1, 0002 × 546 32.6 159.0 30 569
Hoodoo (19) 0.35 × 0.35 0.05 55 619 2.1 0 5.5 10.2 6502 × 245 2.9 15.8 4 111
Benagil (25) 0.4 × 0.4 0.35 13 264 - 551 1.3 2.1 5502 × 87 2.7 3.9 8 20
Size [km2 ], percentage of 2 12 D to 3D surface area a , number of nodes in the construction tree #N , generation time [s], editing click count done by the user #E , memory
footprint of the construction tree excluding the base heightfield [Mb], memory consumption [Mb] using the model of Peytavie et al. (2009), meshing grid resolution, optimized
and standard polygonization time t [s] and t 0 [s], number of calls to f with our optimized #C and with the standard algorithm #C0 , in millions. Benagil was entirely authored
by an experienced user using skeletal brushes in less than 10 minutes and therefore has no generation time.
demanding field function calls (#C vs. #C0 ) and consequent accel-
eration by up to a factor of 12 (t vs. t 0 ).
Our optimized version profits from the localization of volumet-
ric features. Thus the more widespread the volumetric features are
the less comparatively efficient our approach becomes. This can be
observed in the Benagil scene (Figure 25), where the ratio a is atyp-
ically high and the speedup is only 1.8. Thus, our improved version
is most efficient in the context of realistic terrains with localized
volumetric features.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
Terrain Amplification with Implicit 3D Features • 147:13
Figure 25 illustrates another example in which the user inter- to their extent. Exceptions are the Zion Canyon (Figure 15), which
actively sculpted a cave, inspired by a photograph of the Benagil exhibits extensive overhangs resulting from hydraulic erosion, and
Cave in Portugal. It required 10 minutes for an experienced user the Benagil Cave (Figure 25), which is a small scene dominated by
to author the scene from start to finish. a sea cave. Our implicit model and the use of skeletal primitives
enables us to represent local volumetric features with minimal in-
8.2 Control formation in memory. To achieve the results depicted in Table 1 we
developed an instancing system that effectively halves the mem-
Our method provides several mechanisms for user control over
ory cost of replicating a skeletal primitive.
landform generation. First, a user can define the regions to be
amplified with erosion effects or landforms, by either directly Control. Our system integrates user-control and authoring
painting a control region onto the 2D input terrain or by marking across different stages of the pipeline. Folds, faults, and different
out a spatial volume. Effects can also be fine-tuned by changing geological strata can be specified easily. The procedural genera-
their generative parameters. In contrast with most simulation- tion algorithms are parameterized with a limited set of intuitive
based methods, these parameters have a direct and intuitive parameters. The user can also directly sculpt landforms by merg-
physical interpretation (e.g., the height and base radius of the ing the terrain with primitives or even subtrees. Moreover, our sys-
hoodoos or the maximum depth of sea erosion). tem efficiently combines procedural generation and authoring in
Interactive editing is also supported. A user can directly and in- a unified and coherent framework. This bridges the gap between
teractively sculpt the terrain with extruding or intruding skele- editing and procedural generation, and supports iterative cycles of
tal primitives, or apply more complex brushes to form procedural interactive refinement.
arches and caves (see accompanying video). Table 1 reports the Extensibility. Our hierarchical implicit construction tree embeds
number of editing clicks #E required to produce the different fig- heightfield representations at an extremely reduced cost, and al-
ures: Figures 11 and 17 were edited in less than 5 minutes and af- lows us to augment 2 12 D terrains with a wide range of 3D land-
ter multiple procedural erosion steps (Section 6). The user then forms. This extensibility is depicted in Figure 23, which shows
placed sphere primitives to better sculpt the arches and the caves. the outcomes of a variety of processes. These scenes were created
Figures 15 and 19 were fully procedural. Figure 25 was entirely au- by extending the model with new operators, primitives, and algo-
thored by an experienced user who interactively hollowed out the rithms. We also believe that the model is suited to physical simu-
cave and sculpted the arches with point and sphere primitives to lation, but testing this is left as future work.
match the reference picture; the scene was completed in approxi-
mately 10 minutes. A key benefit of our framework is that our ter-
rain models offer a single consistent global scene structure. This 8.4 Comparison with Other Techniques
means that the user can seamlessly switch between manual au- Our primitive-based implicit model allows the generation of a wide
thoring and procedural algorithms over as many cycles of iterative variety of landforms with a low memory footprint. Such com-
refinement as required. Interactive visualization during editing is pactness is in contrast to other volumetric terrain models, such
made possible by delimiting the shaping tools and only repolygo- as Arches (Peytavie et al. 2009), which rely on voxels or material
nizing over modified cells in the grid. stacks. Table 1 compares the overall memory footprint for several
terrains and demonstrates that our method uses two orders of mag-
8.3 Performance nitude less memory than material stacks, at the same precision.
There are two main reasons for this: first, our hierarchical con-
Table 1 reports the following statistics for the landscapes portrayed struction tree is a parsimonious vector-based representation that
in our results: the extent of the input terrain (in [km2 ]), the num- generates at appropriate locations the specific primitives required
ber of construction tree nodes produced by 3D augmentation, the by a landform, and, second, we only rely on 3D primitives where
amount of memory required, and the time required to generate the needed, and resort to more memory-efficient implicitized height-
construction tree (which excludes subsequent polygonization). We field representations elsewhere.
also report the amount of memory needed to model the same ter-
rains using the Arches (Peytavie et al. 2009) model.
9 CONCLUSION
Speed. Our amplification methods generate the construction tree
We have introduced a novel method for augmenting 2 12 D height-
representing complex landforms at a precision of ≈10cm in less
fields with 3D landforms. Such 3D landforms as sea cliffs, canyons
than 7 seconds for terrains that extend over 5km2 . Performance
with overhangs, network of caves and tunnels, hoodoos and gob-
could be improved by using the GPU, but it is beyond the scope
lins, and even floating islands, are essential scenic elements in syn-
of this article and is left as future work. Note that such procedural
thetic environments, animated films, and computer games.
methods are more time-consuming when applied globally as op-
Our compact hierarchical primitive-based implicit representa-
posed to locally during an editing session, where effects are re-
tion captures 3D features at resolutions as fine as 10cm over large
stricted to a smaller domain to ensure interactivity.
terrains up to 5km2 in extent with a memory footprint of at most
Memory. Our hierarchical implicit construction tree is space ef- a few megabytes. Structuring the terrain as an implicit hierarchy
ficient in modeling 3D landforms. One important aspect of our ap- also enables significantly accelerated surface extraction. At the
proach is that implicit primitives are only located where required. heart of our method is a system that analyzes an input 2 12 D terrain
Thus, most of our scenes have a low occupancy ratio a compared to derive the location and characteristics of volumetric landforms,
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
147:14 • A. Paris et al.
and which automatically generates their shape according to James Gain, Patrick Marais, and Wolfgang Strasser. 2009. Terrain sketching. In Pro-
the relief of the terrain, environmental erosion effects, and the ceedings of the Symposium on Interactive 3D Graphics and Games. ACM, 31–
38.
underlying structure of the geology. James E. Gain, Bruce Merry, and Patrick Marais. 2015. Parallel, realistic and control-
Our system integrates user-control and authoring at different lable terrain synthesis. Computer Graphics Forum 34, 2 (2015), 105–116.
Eric Galin, Eric Guérin, Adrien Peytavie, Guillaume Cordonnier, Marie-Paule Cani,
stages of the pipeline, from definition of the different strata, folds Bedrich Benes, and James Gain. 2019. A review of digital terrain modeling. Com-
and faults of the geology, to direct sculpting of features. Crucially, puter Graphics Forum (Proceedings of Eurographics 2019 STAR) 38, 2 (2019), 553–
the transition between editing and simulation is seamless, which 577.
Manuel Gamito and Steve Maddock. 2008. Topological correction of hypertex-
supports iterative cycles of interactive refinement. tured implicit surfaces for ray casting. The Visual Computer 24, 6 (2008),
We have shown a wide variety of obtainable effects, including 397–409.
augmenting real 2 12 D DEM data with features such as arches and Manuel N. Gamito and Kenton Forest Musgrave. 2001. Procedural landscapes with
overhangs. In Proceedings of the Portuguese Computer Graphics Meeting.
caves, and synthesizing fantastical floating islands. Jean-David Génevaux, Éric Galin, Éric Guérin, Adrien Peytavie, and Bedřich Beneš.
In the future, we would like to investigate the implicit model- 2013. Terrain generation using procedural models based on hydrology. ACM
Transactions on Graphics 32, 4 (2013), 143:1–143:13.
ing of finely detailed rock features at scales below 10cm, thereby Jean-David Génevaux, Eric Galin, Adrien Peytavie, Eric Guérin, Cyril Briquet,
bridging the gap between modeling and texturing for terrains. Cur- François Grosbellet, and Bedrich Benes. 2015. Terrain modelling from feature
rently, details such as cracks in granite or thin seams of limestone primitives. Computer Graphics Forum 34, 6 (2015), 198–210.
Eric Guérin, Julie Digne, Eric Galin, and Adrien Peytavie. 2016. Sparse representa-
require creating complex geometric primitives or seeding thou- tion of terrains for procedural modeling. Computer Graphics Forum (Proceedings
sands of tiny primitives, with a concomitant increase in both mem- of Eurographics) 35, 2 (2016), 177–187.
ory and computation. Eric Guérin, Julie Digne, Eric Galin, Adrien Peytavie, Christian Wolf, Bedrich Benes,
and Benoit Martinez. 2017. Interactive example-based terrain authoring with con-
ditional generative adversarial networks. ACM Transactions on Graphics (Proceed-
ACKNOWLEDGMENTS ings of SIGGRAPH Asia 2017) 36, 6 (2017), 228:1–228:13.
John C. Hart. 1996. Sphere tracing: A geometric method for the antialiased ray tracing
We would like to credit E-on software for providing Vue xStream of implicit surfaces. The Visual Computer 12, 10 (1996), 527–545.
for rendering our terrain models. Houssam Hnaidi, Éric Guérin, Samir Akkouche, Adrien Peytavie, and Éric Galin. 2010.
Feature based terrain generation using diffusion equation. Computer Graphics Fo-
rum 29, 7 (2010), 2179–2186.
REFERENCES Tomoya Ito, Tadahiro Fujimoto, Kazunobu Muraoka, and Norishige Chiba. 2003. Mod-
Aurelien Barbier and Eric Galin. 2004. Fast distance computation between a point and eling rocky scenery taking into account joints. In Proceedings of Computer Graph-
cylinders, cones, line-swept spheres and cone-spheres. Journal of Graphics Tools ics International. IEEE, 244–247.
9, 2 (2004), 11–19. M. Jones, M. Farlay, M. Butler, and M. Beardall. 2010. Directable weathering of concave
Richard Barnes, Clarence Lehman, and David Mulla. 2014. Priority-flood: An optimal rock using curvature estimation. IEEE Transactions on Visualization and Computer
depression-filling and watershed-labeling algorithm for digital elevation models. Graphics 16, 1 (2010), 81–97.
Computers and Geosciences 62 (2014), 117–127. D. Kalra and A. H. Barr. 1989. Guaranteed ray intersections with implicit surfaces.
M. Beardall, M. Farley, D. Ouderkirk, C. Reimschussel, J. Smith, M. Jones, and P. SIGGRAPH Computer Graphics 23 (1989), 297–306.
Egbert. 2007. Goblins by spheroidal weathering. In Proceedings of the 3rd Euro- Alex D. Kelley, Michael C. Malin, and Gregory M. Nielson. 1988. Terrain sim-
graphics Conference on Natural Phenomena. 7–14. ulation using a model of stream erosion. Computer Graphics 22, 4 (1988),
Michael Becher, Michael Krone, Guido Reina, and Thomas Ertl. 2017. Feature-based 263–268.
volumetric terrain generation. In Proceedings of the 21st ACM SIGGRAPH Sympo- J. Kruger and R. Westermann. 2003. Acceleration techniques for GPU-based volume
sium on Interactive 3D Graphics and Games (I3D’17). 10:1–10:9. rendering. In Proceedings of the 14th IEEE Visualization 2003 (VIS’03). IEEE Com-
M. Becher, M. Krone, G. Reina, and T. Ertl. 2018. Feature-based volumetric terrain gen- puter Society, 38–44. DOI:https://doi.org/10.1109/VIS.2003.10001
eration and decoration. IEEE Transactions on Visualization and Computer Graphics William E. Lorensen and Harvey E. Cline. 1987. Marching cubes: A high resolution
(2018), 1. 3D surface construction algorithm. SIGGRAPH Computer Graphics 21, 4 (1987),
Farès Belhadj and Pierre Audibert. 2005. Modeling landscapes with ridges and rivers: 163–169.
Bottom up approach. In Proceedings of the International Conference on Computer Radomír Měch and Przemyslaw Prusinkiewicz. 1996. Visual models of plants in-
Graphics and Interactive Techniques in Australasia and South East Asia. ACM, 447– teracting with their environment. In SIGGRAPH’96. ACM, 397–410. DOI:https:
450. //doi.org/10.1145/237170.237279
Norishige Chiba, Kazunobu Muraoka, and K. Fujita. 1998. An erosion model based Xing Mei, Philippe Decaudin, and Baogang Hu. 2007. Fast hydraulic erosion simula-
on velocity fields for the visual simulation of mountain scenery. The Journal of tion and visualization on GPU. In Pacific Graphics. IEEE, 47–56.
Visualization and Computer Animation 9, 4 (1998), 185–194. Gavin Miller. 1994. Efficient algorithms for local and global accessibility shading. In
Guillaume Cordonnier, Jean Braun, Marie-Paule Cani, Bedrich Benes, Éric Galin, Proceedings of the 21st Annual Conference on Computer Graphics and Interactive
Adrien Peytavie, and Éric Guérin. 2016. Large scale terrain generation from tec- Techniques (SIGGRAPH’94). ACM, 319–326.
tonic uplift and fluvial erosion. Computer Graphics Forum 35, 2 (2016). Don P. Mitchell. 1990. Robust ray intersection with interval arithmetic. In Proceedings
Guillaume Cordonnier, Marie-Paule Cani, Bedrich Benes, Jean Braun, and Eric Galin. on Graphics Interface’90. 68–74.
2018. Sculpting mountains: Interactive terrain modeling based on subsurface geol- Forest Kenton Musgrave, Craig E. Kolb, and Robert S. Mace. 1989. The synthesis and
ogy. IEEE Transactions on Visualization and Computer Graphics 24, 5 (2018), 1756– rendering of eroded fractal terrains. Computer Graphics 23, 3 (1989), 41–50.
1769. Kenji Nagashima. 1998. Computer generation of eroded valley and mountain terrains.
Guillaume Cordonnier, Eric Galin, James Gain, Bedrich Benes, Eric Guérin, Adrien The Visual Computer 13, 9–10 (1998), 456–464.
Peytavie, and Marie-Paule Cani. 2017. Authoring landscapes by combining Mattia Natali, Endre M. Lidal, Julius Parulek, Ivan Viola, and Daniel Patel. 2013.
ecosystem and terrain erosion simulation. ACM Transactions on Graphics 36, 4 Modeling terrains and subsurface geology. In Eurographics State of the Art.
(2017). 155–173.
Benoît Crespin, Carole Blanc, and Christophe Schlick. 1996. Implicit sweep objects. Adrien Peytavie, Éric Galin, Stephane Mérillou, and Jérôme Grosjean. 2009. Arches: A
Computer Graphics Forum 15, 3 (1996), 165–174. framework for modeling complex terrains. Computer Graphics Forum 28, 2 (2009),
Evgenij Derzapf, Björn Ganster, Michael Guthe, and Reinhard Klein. 2011. River net- 457–467.
works for instant procedural planets. Computer Graphics Forum 30, 7 (2011), 2031– Przemyslaw Prusinkiewicz and Marc Hammel. 1993. A fractal model of mountains
2040. with rivers. In Proceedings of Graphics Interface. 174–180.
David S. Ebert, Forest Kenton Musgrave, Darwyn Peachey, Ken Perlin, and P. Roudier, B. Peroche, and M. Perrin. 1993. Landscapes synthesis achieved through
Steven Worley. 1998. Texturing and Modeling: A Procedural Approach (3rd ed.). erosion and deposition process simulation. Computer Graphics Forum 12, 3 (1993),
Elsevier. 375–383.
T. Graham Freeman. 1991. Calculating catchment area with divergent flow based on Brennan Rusnell, David Mould, and Mark G. Eramian. 2009. Feature-rich distance-
a regular grid. Computer and Geoscience 17 (1991). based terrain synthesis. The Visual Computer 25, 5–7 (2009), 573–579.
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.
Terrain Amplification with Implicit 3D Features • 147:15
Flora Ponjou Tasse, Arnaud Emilien, Marie-Paule Cani, Stefanie Hahmann, and Brian Wyvill, Andrew Guy, and Éric Galin. 1999. Extending the CSG tree—Warping,
Adrien Bernhardt. 2014. First person sketch-based terrain editing. In Proceedings blending and boolean operations in an implicit surface modeling system. Com-
of the Graphics Interface. 217–224. puter Graphics Forum 18, 2 (1999), 149–158.
Flora Ponjou Tasse, James Gain, and Patrick Marais. 2012. Enhanced texture-based Geoff Wyvill, Craig McPheeters, and Brian Wyvill. 1986. Data structure for soft ob-
terrain synthesis on graphics hardware. Computer Graphics Forum (2012), 1959– jects. Visual Computer 2 (Aug. 1986), 227–234.
1972. Howard Zhou, Jie Sun, Greg Turk, and James M. Rehg. 2007. Terrain synthesis from
Juraj Vanek, Bedřich Beneš, Adam Herout, and Ondřej Šťava. 2011. Large-scale digital elevation models. Transactions on Visualization and Computer Graphics 13,
physics-based terrain editing using adaptive tiles on the GPU. Computer Graphics 4 (2007), 834–848.
and Applications 31, 6 (2011), 35–44.
David Wilkinson and Jorge F. Willemsen. 1983. Invasion percolation: A new form
of percolation theory. Journal of Physics A: Mathematical and General 16 (1983),
3365–3376. Received December 2018; revised June 2019; accepted June 2019
ACM Transactions on Graphics, Vol. 38, No. 5, Article 147. Publication date: September 2019.