The real-time simulation of human crowds has many applications. In a typical crowd simulation, each person (‘agent’) in the crowd moves towards a goal while adhering to local constraints. Many algorithms exist for specific local ‘steering’ tasks such as collision avoidance or group behavior. However, these do not easily extend to completely new types of behaviors, such as circling around another agent or hiding behind an obstacle. They also tend to focus purely on an agent’s velocity without explicitly controlling its orientation. This thesis presents a novel sketch-based method for modelling and simulating many steering behaviors for agents in a crowd. Central to this is the concept of an Interaction Field (IF): a vector field that describ...