vrSpec simplifies the task of creating a virtual reality simulation by allowing a user to specify the objects within the virtual world and their interactions using a simple, high level scripting language. Within vrSpec there are actually two scripting languages, one for specifying the objects that make up the virtual world (e.g., rooms, movable objects, fixed objects, doors, etc.) and one for specifying how these objects behave within the virtual world (event specification). vrSpec has been designed for performance. In its current form, it is designed to run in the same process as the application, the cull and the draw (for the single processor machine on which it was developed). The vrSpec specification languages are compiled into an internal format that does not require parsing during simulation execution. All object references are resolved at load time. Creating models/geometry requires modeling software (e.g., Wavefront, Alias, etc.).