Department of Information Technology


The Virtual Reality Toolkit (VRT) is a graphics library for 3D modeling and simulation. It was designed for use on the Win32 architecture Windows platforms, but has recently been ported to run on all platforms where GLUT is available. VRT exports a number of C functions that together with VRT data types make up the VRT API. The VRT API with the assignments in BIGS is used in the course Interactive Graphical Systems: /edu/course/homepage/igs

VRT tutorial

Building Interactive Graphical Systems BIGS (pdf)
VRT programmers manual (.chm windows help file)
VRT programmers manual VRT core functions
VRT globals

VRT API with BIGS examples can be downloaded here:

latest VRT with examples and MinGW compiler (windows installer) mingw32-vrt-install-20030724.exe
latest VRT with examples (zip file for windows and linux)
If you use with Visual Studio on your own pc download and put glut32.dll in directory c:\winnt\system32 or c:\windows\system32 glut32.dll
all downloads |

There are several alternatives how to compile the BIGS examples (lab1-lab5) in the downloads above:

  • using Visual Studio 6.0 (Do not use VS.NET in the 1312 or 1313!!!)
    • download and unpack: latest VRT with examples (zip file for windows and linux)
    • Start Visual Studio 6.0
    • Open vrt/lab.dsw
    • Follow the lab instructions
  • using MinGW under windows
    • download and run installer: latest VRT with examples and MinGW compiler (windows installer)
    • click on start-mingw icon on the desktop
    • run make
  • using gcc/g++ under windows
    • download and unpack: latest VRT with examples (zip file for windows and linux)
    • make sure you have installed cygwin with gcc
    • run make
  • using gcc/g++ under redhat 9.0 (with Mesa and GLUT installed)
    • download and unpack: latest VRT with examples (zip file for windows and linux)
    • run make PLATFORM=linux CC=g++296


Tool-driven modeling

Modeling and simulation of three-dimensional worlds is complex. By using tools that aid in keeping track of details, the modeler is able to focus his efforts on the important main issues of composition of the world and direction of the simulation. VRT was designed as such a tool.
A collection of real-world natural language concepts is used in the VRT interface to let the modeler interact with the simulation in a concise and straight-forward way. This also hides the specific details of how things are actually carried out. For example, the concepts of Scene and Camera are used to encapsulate the behavior of the world and our view upon it, things that have quite complex inner machinery when it comes to implementing them on a computer graphics system. As such, they should not concern the modeler.

Using the VRT

Basic 3D modeling concepts and terminology is used throughout the VRT programming interface. Familiarity with these terms is a prerequisite for successful use of VRT.

VRT modeling and simulation

In VRT, objects are created and added to a lighted scene and a camera gives a view of the scene from a particular viewpoint. A three-dimensional coordinate system is used to refer to positions in the scene. In order to create a simulation, the objects in the scene are made to interact while the camera gives a continuous view of the scene.
The interface is transparent, allowing use of native OpenGL functions in VRT applications. Where available, VRT will take advantage of hardware assisted graphics acceleration. The VRT offers use of non-traditional 3D display modes, e g stereoscopic, Workbench and Virtual Plane display modes.

Updated  2004-04-13 10:28:12 by Lars Winkler Pettersson.