Fragment shaders for agent animation using finite state machines

Abstract In a previous paper we generated animated agents and their behavior using a combination of XML and images. The behavior of agents was specified as a finite state machine (FSM) in XML. We used images to determine properties of the world that agents react to. While this approach is very flexible, it can be made much faster by using the power available in modern GPUs. In this paper we implement FSMs as fragment shaders using three kinds of images: world space images, agent space images and FSM table images. We show a simple example and compare performance of CPU and GPU implementations. Then we examine a more complex example involving more maps and two types of agents (predator–prey). Furthermore we explore how to render agents in 3D more efficiently by using a variation on pseudoinstancing.

[1]  Yiannis E. Papelis,et al.  HCSM: a framework for behavior and scenario control in virtual environments , 1995, TOMC.

[2]  Stéphane Donikian,et al.  A scenario language to orchestrate virtual world evolution , 2003, SCA '03.

[3]  Anselmo Lastra,et al.  Physically-based visual simulation on graphics hardware , 2002, HWWS '02.

[4]  Daniel Thalmann,et al.  Hierarchical Model for Real Time Simulation of Virtual Human Crowds , 2001, IEEE Trans. Vis. Comput. Graph..

[5]  J. Meigs,et al.  WHO Technical Report , 1954, The Yale Journal of Biology and Medicine.

[6]  D. Thalmann,et al.  A behavioral animation system for autonomous actors personified by emotions , 1998 .

[7]  Guy Theraulaz,et al.  On formal constraints in swarm dynamics , 1992, Proceedings of the 1992 IEEE International Symposium on Intelligent Control.

[8]  Vittorio Scarano,et al.  Massive Simulation using GPU of a distributed behavioral model of a flock with obstacle avoidance , 2004, VMV.

[9]  Yoshinori Dobashi,et al.  A method for modeling clouds based on atmospheric fluid dynamics , 2001, Proceedings Ninth Pacific Conference on Computer Graphics and Applications. Pacific Graphics 2001.

[10]  Craig W. Reynolds Flocks, herds, and schools: a distributed behavioral model , 1987, SIGGRAPH.

[11]  Klaus Mueller,et al.  The lattice-Boltzmann method for simulating gaseous phenomena , 2004, IEEE Transactions on Visualization and Computer Graphics.