Art-Based Rendering of Fur, Grass, and Trees Michael A. Kowalski, Lee Markosian, J.D.

Art-Based Rendering
of Fur, Grass, and
Michael A. Kowalski, Lee Markosian, J.D.
Northrup, Lubomir Bourdev, Ronen
• Introduction
• Prior Work
• Method
• Results / Conclusion
• “Any art student can rapidly draw a
teddy bear or a grassy field. But for
computer graphics, fur and grass are
complex and time consuming.”
• The Problem
– How can we use
current 3D
graphics to create
the effectiveness
and persuasiveness
or an artist’s few
stroke drawings?
• Motivation
– Expand 3D graphics by using techniques
for depicting complexity from art and
• Goals
– Give designer of a scene control over the style
of rendering.
– Ease the burden of modeling complex scenes by
treating the rendering strategy as an aspect of
– Provide interframe coherence for the kinds of
stylized renderings developed.
• Solution
– To simulate making strokes on a 2D
surface, they propose stroke-based
Prior Work
• Particle Systems
– Reeves introduced particle systems that
he used to create trees, fireworks, and
other complex images.
– Alvy Ray Smith used particle systems
and L-systems to create graftals that
he used to create more accurate
biological structures
Prior Work
• Particle System
– Cartoon Tree by Badler and Glassner is
the direct precursor that uses fractals
and graftals to create surfaces through
an implicit model that produce data.
Prior Work
• Stroke Placement
– Difference Image by Salisbury et al.
had a stroke-placing algorithm that was
modified to place procedural texture
elements at specific areas.
Prior Work
• Stroke Placement
– Winkenbach and Salesin used
“indication” for pen-and-ink rendering.
– Strothotte et al. wrote about artistic
styles that result in specific effects or
Prior Work
• Particle Based Strokes
– Meier provided two insights in her
particle-based brush stokes method.
• Using particles to govern strokes in her
Monet works showed that not all complexity
need be geometric.
• Optimal particle on object hybrid space
Prior Work
– Built on earlier efforts at interactive
frame rates. More than one style.
• System Framework
– Use OpenGL to render polyhedral
– Models are divided into surface regions
– Each patch has one or more procedural
• System Framework
– Reference Images: they are off-screen
renders of scene that are rendered into
• Use 2:
– Color Reference image
– ID reference image.
• System Framework
– Color Reference Image
• An active texture of each patch will render
into this image in the appropriate manner.
(How to draw and where to draw tufts,
• System Framework
– ID Reference Image
• Triangles or edges are each rendered with a
color that uniquely identifies that triangle
or edge.
• Then these are edges or triangles are
stored in the patches that contains that
edge or triangle.
• Graftal Textures
– Procedurally place
fur, leaves, grass or
other elements.
– Two Rules:
• Must be placed with
controlled density
• Seem stick to the
• Placing Graftals
– Use Difference Image Algorithm where
a blurred image of the stroke is
subtracted from a difference image.
– At each subsequent step, they search
the pixel most in need of darkening.
– This handles the controled density for
graftal placement.
• Graftal Placement
– To control density each
graftal texture draws
its patch into the color
reference image so
that darker tones
correspond to denser
graftal areas.
– Darker in silhouettes in
this image.
• Graftal Placement
– Use the ID Reference image to convert
2D screen position to 2D position on a
surface. (Constant time)
• Graftal Placement
– Frame to frame
• In first frame graftals are place according
to the Difference Image Algorithm
• Each successive frame try to use prior
graftal texture
• If the old can not be used, the Difference
Image Algorithm is used to place new
• Graftal Placement
– A graftal can be not selected for two
• It is not visible, it is zoomed too far out.
• Insufficient desire for it to be placed in the
new image.
– Use a bucket sort to find greatest
desire (Constant Time)
• Subtracting Blurred Image
– This determines the desire of a graftal.
• Graftals subtract a blurred image of
themselves from the difference image.
(Gaussian Dot)
• Pixels in the desire image are coded with
values from zero to one. This is associated
with its screen space area based on their
• Subtracting Blurred Image
– Graftals can scale their geometry and
volume to maintain desired density and
• Computing Scale Factors
– Convert Object space length L to screen space
length s every frame.
– Uses scale factor r composed of 2 users
specified variables
• d: the screen space length
• Vo: corresponding volume
• Computing Scaling Factors
– Volume per frame is calculated
• Computing Gaussian Dot of Graftal
– Calculate the gaussion dot using this
– The Pixels are then subtracted from the
desired image. The desire should equal
the volume. (Optimal)
• Displaying Graftals
– If the desire is less than the volume of a
graftal, the LOD of the graftal is reduced.
This prevents popping.
• Drawing the Tuft
– They use a tapering shape
guided by a central spine.
The tapered values are
stored in an array.
– To orient the tufts, the
compute the dot product
of the view vector and the
normal. This determines
the LOD.
– The tufts are drawn in an
almost orthogonal to the
view and pointed down or
Results / Conclusions
• They were able to produce scenes with
simple geometry models.
• They were able to produce interactive
scenes on higher-end PCs.
• Problem
– Its still easy to create cluttered graftals from
the DIA at a frame to frame.
Results / Conclusions
• Future Work
– Use of fading and alpha blending to fade out
• Depends highly on style being used.
• Silhouettes seem to be missing some graftals
because they are so faded.
• Use another call to the DIA for a back-faced and
front-faced graftals. This would reduce the popping
of graftals along the silhouettes.
Results / Conclusions
• Future Work
– Static graftal placement
• Draw in a view dependent manner with lower detail
the farther a graftal is away from the silhouette.
• Problem is that you can not zoom in and out too far.
• A fix they have planned to priority values from 0 to
2. They will do work on the graftals with the lowest
priority value first using the DIA. Then the next are
Results / Conclusions
• Future Work
– Static Graftal Placement
• Successful for single instances, but has not been
tested for landscapes yet.
• ??????
[1] Norman I. Badler and Andrew S. Glassner. 3D object modeling.
In SIGGRAPH 97 Introduction to Computer Graphics Course Notes.
ACM SIGGRAPH, August 1997.
[2] OpenGL Architecture Review Board. OpenGL Reference Manual,
2nd Edition. Addison-Wesley Developers Press, 1996.
[3] J. D. Foley, A. van Dam, S. K. Feiner, and J. F. Hughes. Computer
Graphics: Principles and Practice. Addison-Wesley, Reading, MA,
2nd edition, 1992.
[4] Dr. Seuss (Theodor Geisel). The Lorax. Random House, New York,
[5] Dr. Seuss (Theodor Geisel). The Foot Book. Random House, New
York, 1988.
[6] Amy Gooch, Bruce Gooch, Peter Shirley, and Elaine Cohen. A nonphotorealistic
lighting model for automatic technical illustration. In
SIGGRAPH 98 Conference Proceedings, pp. 447–452. ACM SIGGRAPH,
July 1998.
[7] Geoffrey Hayes. Patrick and Ted. Scholastic, Inc., New York, 1984.
[8] Lee Markosian. Art-based Modeling and Rendering for Computer
Graphics. PhD thesis, Brown University, November 1999 (expected
[9] LeeMarkosian, JonathanM. Cohen, Thomas Crulli, and JohnHughes.
Skin: A constructive approach to modeling free-form shapes. In
SIGGRAPH 99 Conference Proceedings. ACM SIGGRAPH, August
[10] LeeMarkosian, MichaelA. Kowalski, Samuel J. Trychin, Lubomir D.
Bourdev, Daniel Goldstein, and John F. Hughes. Real-time nonphotorealistic
rendering. In SIGGRAPH 97 Conference Proceedings, pp.
415–420.ACM SIGGRAPH, August 1997.
[11] Barbara J. Meier. Painterly rendering for animation. In SIGGRAPH
96 Conference Proceedings, pp. 477–484.ACMSIGGRAPH, August
[12] W. T. Reeves. Particle systems – a technique for modeling a class of
fuzzy objects. ACM Trans. Graphics, 2:91–108,April 1983.
[13] William T. Reeves and Ricki Blau. Approximate and probabilistic algorithms
for shading and rendering structured particle systems. In
SIGGRAPH 85 Conference Proceedings, pp. 313–322. ACM SIGGRAPH,
July 1985.
[14] Michael P. Salisbury,Michael T.Wong, John F. Hughes, and David H.
Salesin. Orientable textures for image-based pen-and-ink illustration.
In SIGGRAPH 97 Conference Proceedings, pp. 401–406. ACM SIGGRAPH,
August 1997.