Simulator Documentation

Nicholas Hampshire
Innovations Project 2008
BACVA Level H

1.0 Controls Explanation

The system can run in 2D or 3D mode. To switch between modes, press the "return" key.

In the simulation, you can spawn objects at a specific point and fire them along a vector. In 2D, this vector is defined by a visible arrow on the screen. In 3D, the spawn point is defined by the physical centre of the camera and the vector is always directly forward out of the camera. To move the spawn point in 2D and 3D, use the 'w', 'a', 's' and 'd' keys.

To fire an object, you can use the numbered keys from 1 upwards to launch the dynamic objects loaded. The main mouse click will also fire the primary dynamic object loaded.

Moving the mouse will have to effect of changing the vector which the objects will be launched along. In 2D, this is made apparent by the direction in which the arrow on screen aims, and in 3D, the actual viewport will move position.

In both scenes, there is one static physical object, which does not fall under gravity like the others. It is possible to move this object around. In 2D, use the 'i','k','j' and 'l' keys to move it up, down, left and right respectively. In 3D use 'u' and 'j' to move it forward and back, use 'i' and 'k' to move it up and down, and use 'o' and 'l' to move it side to side.

In order to alter the timestep which the physics simular is using, press the '-' and '+' keys (without shift key modifier) to decrease and increase it respectively. A smaller timestep will result in a slower but more accurate simulation, wheras a larger step will result in a faster but more dangerous innaccurate simulation. It is very likely that when run, it will require a degree of "calibration", as it will run at different speeds depending on the specifications of the system running the program. The timestep is set initially purposefully high to make sure it runs smoothly initially..

Since the forces with which the dynamic objects are launched with are dynamically based, as the timestep changes, so will the effect of the force. Therefore, it can be increased and decreased with the '[' and ']' keys respectively.

To free the mouse from the programme window, which it is locked to on launch, press the 'm' key.

To quit the programme, use the 'q' or 'esc' key.

1.1 2D Control Rundown

RETURN = Switch to 3D Mode.
'i','k' = Move static object up and down.
'j','l' = Move static object left and right.


1.2 3D Control Rundown

RETURN = Switch to 2D Mode.
'u','j' = Move static object forward and backward.
'i','k' = Move static object up and down.
'o','l' = Move static object left and right.


1.3 Universal Control Rundown


'-' and '+' (without modifier keys) to increase and decrease the timestep.
'[' and ']' to alter the launching velocity of the dynamic objects.
'w', 'a', 's' 'd' = Move the location of the dynamic object spawn point.
up, down, left and right arrows = Move the location of the dynamic object spawn point.
Mouse Click = Launch dynamic object in slot 1.
'1','2',... = Lunch dynamic objects loaded in other slots.

2.0 The Environment

There is a 2D and 3D testing environment to demonstrate the various collision detection functions. Both environments sport proxy collision objects which can be manipulated as explained. In the 3D environment, the patches are revealed: blue faces are convexly patched. Green faces are concavely patched and red faces are mixed.