16
Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1 Generating and Rendering Large Scale Tiled Plant Populations Martin Weier * , Andr´ e Hinkenjann * , Georg Demme , Philipp Slusallek * Hochschule Bonn-Rhein-Sieg Institut f ¨ ur Visual Computing, Fachbereich Informatik 53757 Sankt Augustin Germany email: {Martin.Weier | Andre.Hinkenjann}@h-brs.de www: http://vc.inf.h-brs.de DFKI GmbH, Saarland University 66123 Saarbr ¨ ucken Germany email: [email protected] www: http://www.dfki.de/ DFKI GmbH and Intel Visual Computing Institute, Saarland University 66123 Saarbr ¨ ucken Germany email: [email protected] www: http://www.dfki.de/ Abstract Generating and visualizing large areas of vegetation that look natural makes terrain surfaces much more re- alistic. However, this is a challenging field in com- puter graphics, because ecological systems are com- plex and visually appealing plant models are geomet- rically detailed. This work presents Silva (System for the Instantiation of Large Vegetated Areas), a system to generate and visualize large vegetated areas based on the ecological surrounding. Silva generates veg- etation on Wang-tiles with associated reusable distri- Digital Peer Publishing Licence Any party may pass on this Work by electronic means and make it available for download under the terms and conditions of the current version of the Digital Peer Publishing Licence (DPPL). The text of the licence may be accessed and retrieved via Internet at http://www.dipp.nrw.de/. First presented at the Workshop of the GI VR/AR experts group 2011, extended and revised for JVRB butions enabling multi-level instantiation. This paper presents a method to generate Poisson Disc Distri- butions (PDDs) with variable radii on Wang-tile sets (without a global optimization) that is able to gener- ate seamless tilings. Because Silva has a freely con- figurable generation pipeline and can consider plant neighborhoods it is able to incorporate arbitrary abi- otic and biotic components during generation. Based on multi-level instancing and nested kd-trees, the dis- tributions on the Wang-tiles allow their acceleration structures to be reused during visualization. This en- ables Silva to visualize large vegetated areas of several hundred square kilometers with low render times and a small memory footprint. Keywords: Ecosystem simulation, Wang-tiles, In- stantiation, Poisson Disc Distribution, Terrain render- ing, Ray Tracing 1 Introduction Modern geographic information systems are able to cope with extremely large highly detailed data sets in real time that are available for almost all areas of the urn:nbn:de:0009-6-36322, ISSN 1860-2037

Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

Generating and Rendering Large Scale Tiled Plant Populations

Martin Weier∗, Andre Hinkenjann∗, Georg Demme†, Philipp Slusallek‡

∗Hochschule Bonn-Rhein-SiegInstitut fur Visual Computing, Fachbereich Informatik

53757 Sankt AugustinGermany

email: Martin.Weier | [email protected]: http://vc.inf.h-brs.de

†DFKI GmbH, Saarland University66123 Saarbrucken

Germanyemail: [email protected]

www: http://www.dfki.de/‡DFKI GmbH and Intel Visual Computing Institute, Saarland University

66123 SaarbruckenGermany

email: [email protected]: http://www.dfki.de/

Abstract

Generating and visualizing large areas of vegetationthat look natural makes terrain surfaces much more re-alistic. However, this is a challenging field in com-puter graphics, because ecological systems are com-plex and visually appealing plant models are geomet-rically detailed. This work presents Silva (System forthe Instantiation of Large Vegetated Areas), a systemto generate and visualize large vegetated areas basedon the ecological surrounding. Silva generates veg-etation on Wang-tiles with associated reusable distri-

Digital Peer Publishing LicenceAny party may pass on this Work by electronicmeans and make it available for download underthe terms and conditions of the current versionof the Digital Peer Publishing Licence (DPPL).The text of the licence may be accessed andretrieved via Internet athttp://www.dipp.nrw.de/.First presented at the Workshop of the GI VR/ARexperts group 2011, extended and revisedfor JVRB

butions enabling multi-level instantiation. This paperpresents a method to generate Poisson Disc Distri-butions (PDDs) with variable radii on Wang-tile sets(without a global optimization) that is able to gener-ate seamless tilings. Because Silva has a freely con-figurable generation pipeline and can consider plantneighborhoods it is able to incorporate arbitrary abi-otic and biotic components during generation. Basedon multi-level instancing and nested kd-trees, the dis-tributions on the Wang-tiles allow their accelerationstructures to be reused during visualization. This en-ables Silva to visualize large vegetated areas of severalhundred square kilometers with low render times anda small memory footprint.

Keywords: Ecosystem simulation, Wang-tiles, In-stantiation, Poisson Disc Distribution, Terrain render-ing, Ray Tracing

1 Introduction

Modern geographic information systems are able tocope with extremely large highly detailed data sets inreal time that are available for almost all areas of the

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 2: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

world. For planning and simulation three-dimensionalvisualization of these data sets is gaining more andmore importance. Since plants are a crucial compo-nent of almost all small scale landscapes the realismof these visualizations can be highly increased by vi-sualizing the predominant vegetation.

However, plants are complex structures with com-plex ramifications including bark and detailed foliage.Therefore, 3D plant models often consist of thousandsof triangles. In order to reduce the data’s complexityduring the visualization different data can be reusedusing instantiation. Instantiation can be used on dif-ferent levels, from single leaves up to whole reusablepopulations, i.e. it can be applied hierarchically onmultiple levels (multi-level instancing). Based on thework by Dietrich et al. [DMS06] for the visualizationof vegetation we propose a method for the automaticgeneration of vegetation with regard to the instantia-tion schemes used during visualization.

Due to their rectangular shape Wang-tiles haveproven to be well suited to easily generate reusablepatterns for texture synthesis and object distributions[CSHD03]. In [DMS06] plant distributions on Wang-tiles are reused throughout the scene. This makesit possible to reuse the accelerating data structuresneeded for rendering.

However, instantiating is not only used for parts ofthe population but also for the plant models them-selves. Silva allows for the generation of reusableplant populations on such instantiable Wang-tile setsto provide vegetation that can be instantiated on mul-tiple levels.

2 Related Work

The goal of an ecosystem simulation is to find a pro-duction algorithm that allows generating a plausibleplant population under consideration of the ecologicalsurrounding. In general, a first naive approach is todistribute plants randomly using PDDs. Recent pub-lications to generate PDDs, like [DH06] or [Jon06],generate distributions where the distance between thesites is fixed. These distributions are well suited forsampling but are not suited for the generation of plantpopulations since the maximum radius of the plants fo-liage or comose radii are highly varying in nature. Agood overview of other methods to generate PDDs is[LD08].

Entirely random distributions of plants are usuallyconsidered implausible for large areas as they do not

consider ecological components and plant neighbor-hoods. Commercial products like Vue [E-o10], World-builder [DE10], SpeedTree [IDV] or the vegetationtool of the CryENGINE 3 [Cry] offer different meth-ods to “design” vegetation. There, plants are placed bypainting or specifying regions where single or smallsets of plants are placed randomly. Usually these re-gions are specified by 2D density maps. However,these tools do not allow to automatically generate thevegetation based on predominant ecological compo-nents. These systems provide no interface to be cou-pled to real world data. In addition, the size of thelandscapes is limited because they do not support toreuse large-scale distributions. In order to visual-ize dense vegetation on areas of a couple of thou-sand square kilometers, instantiation schemes for plantmodels and distributions must be applied.

One simulation approach that incorporates the eco-logical surrounding is [DHL+98]. Starting from aninitial distribution, plants grow and compete with eachother. For each plant one value is computed describingits ecological vigor in relation to the predominant eco-logical components. If two plants demand the sameresources due to their growth, i.e. when their sites rep-resenting their region of influence intersect, the weakerone dies. In addition to this thinning, new plants areadded over time or die because of their age. However,this model does not consider the plants’ distances toone another.

Neighboring plants may have a greater influence oneach other than on the ones farther away but are notnecessarily lethal for one or the other. Thus, the in-fluence of neighboring plants must be distributed dis-tance weighted. This is considered in the FON (Fieldof Neighborhoods) model [BH00], first introduced formangrove forests.

An even more elaborate system using a FON sim-ulation is [AD05]. In this system neighborhoods ofdifferent sized species are examined. This system pro-poses a fixed function pipeline for the simulation. Theideas of [AD05] are extended in [BAMJ+11] for ur-ban areas, where the simulation methods are alteredto support more controlled areas within an urban envi-ronment. Some of these methods can be modeled withSilva as well. However, all these approaches are sim-ulations over time allowing plants to grow and havevarying positions during the simulation. There is noway to map the simulation results onto a smaller setof Wang-tiles that is able to regenerate the simulationresults by creating an aperiodic tiling.

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 3: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

A more generic approach to describe growth andsimulations for ecosystem is realized in OpenAlea[Ope10]. In [Ope10] arbitrary models can be de-scribed via connectable simulation modules using agraphical interface. OpenAlea uses Lindenmayer-Systems (L-Systems) [PL90, Chap.1], which are acommon tool to describe growth of single plants towhole populations [DL05, p. 65]. In another sys-tem GroIMP [Fac10] rule-based modeling using a re-lational growth grammar (RGG) expressed through aJava based domain specific language called XL is used.Both systems allow for simulations on very small areasand do not support the generation of reusable popula-tion components.

In order to visualize 3D plant populations ray trac-ing of such natural scenes has been an active researchtopic since more than twenty years. One major prob-lem is the vast amount of geometric data that needs tobe processed while displaying large plant population,e.g. forests. Early systems like [PKGH97] that couldvisualize large amounts of data exceeding main mem-ory always used caching and paging methods. How-ever, these systems are not suited for an interactivevisualization of a large number of plant models, donot reuse data during visualization and suffer from thebandwidth limitations of the memory hierarchy.

Another way to display large plant populations isto change their representation by using simpler prim-itives. One framework that is based on OpenRT[Ope07] was introduced in 2005 by Dietrich et al.[DCDS05]. There the complex polygonal plant mod-els are represented by simple point and line primitives.The largest population displayed by the system was onan area of 300m× 300m (see [DMS06]).

The idea of the method used by Silva is reusingpositions of sub-populations and their acceleratingdata structures by using multi-level instancing andWang-tiles. This is based on the method proposedby Dietrich et al. [DMS06]. In [DMS06] a tiling ofthe scene using Wang-tiles with PDDs is used to con-struct a set of nested acceleration structures. This al-lows to reuse the distribution of the plants representedby the PDDs on the tiles and the acceleration struc-tures constructed for them, throughout the scene. In[DMS06] the plants that are visualized on each Wang-tile are determined at the visualization’s run-time. Thisonly allows thinning out the population based on theterrains height. In addition [DMS06] uses a pregen-erated fix tile set with fixed radii for each site of thePDD. This usually does not lead to realistic results

because the plants seem to be too even in size andtoo evenly spaced. Therefore, more elaborate simula-tion methods for the tiles and an automatic generationof PDDs on Wang-tiles with varying radii are neces-sary. However, combining multi-level instancing withglobal simulation methods in a way that the simulationyields reusable distributions is challenging. Startingfrom a global simulation of the whole population onehas to map the results to a smaller set of Wang-tiles,that is able to regenerate the initial results as accuratlyas possible.

In [AD06] a method is introduced that works withsets of Wang-tile sets containing distributions withvarying density. These sets of sets can then be usedto generate consistent tilings. However, for large areasone needs many of such small tiles. In addition, byconsidering sets of Wang-tile sets the number of tileslargely increases. The overhead of the system for theconstruction of acceleration structures for rendering inadvance for all tiles is too large.

Therefore, there is a need to develop methods thatcombine instancing techniques using small Wang-tileset with an elaborate ecosystem simulation. Onemethod is introduced by Silva.

3 System overview

The main idea of Silva is using hierarchical multi-level instancing as proposed by [DMS06]. A smallset of Wang-tiles is used to aperiodically tile a largerpolygonal terrain model. Each of the Wang-tiles con-tains a pregenerated PDD where each site of the PDDcorresponds to one plant. This allows to build andreuse nested spatial indexing structures (here kd-trees)to accelerate rendering. On the highest level a kd-treeis constructed over all Wang-tiles of the aperiodicallytiled terrain. Each of its leafs holds an index to thesmaller set of Wang-tiles. For each of the Wang-tilesa kd-tree can be built over all sites on that tile. Withthe overall position in the tiling and the site’s id onthe individual tile the simulation results can be queriedto determine the plant’s acceleration structure for thatplant which will most likely grow on that specify po-sition (multi-level instancing).

Our contributions is a method to create Wang-tileswith PDDs of varying radius for vegetation generationsuch that it enables the generation of seamless tilingswithout global optimization. Wang-tiles with PDDsof varying radius create much more realistic lookingplant distributions since plants in nature are different

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 4: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

sized as well. In addition we introduce a simple graph-based view on the PDDs corner problem and a way todetermine plants in a tile’s corner that can be discardedduring the visualization. Besides the PDD generationwe propose a new highly configurable plant genera-tion system which allows for describing local influ-ences taking the site related abiotic and neighborhoodrelations into account. Fig. 1 gives an overview of theoverall system.

Figure 1: Overview of Silva showing the two mainmodules SilvaSim and SilvaVis, as well as their inputsand outputs.

Silva is split into two modules SilvaSim andSilvaVis: SilvaSim can be used to generate nat-urally looking plant distributions based on arbitraryecological components out of an a-priori distributionon Wang-tiles. To do so, Wang-tile sets with PoissonDisc Distributions (PDDs) are generated with vary-ing radii. Afterwards, a detailed vegetation genera-tion is performed using a highly configurable gener-ation pipeline as preprocessing. To specify param-eters for the simulation SilvaSim uses XML con-figuration files. In addition the ecosystem can be de-scribed using rasterized image or vector graphics fileformats. SilvaSim outputs an ecosystem file con-taining the Wang-tiles, the tiling itself, and the indi-vidual instances of the plants to be used. These filescan be rendered with SilvaVis using a nested kd-tree hierarchy as in [DMS06]. We render the scenewith ray tracing using RTfact [SG08], the ray tracingframework developed at Saarland University. In thenext Section 4 we take a closer look at SilvaSim.Sec. 5 deals with the visualization of the simulation’sresults using SilvaVis.

4 SilvaSim

SilvaSim creates tiles with PDDs, tiles the wholeterrain and determines for each individual site on each

tile of the tiling which plant is most likely to grow onthat position. Using tilings with PDDs has some dis-advantages:

• Plant positions cannot be individually generatedand placed on the whole area but are dependenton the position on the corresponding tiles. Thepositions and the radii of the sites on the tiles arefixed.

• Plant species are dependent on the radii of thesites that are generated on the tile. On one handsmaller plants can be placed in large sites, eitherby choosing generally small plant species for aspecific site or by scaling plants below this sitesradius. However, this yields a smaller density ofthe overall vegetation, because then there is morespace between neighboring sites. On the otherhand it is not possible to place larger scaled plantmodels in smaller sites without an intersection ofneighboring plants.

In contrast to [DMS06], where the specific plantsare determined during the visualization’s runtime,SilvaSim uses an elaborate preprocessing in orderto generate more natural looking distributions basedon the ecological surrounding. A generation of instan-tiatable vegetation using Wang-tiles can in principle beperformed bottom-up or top-down.

• Bottom-up: Starting from a simulation of thewhole area to be covered, the results need to bebroken down to a smaller set of Wang-tiles that isable to regenerate the simulation results.

• Top-down: Starting from the tiles with pregener-ated PDDs the whole area is tiled. Afterwards,the plants need to be selected according to the fixsites’ radii and positions given by the tiling.

The problem of the bottom-up approach is findingthe smaller tile set that is able to regenerate the sim-ulated plant population. This can be seen as a com-pression of an input signal, i.e. the simulation results,where a smaller set of base function, the Wang-tiles,need to be found that are able to reconstruct the in-put signal. However, such compression is a computa-tionally demanding task since all possible PDDs andtile sets need to be examined to determine how goodthey regenerate the simulation results. In addition thisprevents the on-demand generation of the vegetation.

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 5: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

In principle, the selection process of the top-down ap-proach can be performed at run time. SilvaSim usesa top-down approach. Starting from a tiling of thewhole scene, plants for each individual fix site on eachtile are determined.

The module SilvaSim consists of different com-ponents. The core of the system is a highly config-urable pipeline where the user can specify how dif-ferent plants interact with their environment and influ-ence neighboring ones. A rough sketch of the pipelineis as follows:

1. Generation of Wang-tile sets with Poisson DiscDistributions

2. Tiling of the terrain

3. Evaluation of local/abiotic ecological compo-nents

4. Evaluation of biotic environment, i.e. consideringplant neighborhoods

5. Solving the Wang-tiles corner problem

6. Output of the simulation results

Since the generation of aperiodic tilings is wellknown and suitable Wang-tile sets are given (Silvauses a 18 tile Wang-set with six colors) we only givesome more detailed insights into the steps 1, 3, 4 and5 of the generation.

4.1 Generation of Wang-tile sets with PoissonDisc Distributions

As first step in the simulation the Wang-tile sets needto be filled with PDDs. It is important to ensure thatthe Wang-tiles are able to build up seamless tilings,with PDDs that keep their density along the seams.Since we do not consider PDDs with a fix radius butvarying radii for the sites, a relaxation of the PDDsof Wang-tiles using Lloyd’s method [MF92] withVoronoi-diagrams is not possible. Using Apollonius-graphs, i.e. weighted Voronoi regions, is computation-ally expensive. However, the method proposed hereenables to generate suitable tile sets with PDDs thatallow seamless tilings without a global optimization.

The main idea is filling the tiles with respect to theothers in the set. Starting with a PDD on one tile thesites in the edge regions are copied to the tiles thathave the same edge color for that region in the samedirection and next to the tiles edge regions that have

matching opposing edges. This process is shown inFig. 2.

Algorithm 1 gives an overview of the generation ofthe initial PDDs.

Algorithm 1: Generation of seamless Wang-tileswith radii varying PDDs

1 forall the tiles t ∈ T do2 Generate a Poisson Disc Distribution on t3 forall the edge regions e on t do4 copy e on all tiles with the same edge

color in direction e5 and6 copy e next to all edge regions of

matching tile with a matching opposingedge color

7 end8 end

Figure 2: One step of Alg. 1 to generate Wang-tilesets that allow to generate seamless tilings with radiivarying PDDs. The edge region of the first tile in onedirection is copied to all other tiles (only three shown)in the set.

An edge region contains all sites that are at mosttwo times the maximal radii away from the edge. It isimportant to start with tiles that have different colorson all edges. Otherwise a position that is close to e.g.the north edge would influence the south edge of thesame tile. Similar problems occur with small tile setswith only a couple of colors. However, the methodworks well with an 18-tile set with six colors. This setis sufficient for finding a traversal order so that we canstart with tiles that have different colors on all edgesand process the ones that have the same edge colorslater on, when their edge regions were already filled byprocessing the previous ones. Even though we copyedge regions to tiles with the same edge color in thesame direction and thus create a small part that couldpotentially be repetitive along the tile seams in a tiling,these parts are not visible in practice since the edgeregions are extremely small. In addition copied tile

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 6: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

seams and edge regions simply vanish in the natureof the aperiodicity of the tiling. Also note that we donot copy actual geometry of a plant but only positionswhere plants potentially grow. The simulation later ondecides which plant grows on which site on which tilewithin the scene’s tiling.

The corners need a special treatment since we copyoverlapping edge regions and due to the corner prob-lem of Wang-tiles in general. One approach to solveintersections within the corner regions is proposed inSec. 4.4.

4.2 Local soil evaluation

The generation in SilvaSim starts by performing alocal soil evaluation. The goal of the simulation isto determine the plant candidates for each site thatare most likely to grow on their respective locationon a certain tile on a certain tile position within thetiling. Here we work on a global scale consideringeach site in a tiling of the whole scene. In the localsoil evaluation only the abiotic surrounding by alteringindividual growth probabilities is considered. There-fore, SilvaSim computes a scalar growth proba-bility for each site for all plants. Each plant usedin the scene is specified by a set of Propertieswhich describe how plants respond to certain ecolog-ical components. Each Property yields a scalarfloating point number between 0 and 1. Evaluatorslink these Properties to data fields describing theecosystem. These Evaluators are then processedin a pipeline yielding scalar growth probability foreach site for all plants. To start the simulation weneed to specify the ecosystem. Sec. 4.2.1 shows howplant species for the individual scene can be specifiedusing Properties. In Sec. 4.2.2 we show howthe ecosystem can be modeled, whereas finally Sec.4.2.3 shows how the simulation is performed using theEvaluator-Network.

4.2.1 Specification of plant species

Each plant species can be specified usingProperties that describe how a plant speciesreacts to specific ecological components (e.g. height,soil moisture, nitrogen values, etc.). A responsebehavior is described by a floating point numberranging from 0 to 1. This could either be a constantspecified by a Constant-Property for the plantor it could be the result of a complex function e.g.Gauss- or Bezier-Property. One main goal

in the development of SilvaSim was to make ithighly configurable. SilvaSim supports a varietyof Properties and ways to describe them. A sim-ulation can be specified using XML. The followingXML fragment shows the assignment of a MinMaxproperty to one plant specifying a range of moisturelevels where a plant is likely to grow.

<p l a n t><model> . / model / oak . o b j < / model>. . .<p r o p e r t y name=” MinMaxWater ”> <minMax min=

” 0 . 2 ” max=” 0 . 5 ” /> < / p r o p e r t y>. . .< / p l a n t>

Silva offers different Properties that can beused to specify plant models ranging from simple con-stants or value ranges to complex response functions.

4.2.2 Specification of the ecosystem

The ecosystem itself consists of an arbitrary set of datafields, which describe the distribution of the ecologi-cal parameters. These data fields usually are rasterizedgreyscale images or are coming from vector file for-mats. By specifying Evaluators these data fieldscan be linked to the Properties giving a descrip-tion how the data fields are evaluated against the prop-erties. Silva offers many different Evaluators.The RadiusEvaluator determines if a geometri-cal plant model can be scaled to the given sites’ size ona specific location. The MinMaxEvaluator allowsthe specification of value ranges to specify if plants areviable in a certain parameter range, e.g. the height ormoisture level. The FunctionEvaluator can beused to evaluate response Function-Propertiesbased on the prevailing ecological parameters. Thisway e.g. a thinning of the populations density canbe described based on height, nutrition levels or soilmoisture. Similar the GradientEvaluator allowsfor describing thinning out of certain plants by speci-fying a linear gradient that reduces a plant’s viabilityin a certain region.

The Properties to be accessed during the sim-ulation are linked to a data field using the propertiesname within the Evaluators. The following XMLfragment shows the specification of a data field anda simple evaluator which links the data field to theplant’s Property named MinMaxWater

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 7: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

<d a t a f i e l d name=” W a t e r f i e l d ”> . . / . . /R e s s o u r c e s / dems / campus / w a t e r . png< /d a t a f i e l d>

<MinMaxEvaluator l e t h a l =” t r u e ” optimum=”f a l s e ”><d a t a f i e l d>W a t e r f i e l d< / d a t a f i e l d><p r o p e r t y>MinMaxWater< / p r o p e r t y>. . .

< / MinMaxEvaluator>

This MinMaxEvaluator links the PropertyMinMaxWater to the data field Waterfield given bya png file. The Property MinMaxWater de-scribes a range of moisture levels individually foreach plant. In the process of the evaluation of theMinMaxEvaluator the system looks up the inter-polated moisture level given by our data field for thecurrent site’s position and checks for each plant if itis within the range of the Property given by Min-MaxWater. Since the attribute optimum is set tofalse, we do not compute the distance to the theoret-ical optimum given by the average min/max value ofthe Property but simply yield a probability of either0 or 1. Since the attribute lethal is set to true, weallow for a probability of 0 to become effective and re-move all plants not in range from the set of possiblecandidates.

4.2.3 Local simulation

After we have specified the ecosystem by providingtwo XML files we can begin with the simulation.Starting from a global tiling of the scene, SilvaSimprocesses each individual site of the PDD on eachtile of the tiling. For each site SilvaSim altersthe scalar growth probabilities by evaluating the eval-uator pipeline for all individual species in parallel.In order to compute a new growth probability, con-secutive nodes within the evaluator pipeline have ac-cess to the results of all predecessors and can inter-pret these growth probabilities as a series of multi-plications. However, simply multiplying consecutiveprobabilities might lead to a system that is too ero-sive, meaning that too many plants are discarded. Inaddition, this makes it hard for the user to predicthow the system reacts to slight changes of the datafields. Additionally, the range of the growth probabil-ities might be highly varying. Therefore, SilvaSimoffers a NormalizeEvaluator, which normalizesthe scalar growth probabilities to a range between[0, 1]. Since we have to normalize using the prob-abilities of all species and all sites and since we doprocess in parallel we have to use a barrier in theNormalizeEvaluator to ensure, that all pipelines

Figure 3: Exemplary pipeline to determine plantsgrowth probabilities for each site on each tile of thetiling based solely on the abiotic surrounding

for all sites have been evaluated up to that evalua-tor. We now normalize the growth probability used inall consecutive Evaluators by using the maximaloverall growth probability computed up to that point.

A single Evaluator that evaluates to zero leadsto a growth probability of zero for the whole pipeline.One alternative to the simple multiplication approachis the representation of the growth probabilities of con-secutive evaluators as the length of a multidimensionalvector. Each component of the vector is the outcomeof one individual evaluator in the pipeline. This waythe system is less erosive since a zero within the vectordoes not lead to a length of zero for the whole vector.However, some parameters of the ecosystem are lethalno matter what. The user can decide if the results ofconsecutive nodes are evaluated by means of multipli-cation or as vector length and if single parameters arelethal or not. Fig. 3 shows an exemplary pipeline.

After the evaluation of the local soil factor each sitehas a list of potential plants to be chosen and theirgrowth probabilities respectively.

4.3 Plant neighborhoods

Right now the list of potential plants for each site andtheir growth probabilities are solely based on the lo-cal abiotic components but not on the plant’s neigh-borhood. SilvaSim offers a method to take the in-fluences of the neighborhoods, i.e. the biotic compo-nents, into account. As in FON-Models this is done

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 8: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

using a distance weighted approach.The aim is to select the plant candidates that are

likely to grow in the surrounding of the neighboringones. Let’s assume each plant can have a positive ornegative influence on each other plant by distributingdistance weighted probabilities to its neighborhood.

Note, that it is important where and with whichplant from the list to start. A solution to this problemwould have to take a look on all possible combinationsof sites and list candidates coming from the local sim-ulation. Checking all possible solutions is too compu-tationally intensive. Therefore, SilvaSim offers anapproximation approach. The idea is to sample the setto determine those plants which are most of all deter-mined by the results of the local soil evaluation anduse these plants as starting points to distribute distanceweighted probabilities. Algorithm 2 shows the core ofthe method.

We reduce the problem to smaller grid cells sinceprocessing the whole population is computationallydemanding for very large scenes. In the first step anuniform, user-defined grid for the whole tiling is cre-ated. Afterwards one of the grid cells is chosen ran-domly. All plant positions that lie within the cell areexamined by determining how uniquely they were de-fined by the local soil evaluation. This is our startingsite to distribute distance weighted probabilities. Todo so we look at all sites sp in the cell that have notalready been processed, i.e. that are not fixed (see Alg.2, lines 5–8). For each sp we determine the plant can-didate pli which has the maximal growth probabilitybased on the results of the local evaluation. With thismaximal growth probability we determine the minimaldifference between all other growth probabilities of allother plant candidates plj for that site. We computethis value for all sites. The site with the maximal min-imal difference value within the cell will be set fixedto the plant that is most likely to grow there. It is mostuniquely defined by the local soil evaluation. Becausewe have set it fixed it can no longer be altered by anyfurther neighborhood operations.

Since the plant species for that site is now knownand fix, the plant’s region of influence can be com-puted. The plant’s FON-radius is described in theXML file and is now weighted by the scale factor ofthe current site. This radius can be used to deter-mine the neighboring positions. To find the neigh-boring sites we utilize the already created grid struc-ture. Within this neighborhood the influence of thefixed plants can be distributed to the plant species not

Algorithm 2: Incorporating the biotic surround-ing. Method to model plant neighborhoods withinSilvaSim

1 ...2 Grid = generateUserDefinedGrid(gridSizeX,

grideSizeY);3 while Not only fixed sites were selected in the last

couple of iterations do4 Cell = grid.chooseRandomCell();5 forall the Sites sp ∈ Cell that are not fixed do6 Find plant pli with maximal growth

probability at sp7 forall the plants plj ∈ PlantPopulation,

pli 6= plj do8 Determine

min(sp.getProbability(pli)−sp.getProbability(plj)) andstore this values at pcert

9 end10 Store site sp with maximal pcert as spmax

11 end12 plmax = spmax.getMostLikelyP lant();13 spmax.setP lantF ix(plmax);14 Neighbourhood =

grid.getNeighbourhood(spmax,plmax.getRadiusComose());

15 forall the sites spneigh ∈ Neighborhood do16 Distribute influence of plmax to growth

probabilites of the plants at spneigh17 end18 end19 ...

fixed yet. (See Alg. 2, line 14ff)This method can be applied until the distribution

stabilizes, i.e. when more or less all sites are set fixed.Since we start by randomly choosing a grid cell wehave to stop when we have only selected fixed sitesin the last couple of iterations. This termination cri-terion, i.e. the number of iterations where only fixedsites were selected, is user-defined. In addition, sincewe only approximate the correct results we can usethis approach for several passes to come closer to theoverall correct result. In each new pass all plants eventhe ones that were set fixed in the last pass can be al-tered. We can terminate when the distribution moreor less stabilizes that means the plant candidates withthe maximal growth probabilities for each site did notchange in the current pass or use a user defined up-

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 9: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

((a)) ((b)) ((c))

Figure 4: Graph-based visualization of the intersec-tions across tiles (corner problem): ((a)) The cornerproblem of Wang-tilings; ((b)) intersecting sites acrosstiles and ((c)) mapping to a graph.

per bound. In practice specifying a small upper boundusually is sufficient since nature is highly varying any-ways and the benefit from having it run more passed isnot noticeable in the rendered image.

4.4 Solving the Corner Problem

The algorithm to fill the tiles with PDDs yields tilesthat have no intersecting sites along the tiles edgeswhen used in the creation of an aperiodic tiling. How-ever, due to the copy operations of the tile edges andthe corner problem of the PDDs on Wang-tiles in gen-eral, intersections in the corner regions can occur (seeSec. 4.1). Fig. 4 ((a)) shows four tiles and the inter-sections (for the corner problem). Some intersectingsites already have been eliminated, i.e. they have noplant model attached, by the simulation and hence arenot displayed. However, it might be the case that someintersecting sites remain.

Intersecting sites (see Fig. 4 ((b))) can be describedas a graph G = (V,E) with an edge between each in-tersecting ones (see Fig. 4 ((c))). We start by creatingsuch a graph for all intersecting sites within each cor-ner region of the tiling. The goal is to delete nodesfrom the graph until all remaining nodes have a degreeof zero. Right now each site has no or a single plantmodel attached that is most likely to grow there. To re-move intersections we want to keep the nodes, whichrepresent sites that have plants attached that are mostlikely to grow and cover a large area.

During visualization the deleted nodes from thegraph will get no plant model attached and thus willnot be visualized. We take care of intersections by notdeleting them from the tile in terms of trying to find aglobally optimal tile set but by not displaying them atrun-time. To map this problem to our graph each node

gets a weight w(a) based on the following function:

w(a) = p(a) ∗ radius(a), a ∈ V

Where p(a) is the growth probability of the plant as-signed to the site a. This probability is scaled by theradius of the site to preserve a dense coverage of thevegetation. A correct solution to the problem wouldbe a new graph G′, with:

G′ =(V ′, ∅),

In the graph, each node in V ′ ⊂ V has a degree of zeroand thus has no intersection with any other node. Asolution is considered optimal if there exists no othergraph G′′ = (V ′′, ∅) where the sum of all the weightsw(a) is larger than the sum of weights in G′ = (V ′, ∅).

6 ∃V ′′ :∑

v′′∈V ′′

w(v′′) >∑v′∈V ′

w(v′)

Hence, we are looking for a configuration of non-intersecting nodes where the covered area and thegrowth probabilities are maximal. In order to maxi-mize this value without testing all possible solutionsof active and inactive sites SilvaSim uses a proba-bilistic approach. Therefore, an extended node weightwext is computed.

wext(a) =deg(a)

maxdeg(V )

· (1− w(a))

·∑

v∈Vadj(a)

w(v),

where Vadj(v) = w ∈ V |(v, w) ∈ E

The first part deg(a)maxdeg(V ) considers the number of inter-

sections within the direct neighborhood. The larger thedegree of the node the more sites it intersects. Hence,we want to remove nodes first that potentially intersecta lot of other nodes because it is more likely that theremaining nodes are then not intersecting. The secondpart of the weighting function (1 − (w(a)) takes thecurrent growth probability of this node into account.We want to remove the nodes that are not very likelyto grow at this position and do eventually cover onlya small area. The following sum over the weight ofthe direct neighborhood, i.e. the adjacent nodes, takesthe growth probability and the coverage of the neigh-boring plants into account. We want to remove thosenodes that intersect with sites which are very likely togrow and provide a good coverage.

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 10: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

The algorithm starts by deleting the node wherethis weight is maximal. After the deletion, all othernodes now having a degree of zero are deleted fromthe graph. These nodes and thus their respective sitesin the PDD no longer intersect any other node andthis site and can be rendered. The algorithm continuesuntil all nodes have a degree of zero and accordinglyno node is left for each graph.

4.5 Simulation output

The results of the simulation with SilvaSim can nowbe written to a file. This file contains the tile set withthe PDDs on it. To allow referencing these sites lateron, each site of each PDD on each tile gets assigned asite’s ID. Next this file stores the overall tiling of thescene and an array containing the plants as ID mostlikely to grow according to the generation results foreach site ID for each tile of the tiling. These files canthen be visualized using the component SilvaVis.

In addition, to allow for a more user-friendlyquicker feedback from the simulation the results areoutput to a svg or png file. This later on enables thedesigner of the ecosystem to show the results in othermodeling tools as a texture on top of the terrain. Thisway he is able to get a first impression on the overallappearance and the effects of certain parameters of thesimulation pipeline on the vegetation more directly.

5 SilvaVis

In this section a method to visualize the ecosystemsthat were generated by SilvaSim is introduced. Theoutput of SilvaSim is a file that contains a Wang-tile set with PDDs on each tile, a tiling of the wholearea and a mapping of tile positions in the tiling andtheir individual site IDs to plant models. Since thevegetation is given on Wang-tile sets complete dis-tributions can be reused and their according accel-eration structures only need to be constructed once.SilvaVis visualizes these files using ray tracing. Todo so we follow the approach proposed by Dietrich etal. [DMS06]. We do not apply any geometrical sim-plification to our tree models but use raw triangle data.The foliage in the tree are quads with alpha mappedleaf textures. An average tree consist of 200k trian-gles. The implementation is based on RTfact [SG08],the ray tracing framework by Saarland University. Forthe visualization RTfact was extended with all neces-

sary spatial acceleration structures as well as methodsfor their construction and intersection. This results ina couple of nested kd-trees, which were implementedusing RTfact’s unique template architecture.SilvaVis constructs a hierarchy of kd-trees. On

the highest level a 2D kd-tree is built over all tiles ofthe tiling and the terrain. Therefore, the terrain is tiledwith the Wang-tiles based on the tiling coming fromSilvaSim. With this tiling the ground primitives ofthe terrain are subdivided in patches of the same sizeas the Wang-tiles (see Fig. 5). For the ground prim-itives of the terrain a regular kd-tree is constructed.This leads to leaf primitives that hold a reference tothe kd-tree of the ground primitives and a pointer toone Wang-tile of our set. During the construction ofthis acceleration structure the subdivision of the leafprimitives, that are the tiles and the terrain primitives,is only performed along the x- and y-axis. The innernodes store the minimal and maximal heights of thechildren. The height of a leaf node is computed bythe height of the terrain plus the height of the largesttree in the overall population. This information is usedduring the traversal to hierarchically skip larger partsof the terrain (see [DMS06]).

The leaves of this acceleration structure containnodes that store a pointer to the respective Wang-tileand an acceleration structure for the ground primitives,here a kd-tree. (see Fig. 6).

Each Wang-tile contains a PDD, which represent theplant distribution. Since each of the plant positions onthe tiles is fixed, acceleration structures, i.e. kd-trees,for the sites can be constructed (see Fig. 6). The sub-division in the kd-tree construction for the PDDs onthe tiles only takes place along the x- and y-axis aswell. Because we only subdivided along the x- and y-axis the tree positions can be shifted in the z-directionaccording to the terrain they are mapped to. To decidewhich plant model to visualize on a tile at a specific lo-cation we can use the ID of the intersected site and therelative position of the intersected tile in the tiling bothdetermined by traversing the upper two of the nestedacceleration structures.

We start the intersection test for a ray by traversingthe kd-tree on the highest level. We can skip thoseparts of the terrain that are not within the view frus-tum or where the ray is completely above or below thecell’s extent in z-direction. When we arrive at a leafprimitive, the deeper structures need to be traversed.The leaf primitives contain a reference to the kd-tree ofthe Wang-tile from our set and a kd-tree for the ground

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 11: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

Figure 5: TerrainTile Kd-tree with a 2× 2-tiling. Leaf nodes store a reference to a Wang-tile (W) of the tile setand a kd-tree for the terrain ground primitives (T) of the area covered by the tile

Figure 6: Lazy 2D kd-tree of a Wang-tile built overthe varying radii PDD. The sites of the PDD can bemapped to arbitrary shaped terrain.

primitives. Additionally by hitting a leaf we knowwhat tile we have hit in the tiling (TilePosUV). Fromthere we traverse both acceleration structures indepen-dently and combine the results.

We load the respective kd-tree according to the ref-erenced Wang-tile. This is the kd-tree that is built overall sites of the PDD. Therefore, we transform the rayfrom the global space to the local space of the Wang-tile and start traversing. Keep in mind that this tree isonly a 2D-tree, meaning that it was subdivided onlyalong the x- and the y-axis because the individual sites

Figure 7: A way to determine the explicit plant in-stances used for a Wang-tile in the tiling. Based on theTilePosUV and the SiteID the concrete PlantIDused at this position can be requested from the simu-lation results. This PlantID can be used the requestthe plant model’s acceleration structure.

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 12: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

can be mapped to arbitrarily shaped terrain. The siteson the Wang-tiles are only placeholders for the plantmodels. We possibly arrive at a leaf primitive of thisinner kd-tree which is a site storing a SiteID. Withthis SiteID the kd-tree of the plant model that isused at this individual location needs to be loaded.The process to determine the concrete species for thesite is shown in Fig. 7. Using the position of thetile (TilePosUV) in the tiling and the ID of the site(SiteID) the concrete ID of the plant species can berequested from the simulation results of SilvaSim.This results in a PlantID that can be used to requestthe instance of the acceleration structure of the treemodel. As in [DMS06] we use a regular kd-tree forthe tree models. To traverse this kd-tree we transformthe ray from the Wang-tile space to the object space ofthe tree model. Therefore, we shift the ray accordingto the z-displacement of the tree based on the posi-tion on the terrain (see [DMS06]). Additionally, weslightly rotate the ray (and thus the plant model) basedon pseudo-random rotation value computed from theSiteID and the TilePosUV. The intersection resultof the ground primitives and the results of the intersec-tion tests from the Wang-tile now can be combined todetermine the closest hit point.

6 Results

Since the plausibility of a natural distribution can-not be determined without considering real datasets,which were not available, Fig. 8 shows only the re-sult of the simulation. Different colors represent dif-ferent species. The ones with different shades ofgreen are conifers. The rest are different broadleafspecies. Note, that no repeating patterns are visible.Fig. 9 shows some images that where rendered us-ing SilvaVis. The figures show two different testscenes. One is a model of the campus at Saarland Uni-versity (UniSB) and the other one is a DEM of thePuget Sound data set [USG10] (PugetSound).

Fig. 9 ((b)) shows the sample scene UniSB with a10×10 tiling. Fig. 9 ((c)) shows the complexity of theplant models (about 160k triangles per tree).

6.1 Benchmarks

As hardware platform for the benchmarks a sharedmemory system with two Intel Xeon E5520 CPUs with24GB RAM running Windows7 was used. Table 1shows the run times for the generation of the two testscenes with SilvaSim. Since these times are not en-tirely dependent on the scene’s size but on many fac-tors like, e.g. the depth of the evaluator pipeline, thebenchmarks shown only give an idea of the magnitudeof typical run times. Please also note, that SilvaSimwas not especially optimized or parallelized since thefocus on the simulation was more on its configurabil-ity.

Table 2 shows the run times of the visualizationwith SilvaVis. Smaller tiles usually lead to bet-ter render times for most viewing angles. This waythe traversal can be stopped in higher levels within thenested acceleration structure. This allows for fasterrender times even for very large scenes. In contrast to[DMS06] where an almost constant run time for largerscenes was achieved once the systems was saturated bya certain scene complexity this is not true for Silva.Once the scene size is large enough the system is ableto skip larger parts of the scene by simply traversingthe first acceleration structure over the tiles. As in[DMS06] the run time does not increase linearly withthe scene’s size within Silva. Even though RTfactgenerally performs better than the Ray Tracing Sys-tem OpenRT, which was used for [DMS06] we couldnot achieve the same render times. The reason for theoverall difference compared to [DMS06] is that RTfacthas a problem with the evaluation of the alpha mappedleaf textures of the plant models. In case a ray hitssuch a leaf, RTfact needs to stop traversing, switchover to the shader code and start generating entirelynew rays in case of transparency. This is a design de-cision within a ray tracer whether it does perform someshading, i.e. the lookup of the alpha values within thetraversal, or not. In the upcoming releases of RT-fact a tighter coupling between shading and travers-ing was planned. Due to the framework characterand the generic programming paradigms used by RT-fact in the current version this could not be realizedtransparently inside an intersector without losing someof its framework character which enables simple ex-change of parts of the underlying acceleration struc-ture. However, in contrast to [DMS06] which usesOpenRT and performs better we decided to use RT-fact since it was better supported at the time and theacceleration structure nestings could be implemented

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 13: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

Figure 8: Simulation results of the scene UniSB (5km× 5km with a 10× 10 tiling). Different colors representdifferent species.

((a)) ((b))

((c)) ((d))

Figure 9: Renderings from the test scenes PugetSound and UniSB: ((a)) PugetSound 40km × 40km (flight) ;((b)) UniSB 3km× 3km (birds eye view); ((c)) Puget Sound (close up) and ((d)) UniSB (flight).

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 14: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

Scene Size #Tiles #Evaluators #Active plants TimeUniSB 3km × 3km 10× 10 7 29003 16 sec.UniSB 6km × 6km 10× 10 7 113481 42 sec.UniSB 9km × 9km 10× 10 7 252299 89 sec.

PugetSound 10km × 10km 80× 80 8 323565 16 sec.PugetSound 20km × 20km 100× 100 8 1262512 60 sec.PugetSound 40km × 40km 200× 200 8 4994147 228 sec.

Table 1: Benchmarks of SilvaSim with four test scenes (single threaded).

Scene Size Tiles #Plants Tris total Time per FrameUniSB 3km × 3km 5× 5 35768 5.77 · 109 3.14 sec.UniSB 3km × 3km 10× 10 36944 5.96 · 109 3.08 sec.

Puget Sound 20km × 20km 100× 100 1262512 2.04 · 1011 33.7 sec.Puget Sound 40km × 40km 200× 200 4994147 8.06 · 1011 53.91 sec.

Table 2: Benchmarks of SilvaVis averaged from 300 frames (without shadows).

more transparently. However, a quick interactive pre-view of the whole scene was realized using simplerimpostors for the complex tree models, allowing inter-active feedback of the system as well as high-qualityrendering when needed. Rendering simple impostorsthe system is running at approximately 10 Hz evenfor the large scenes. Without the alpha map evalua-tion the same constant run time holds for larger scenesin Silva as well. Especially important is the mem-ory footprint of the SilvaVis. Even for the largertest scenes 40km×40km the memory consumption issmaller than 3 GB.

6.2 Conclusions and Future Work

Silva allows generating and visualizing large vege-tated areas using multi-level instantiation on reusableWang-tiles. Based on a highly configurable pipelinearbitrary ecological components can be considered.Using an approximating multi-pass approach evenplant neighborhoods and their biotic interaction canbe modeled. The visualization component SilvaVisenables rendering of scenes with fast render times anda small memory footprint. Even though SilvaSimoffers a way to get a fast feedback from the simulationusing the svg and png output, specifying simulationsusing XML is not user-friendly. In a next step a GUIto specify the simulation’s parameters should be devel-oped. To further enhance realism it is planned to takemore vegetation levels, from trees to ground coverage,into consideration during the generation process. An-other topic could be to improve the run time of thegeneration using parallelization techniques.

A special problem of the visualization of high fre-

quency complex models like trees is aliasing. Usinglevel-of-detail(Lod) methods not only reduces alias-ing artifacts but can improve render times as well.Therefore, LoD methods for Silva should be imple-mented. Right now only oversampling is supported.However, the models are so geometrically detailedthat even over sampling levels of 16 or 32 are notsufficient but already reduce the render times signifi-cantly. Therefore, more elaborate methods need to beapplied. Suitable methods are R-LODs [YLM06], i.e.storing LoD-levels with the kd-trees structure, Volu-metric Textures [Ney98], i.e. a volumetric represen-tation of the leaves, or sample caching strategies like[DS07]. We currently focus on using voxel or im-age based representation for more distant views like[BN12]. In addition, to further increase realism moreadvanced lighting methods, like HDR could be imple-mented.

References

[AD05] Monssef Alsweis and Oliver Deussen, Model-ing and Visualization of symmetric and asym-metric plant competition, NPH (Pierre Poulinand Eric Galin, eds.), Eurographics Associa-tion, 2005, pp. 83–88, ISBN 3-905673-29-0.

[AD06] Monssef Alsweis and Oliver Deussen, Wang-Tiles for the Simulation and Visualizationof Plant Competition, Advances in Com-puter Graphics (Tomoyuki Nishita, QunshengPeng, and Hans-Peter Seidel, eds.), Lec-ture Notes in Computer Science, vol. 4035,Springer Berlin / Heidelberg, 2006, pp. 1–11,ISBN 978-3-540-35638-7.

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 15: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

[BAMJ+11] Bedrich Benes, Michel Abdul-Massih, PhilipJarvis, Daniel G. Aliaga, and Carlos A.Vanegas, Urban ecosystem design, Sympo-sium on Interactive 3D Graphics and Games(New York, NY, USA), I3D ’11, ACM, 2011,pp. 167–174, ISBN 978-1-4503-0565-5.

[BH00] Uta Berger and Hanno Hildenbrandt, A newapproach to spatially explicit modelling offorest dynamics: spacing, ageing and neigh-bourhood competition of mangrove trees,Ecological Modelling 132 (2000), no. 3, 287–302, ISSN 0304-3800.

[BN12] Eric Bruneton and Fabrice Neyret, Real-timeRealistic Rendering and Lighting of Forests,Special issue: Proceedings of Eurographics2011, vol. 31, Blackwell Publishing, May2012, pp. 373–382.

[Cry] Crytek, Cryengine 3,http://freesdk.crydev.net/, Last visitedFebruary, 24th 2012.

[CSHD03] Michael F. Cohen, Jonathan Shade, StefanHiller, and Oliver Deussen, Wang Tiles for im-age and texture generation, SIGGRAPH ’03:ACM SIGGRAPH 2003 Papers (San Diego,CA, USA), ACM, 2003, pp. 287–294, ISBN1-58113-709-5.

[DCDS05] Andreas Dietrich, Carsten Colditz, OliverDeussen, and Philipp Slusallek, Realisticand Interactive Visualization of High-DensityPlant Ecosystems, Natural Phenomena 2005,Proceedings of the Eurographics Workshopon Natural Phenomena (Dublin, Ireland), Au-gust 2005, pp. 73–81, ISBN 3-905673-29-0.

[DE10] Digital-Element, Worldbuilder, 2010,www.digi-element.com/wb/, Last visitedApril 2nd, 2010.

[DH06] Daniel Dunbar and Greg Humphreys, A spa-tial data structure for fast Poisson-disk sam-ple generation, SIGGRAPH ’06: ACM SIG-GRAPH 2006 Papers (Boston, MA, USA),ACM, 2006, pp. 503–508, ISBN 1-59593-364-6.

[DHL+98] Oliver Deussen, Pat Hanrahan, Bernd Lin-termann, Radomır Mech, Matt Pharr, andPrzemyslaw Prusinkiewicz, Realistic model-ing and rendering of plant ecosystems, SIG-GRAPH ’98: Proceedings of the 25th annualconference on Computer graphics and inter-active techniques (Orlando, FL, USA), 1998,pp. 275–286, ISBN 0-89791-999-8.

[DL05] Oliver Deussen and Bernd Lintermann, Dig-ital Design of Nature: Computer Generated

Plants and Organics, vol. 1, Springer-VerlagBerlin Heidelberg, 2005, ISBN 354027104X.

[DMS06] Andreas Dietrich, Gerd Marmitt, and PhilippSlusallek, Terrain Guided Multi-Level In-stancing of Highly Complex Plant Popula-tions, Proceedings of the 2006 IEEE Sympo-sium on Interactive Ray Tracing (Salt LakeCity, UT, USA), 2006, pp. 169–176, ISBN 1-424-40693-5.

[DS07] Andreas Dietrich and Philipp Slusallek,Adaptive Spatial Sample Caching, Proceed-ings of the IEEE/EG Symposium on Inter-active Ray Tracing 2007, September 2007,pp. pp. 141–147, ISBN 1-424-41629-9.

[E-o10] E-on Software - Solutions for Natural3D Environments, Vue, 2010, www.e-onsoftware.com, last visited: December 2nd,2012.

[Fac10] Faculty of Forest Sciences and Forest Ecol-ogy Science, 2010, www.grogra.de/, last vis-ited July 21st, 2011.

[IDV] IDV, Speedtree, South Carolina, U.S.A.,www.speedtree.com, last visited November24th, 2011.

[Jon06] Thouis R. Jones, Efficient generation ofpoisson-disk sampling patterns, Journal ofgraphics, gpu, and game tools 11 (2006),no. 2, pp. 27–36, ISSN 2151-237X.

[LD08] Ares Lagae and Philip Dutre, A Compari-son of Methods for Generating Poisson DiskDistributions, Computer Graphics Forum 27(2008), no. 1, pp. 114–129, ISSN 1467-8659.

[MF92] Michael McCool and Eugene Fiume, Hier-archical Poisson disk sampling distributions,Proceedings of the conference on Graph-ics interface ’92 (San Francisco, CA, USA),Morgan Kaufmann Publishers Inc., 1992,pp. 94–105, ISBN 0-9695338-1-0.

[Ney98] Fabrice Neyret, Modeling, Animating andRendering Complex Scenes using VolumetricTextures, IEEE Transactions on Visualizationand Computer Graphics 4 (1998), no. 1, 55–70, ISSN 1077-2626.

[Ope07] OpenRT-Universitat des Saarlands, Openrt-realtime ray tracing project, 2007, openrt.de,last visited: June 20th, 2011.

[Ope10] Openalea, ope-nalea.gforge.inria.fr/dokuwiki/doku.php,2010, last visited: January 25th, 2012.

urn:nbn:de:0009-6-36322, ISSN 1860-2037

Page 16: Generating and Rendering Large Scale Tiled Plant Populations · In [AD06] a method is introduced that works with sets of Wang-tile sets containing distributions with varying density

Journal of Virtual Reality and Broadcasting, Volume 10(2013), no. 1

[PKGH97] Matt Pharr, Craig Kolb, Reid Gershbein, andPat Hanrahan, Rendering complex scenes withmemory-coherent ray tracing, SIGGRAPH’97: Proceedings of the 24th annual confer-ence on Computer graphics and interactivetechniques (Los Angeles, CA, USA), ACMPress, 1997, pp. 101–108, ISBN 0-89791-896-7.

[PL90] Przemyslaw Prusinkiewicz and Aristid Lin-denmayer, The Algorithmic Beauty of Plants,Springer-Verlag, New York, 1990, ISBN 0-387-97297-8.

[SG08] Philipp Slusallek and Iliyan Georgiev, RTfact:Generic Concepts for Flexible and High Per-formance Ray Tracing, Proceedings of theIEEE / EG Symposium on Interactive RayTracing 2008 (Marina del Rey, CA, USA)(Robert J. Trew, ed.), IEEE Computer Soci-ety, Eurographics Association, IEEE, 2008,pp. 115–122, ISBN 978-1-424-42741.

[USG10] USGS and The University of Wash-ington, Puget Sound Terrain Data,/www.cc.gatech.edu/projects/large-models/ps.html, 2010, last visited: March

27th, 2010.

[YLM06] Sung-Eui Yoon, Christian Lauterbach, andDinesh Manocha, R-LODs: fast LOD-basedray tracing of massive models, The VisualComputer: International Journal of ComputerGraphics 22 (2006), no. 9, 772–784, ISSN0178-2789.

CitationMartin Weier, Andre Hinkenjann, Georg Demme,and Philipp Slusallek, Generating and RenderingLarge Scale Tiled Plant Populations, Journal ofVirtual Reality and Broadcasting, 10(2013), no. 1,June 2013, urn:nbn:de:0009-6-36322,ISSN 1860-2037.

urn:nbn:de:0009-6-36322, ISSN 1860-2037