real-time rendering of dynamic vegetation
DESCRIPTION
Real-time Rendering of Dynamic Vegetation. Alexander Kusternig Vienna University Of Technology. Overview. Physically based lighting Wind Animation Convincing pictures at high frame rates. Physically based lighting. The difficulties of leaf rendering. Geometric complexity - PowerPoint PPT PresentationTRANSCRIPT
Real-time Rendering of Dynamic Vegetation
Alexander KusternigVienna University Of Technology
Overview
• Physically based lighting• Wind Animation• Convincing pictures at high frame rates
Alexander Kusternig 2
Physically based lighting
The difficulties of leaf rendering
• Geometric complexity• Translucency and indirect lighting• Detailed microstructure
Leaf Rendering State of the Art
• Much work done on LODs
• Leaves often simplified as oriented billboards
Alexander Kusternig 5
• PRT techniques– Impressive results– Create huge data sets– Static geometry
Our Method [1]
• Photographing leaves– Diffuse illumination– Translucency color
• 3D scanning– Actual leaf geometry
• 4 Textures per leaf side:
Diffuse Color Normal HL2 Map Translucency
Our Method [2]
Our Method [3]
• HL2 texture maps– PRT technique– To calculate translucency
• The “Half Life 2” basis– Works in tangent space– Local per leaf– No costly transformation– Only 3 coefficients
8
• Direct Illumination:– Cook-Torrance Specular
Model– Normal Mapping– Shadow Mapping
• Indirect Illumination:– Pre-baked Ambient
Occlusion– Per vertex
Our Method [4]
Wind animation
Animation State of the Art [1]
• Bone animation– Procedural generation– Physical models
• Pre-baking key frames and interpolating
• Mass spring models
Alexander Kusternig 13
Animation State of the Art [2]
Fastest and most flexible implementationscurrently used by games
• Per Vertex displacement• Weights hand-painted• Many limitations exist:
• Not suitable for strong wind• Only possible for trees with 1 long straight stem
Our Method [1]
• Take best from both worlds– Physically based branch bending– Fast per vertex animation
• Animation completely on the GPU– Animation data baked into vertex streams– Per-branch data baked into textures– Motion data from noise textures
Alexander Kusternig 15
• Computation of a branching hierarchy
Our Method [2]
– Suitable for all plants– Branches calculated
automatically from model
– Weights propagated through hierarchy
– Up to 4 levels
Our Method [3]
• User-friendly!– Use model data
from standard tree generation package (Nat FX, XFrog...)
– Tweakable by adjusting a few parameters
• Advantages:– Completely handled by GPU– Scales linearly with number of vertices– Non-linear bending of branches– Every leaf is animated individually
Our Method [4]
Implementation
Implementation [1]
State of the art rendering pipeline:• DX10• HDR pipeline
– Tonemapper tuned for post-processing
• Real-time illumination changes– Preetham Skylight model– Shadow mapping– Light shafts
Alexander Kusternig 20
Implementation [2]
Performance:• ~70000 Triangles for branches• ~12000 Leaves• >300 MB of static textures• 80-100 FPS on Geforce 8800 GTX
Alexander Kusternig 21
Future Work
• Sophisticated level of detail rendering• Grass rendering• Tree generation
Alexander Kusternig 22
Alexander Kusternig 23
Thanks foryour attention
Real-time Rendering of Dynamic Vegetation
Alexander KusternigVienna University Of Technology