Download proposal in Word document format
Download Power Point presentation of proposal
Author: Kim Randleff-Rasmussen
00R1008
Supervisors: Shaun Bangay
Adele Lobb
Research
Field
The purpose of this project is to develop a procedural modelling language to model a scene consisting of many similar objects (such as a forest or a jungle).
The specifics of the rendering of the scene and the various texture maps, shaders and lighting models required for absolute realism will not be explored in any great depth. However, a preliminary investigation of each of these topics will be undertaken to ensure completeness of the procedural modelling language (i.e., provision for each of these details will be made within the language).
Context
Astirid Lindenmayer first introduced the concept of a context-free L-System in order to model the cellular growth of cells [4]. Since that time, L-Systems have been successfully implemented to model the growth of other organic objects such as trees and other plants. This simulated growth of plants is achieved through the storing of rules of growth. Specifically, L-Systems recursively apply a set of rules to achieve a desired configuration. Variations on the classic L-System include such added features as parameterisation, which allows assorted versions of the same basic configuration to be achieved. This feature is particularly useful in plant modelling.
Procedural modelling is a graphics modelling methodology whereby the graphical primitives to be rendered are created in a parameterised procedure rather than statically kept in an archive. This process allows for varying detail levels within the rendering of the scene and increases the efficiency with which complex geometric shapes (such as trees) can be generated. This is achieved by including such complex tasks as shading requirements and internal animation (change in object over time) within the procedure rather than creating separate definitions for each rendered object.
Preliminary
Literature Review
Most important to the development of this project will be previous explorations into the use of L-Systems and procedures to model large scale landscapes. Of particular interest is that work which focussed on the modelling of organic environments and ecosystems. Prusinkiewicz has described many developments in this field. In particular, his original work with Lindenmayer [6] on L-Systems shall be studied. Attention shall also be paid to subsequent work with Hammel and Mjolsness [8] on plant development and with Mĕch [7] on plant-environment interaction.
Much work has been done on the use of procedural modelling techniques to render cityscapes and other architectural views. The techniques used in these cases can be adapted and developed to apply to the generation of forest/jungle scenes as well. Here, some of the significant work includes that by Parish and Müller [5] and Birch et. al. [1].
In terms of design and implementation of the procedural modelling language, the primary resource will be Professor Patrick Terry’s textbook on translators and compilers (from his 3rd year course at Rhodes University) [10]. The basic design and syntax of the language will be based on existing scripting languages such as Renderman’s shading language and Maya’s MEL (Maya Embedded Language).
Proposed
Methodology
This project will begin with the development of L-Systems to model various plant species which will be used in the forest scenes. Following this, a procedural modelling language will be designed which will cater for the following needs:
. Identification of the types of trees to be rendered
. Specification of the ratio of tree types to one another
. Indication of the density of the trees in various areas of the scene
. Specification of the weather conditions of the area (in order to model realistic growth of plants)
. Level of detail to be modelled (depending on the size of the scene and the distance from the viewer)
The language will be designed with reference to the Renderman shading language for consistency.
The next stage of the project will be to parse the modelling language into C++ code which will then use the designed L-Systems and various rendering techniques to produce the organic objects. This code will also place the objects in a scene. This will be done using procedural modelling techniques which will not explicitly specify each required primitive but will produce each one using pre-defined procedures.
4.1.
Proposed Timeline
1. Investigate and understand the use of L-Systems as plant modelling tools
2. Implement a simple L-System modelling a basic tree structure
3. Develop an algorithm for translating L-Systems into C++ code
4. Define the skeleton of a procedural modelling language
5. Create the procedural modelling grammar (using Coco/R)
6. Parse and compile the procedural modelling language grammar
7. Create a C++ program to use parameters from the procedural program to render a scene
8. Design (or find) L-Systems for a number of plant species
9. Translate L-Systems to C++ code
10. Design and test a simple forest scene
11. Design and render a number of forest scenes
Use of
Research Findings
The particular outputs of this project are a working procedural modelling language which can be used to produce forest scenes of varying size, density and composition. This result will be proved by the production of a number of forest scenes using the developed language and the designed L-Systems.
References
Birch, P. et. al., 2001, “Rapid Procedural Modelling of Architectural Structures” in Proceedings of the 2001 Conference on Virtual Reality, Archeology, and Cultural Heritage
Deussen, O. et. al., 1998, “Realistic Modelling and Rendering of Plant Ecosystems” in Proceedings of ACM SIGGRAPH 1998, 275-286
Guerraz, S. et. al., 2003, “A Procedural Approach to Animate Interactive Natural Sceneries” in CASA, 73-78
Lindenmayer, A., 1968, "Mathematical models for cellular interaction in development, Parts I and II" in Journal of Theoretical Biology, Volume 18, 280-315
Parish, Y. and Müller, P., 2001, “Procedural Modelling of Cities” in Proceedings of ACM SIGGRAPH 2001, ACM Press, E. Flume (ed.), 301-308
Prusinkiewicz, P. and Lindenmayer, A., 1991, The Algorithmic Beauty of Plants, Springer-Verlag
Prusinkiewicz, P. and Mĕch, R., 1996, “Visual Models of Plants Interacting with Their Environment” in Proceedings of ACM SIGGRAPH 1996, 397-410
Prusinkiewicz, P. et. al., 1993, “Animation of Plant Development” in SIGGRAPH ’93 Conference Proceedings, ACM SIGGRAPH, Addison Wesley
Prusinkiewicz, P., 1986, “Graphical Applications of L-Systems” in Proceedings of Graphics Interface ’86 – Vision Interface 1986, 247-253
Terry, P., 1996, Compilers and Compiler Generators, Rhodes University [online] Available at: http://www.scifac.ru.ac.za./compilers/