next up previous
Next: Plant Configuration File Up: No Title Previous: Further Research and

Conclusions

 

A collision detection module was implemented which takes objects modelled with convex polygons, and is able to check for intersection between any of the objects. If it finds intersection occurring, it will search for the time at which the database objects are just in contact, and return this time and the database at this state. The module makes use of bounding boxes, and spatial subdivision applied at the object level to speed up the process of intersection detection. It also uses the simple but effective idea of a collision interest matrix that controls which objects to check against each other.

The collision detection module was tested with a plant growing simulation, which used the collision detection module to grow plants around environment objects, and not through them. Images of the vine plants grown were generated and these could be used to visually verify the fact that the plants didn't penetrate other objects, and that the collision detection module had worked correctly.

The main area of difficulty in implementation was dealing with floating point arithmetic errors, and other bugs introduced by the plant simulation. The collision detection module should be used with other simulations to provide better testing of its performance characteristics.

There are a number of areas that need to be looked at that could improve the efficiency of the module, including a better method for searching for contact time, and the use of some sort of spatial subdivision to reduce the number of objects checked against each other.



William Fang
Mon Dec 4 14:14:02 EST 1995