Reaction-Diffusion

My thesis work was about creating synthetic texture using reaction-diffusion.

Reaction-diffusion is a process in which two or more chemicals diffuse over a surface and react with one another to produce stable patterns. Reaction-diffusion can produce a variety of spot and stripe patterns, much like those found on many animals. Developmental biologists think that some of the patterns found in nature may be the result of reaction-diffusion processes.

Often in computer graphics we want to add "texture" to an object, that is, some pattern of colors or bumps. We can texture a computer model by simulating a reaction-diffusion process on the surface of the model.

Much of the work that I did was published in this article:

"Generating Textures on Arbitrary Surfaces Using Reaction-Diffusion"
Greg Turk
Computer Graphics, Vol. 25, No. 4, pp. 289-298
July 1991 (SIGGRAPH '91)
Postscript version of paper (4.0 Mbytes).
PDF version of paper (2.6 Mbytes).
I also have my dissertation on-line:
"Texturing Surfaces Using Reaction-Diffusion"
Greg Turk, Ph.D. Thesis
Tech Report TR94-035
Dept. of Computer Science, University of North Carolina at Chapel Hill
PDF 1 (Abstract & Contents, 16 Kb) and PDF 2 (Main body of thesis, 11.3 Mb)

I have made available two simple reaction-diffusion programs for people who wish to experiment with the process. You can download the source in this tar file .

Here are some images from this work:

Pseudo-zebra

The zebra stripes were started on the hooves and head

Rosettes, as on a jaguar

Bumps are a lighting trick (no change in surface position)

Bumps that actually change the surface position (see the bumpy silhouette)

Reticulated (webbed) pattern on a giraffe

Curvature guides the giraffe's spot size. Blue = big spots, red = small spots.

Spots-and-stripes on my friend David Banks' head. Some squirrels have similar patterns.

Simulating reaction-diffusion textures on surfaces.

Other Reaction-Diffusion Work

Allen Sanderson and his co-workers have created a variety of wonderful patterns for vector-field visualization and other applications. They can run their simulations on GPU's, and they have included code on their web page.

Kurt Fleischer has done marvelous work on multicellular development. Reaction-diffusion is just one of the mechanisms that he has incorporated into his developmental simulator.

Lingfa Yang has an extensive page on various reaction-diffusion systems, and includes many beautiful patterns.

The Xmorphia site had an excellent illustration of the parameter space of a particular reaction-diffusion process. The animations here are wonderful. Unfortunately the link appears to be broken. If you find a working link to this, please drop me e-mail.


Go to Greg Turk's Home Page.