Making them behave

John Funge, Xiaoyuan Tu
1997 ACM SIGGRAPH 97 Visual Proceedings: The art and interdisciplinary programs of SIGGRAPH '97 on - SIGGRAPH '97  
For applications in computer game development and character animation, recent work in behavioral animation has taken impressive steps toward autonomous, self-animating characters. It remains difficult, however, to direct autonomous characters to perform specific tasks. We propose a new approach to high-level control in which the user gives the character a behavior outline, or "sketch plan". The behavior outline specification language has syntax deliberately chosen to resemble that of a
more » ... nal imperative programming language. In terms of functionality, however, it is a strict superset. In particular, a behavior outline need not be deterministic. This added freedom allows many behaviors to be specified more naturally, more simply, more succinctly and at a much higher-level than would otherwise be possible. The character has complete autonomy to decide on how to fill in the necessary missing details. The success of our approach rests heavily on our use of a rigorous logical language, known as the situation calculus. The situation calculus is well-known, simple and intuitive to understand. The basic idea is that a character views its world as a sequence of "snapshots" known as situations. An understanding of how the world can change from one situation to another can then be given to the character by describing what the effect of performing each given action would be. The character can use this knowledge to keep track of its world and to work out which actions to do next in order to attain its goals. The version of the situation calculus we use incorporates a new approach to representing epistemic fluents. The approach is based on interval arithmetic and addresses a number of difficulties in implementing previous approaches.
doi:10.1145/259081.259253 dblp:conf/siggraph/FungeT97 fatcat:pia4v4ih65hqbm2khx2mzsxraq