Multimed Tools Appl (2012) 60:1–30
DOI 10.1007/s11042-011-0795-0
Example-based procedural modelling by geometric
constraint solving
Enrique Yeguas · Rafael Muñoz-Salinas ·
Rafael Medina-Carnicer
Published online: 15 April 2011
© Springer Science+Business Media, LLC 2011
Abstract A novel method for procedurally modelling large, complex three–
dimensional scenes is presented. Our approach is general-purpose and takes as input
any three–dimensional model intuitively provided by a user. The algorithm exploits
the adjacency between shapes and objects in the input model and computes an
output model that extracts these features (constraints and adjacencies) and models
the input. There are two important differences between our method and existing
general-purpose model synthesis algorithms. The first is the use of a distribution for
the surface or terrain on which the new model is placed. The second difference is
that we automatically generate example-inherent constraints to assist the adjacency-
based construction using constructive geometric constraint solving.
Keywords Model synthesis · Procedural modelling · Example-based modelling ·
Geometric constraint solving · Mixture models
1 Introduction
Complex three-dimensional models are required by applications in virtual envi-
ronments, computer-aided design and manufacturing, computer gaming, animated
movies, and medical simulations, to be compelling and realistic. Such geometric
models, whose demand is large and expanding, are used to represent the design
and shape of objects. The creation of both realistic and fantastic models, often
containing very complex and widely-varying shapes and styles, is difficult and can
be tremendously time-consuming.
Procedural modelling refers to a wide variety of techniques for automatic model
creation: large-scale automated art and content generation. A new procedural mod-
E. Yeguas (B ) · R. Muñoz-Salinas · R. Medina-Carnicer
Departamento de Informática y Análisis Numérico, Universidad de Córdoba, Campus de
Rabanales, Edificio C3, Planta Baja, Córdoba, Spain
e-mail: eyeguas@uco.es