Vegetation

advertisement
4.11.TREES AND VEGETATION
Rendering of trees and vegetation
Rendering flora
Video not available in on-line slides
Grass
Grass is typically rendered
using (randomly) placed
intersecting quads which
are texture mapped and
rendered with an alpha
test.
The grass quad are
crossed (using a star-like
configuration) to ensure
good visual quality
independent of the line of
sight.
Grass
Different alpha/depth tests can
be used at runtime to suitably
render a clump of grass quads
and provide the appearance of
densely packed grass.
Grass
In a vertex shader the top
two vertices of each quad
can be animated (using a
combination of sinusoidal
waves) to provide a natural
looking wave modelled
motion due to wind effects.
By having separate
animation parameters for
each cluster or clump of
grass, more chaotic (i.e.
natural) behaviour can be
introduced.
Grass
When lighting the grass, the quad’s normal may also be updated to reflect
the grass movement.
Alternatively, the colour change can be simulated by directly modifying the
rendered colour based on the oscillations.
Rendering trees
Video not available in on-line slides
Trees
At a distance, a tree can be
adequately rendered using a
billboard or imposter.
Up close, trees are typically
separated into two different parts:
•
solid component of the tree
(trunk and branches)
•
foliage or leaves.
The trunk and the branches are
represented using a triangle mesh.
Leaves are represented using an
image of a leaf group textured using
a quad.
Minor branches
can be
approximated
by simple
polygon strips
Leaves are
rendered as
texture
mapped
quads
More
sophisticated
tree rendering
deals with issues
such as
silhouette
clipping
Or accurate leaf
shadowing /
lighting
Directed reading regarding trees and vegetation
Directed reading:
• Read GPU Gems - Rendering
Countless Blades of Waving Grass –
for coverage of how to render grass
• Read Creation and Rendering of
Realistic Trees – for an early paper on
generating trees
• Read GPU Gems 3 - Next-Generation
SpeedTree Rendering – for an
exploration of current tree rendering
approaches
Summary
Today we
explored:
 Overview of
vegetation
rendering
 Overview of
tree rendering
Download