 |
 |
|
 |
Procedural Modeling
By Forrester Cole
16 August 2001
The Procedural
Modeling paper session collected four papers on simulating natural
and man-made structures. Modeling procedurally in terms of these
papers means creating a simulation from ground-up concepts and rules,
rather than by capturing and manipulating real-world data. The papers
were split between modeling plants and animals and modeling man-made
buildings. All the papers had good results, although the paper on
plants seemed especially well developed.
The Use of Positional
Information in the Modeling of Plants
Przemyslaw Prusinkiewicz of the University of Calgary presented
this paper on the modeling of plants. The material covered overlapped
significantly with his presentation two days ago in the course Modeling
Nature, but with an emphasis on modeling the shape, not just the
structure, of the plants. The basic model that Prusinkiewicz uses
to describe the structure of a plant is an L-System (named for its
developer, Aristid Lindenmeyer). An L-system is basically a sophisticated
grammar. An example rule would be 'a bud goes to a flower.'
The rules of an L-system are parameterized by time, so that each
application of the rules equates to a time step. Using this general
system, many different plant structures can be described quite easily
and effectively.
The L-system only
describes the structure of the plant, not the overall shape. Artists
commonly want to define the overall shape of a plant, and have the
simulation fill in the details. The paper proposes a set of simple
controls that allow an artist to just that. Rather than treat the
entire plant as a piece of spline geometry, the authors describe
a plant in differential turtle geometry. Turtle geometry is named
after the renowned turtle of LOGO. A shape is described in turtle
geometry by recursive rules that a turtle would understand, e.g.
go forward, turn right, repeat. The shape of the plant is parameterized
by the steps the turtle takes as it walks along the length of the
plant. The artist can simply drag around a set of curves, corresponding
to, for example, the length or density of leaves along the plant's
length.
Prusinkiewicz
demonstrated the system by quickly creating a convincing fern leaf.
Given a basic, uniform fern with even leaf size and spacing, he
adjusted the parameters along the length of the fern to match those
of a real fern leaf. As a final demonstration, he showed a forest
scene first specified by crude cylinders and cones and then with
the geometry filled in with plants.
Procedural Modeling
of Cities
The second paper was presented by 'Yogi' Yoav Parish and Pascal
Mueller, both of the Eidgenoessische Technische Hochschule Zuerich.
Parsich and Mueller used L-systems extensively as well, but to model
the shape of cities instead of plants. The goal of their work is
not to recreate any particular city, but to create convincing backdrop
cities for animation. Their algorithm is simple to use and generates
believable, but generic, results.
Modeling a cities
happens in four main stages: generation of the street map, division
of the map into building lots, generation of the buildings, and
texturing of the buildings. The generation of the street map and
of the buildings themselves is done with L-systems. Growing a building
is especially similar to growing a plant, except that the basic
rules are geometric operations such as extrusions, not time varying
growth. The input to the algorithm can be tailored extensively,
but at its simplest it consists of a geographic map and a population
density map.
The authors created
a procedural method for texturing the buildings as well. The system
uses a series of overlaid two dimensional functions to determine
where to place windows and other features. By using a procedural
system the authors avoid storing large numbers of textures for each
building.
Feature-Based Cellular Texturing for Architectural Models
Justin Legakis of the Massachusetts Institute of Technology then
presented his work on cellular texturing, done in conjunction with
Julie Dorsey of MIT and Steven Gortler of Harvard. A cellular texture
is a texture made up of discrete cells, which in an architectural
context can represent bricks or stones. The authors' work is aimed
at creating a system to believably texture architectural models,
while at the same time remaining flexible and reusable. The approach
they have come up with could be thought of as a style sheet system
for buildings.
All cells in the
paper are treated as three dimensional objects. Using three dimensions
throughout solves continuity problems at corners and edges of buildings,
where 2D textures may not match. The paper also defines a system
of pattern generators and pattern trees. A pattern generator defines
how to tile a space, either a corner, edge, or face, with a texture.
A pattern generator could be defined for brown stone, and then reused
repeatedly. A pattern tree is built up out of pattern generators
and nodes that decide which generators to use in each case. For
instance, a tree may state that a certain generator should be used
for corners and edges, while another should be used for horizontal
faces, and yet another for vertical faces.
After a pattern
tree and a set of generators are defined, the tree may be applied
to geometry. Special geometry features such as arches may also be
assigned special generators. The result is a system that can generate
clean, sophisticated textures for buildings of arbitrary layout,
with little user intervention.
Integrating Shape
and Pattern in Mammalian Models
The last paper was work on simulating the spots and stripes of animals.
Marcelo Walter of the Universidade do Vale do Rio dos Sinos presented
the paper, which he wrote along with Alain Fournier of the University
of British Columbia and Daniel Menevaux of the Laboratoire SIC.
The algorithm tries to integrate the creation of the appearance
(texture) of a model closely with the creation of its shape. An
application would be the creation of a large heard of differently
sized giraffes. Using the method outlined in the paper, the animals
would automatically have believable coloring consistent with their
size and shape.
The generation
of the animals markings is based on a biologically plausible model
of cell growth. The colored patches on the skin are caused by the
presence of pigment cells. As the simulated animal grows, the pigment
cells in the animalís skin grow and change their shape. A
young animal may have small, undeveloped spots, where an adult has
the fully developed coloring. The simulated age and size of the
animal is controlled by transformations on the size and shape of
the animalís body parts.
|
 |
 |
 |
|
SIGGRAPH Papers |
|
By far and away the
most prestigious publication for computer graphics. |
|
|
|
|
|
|
|
 |
 |
 |