# Difference between revisions of "C3DL Collision Detection"

## Name of Project

Canvas 3D - Collision Detection

## Description

The ability to detect any object(s) colliding with object(s).

Project Demo Pages: http://matrix.senecac.on.ca/~pplam3/

Advance Demo/Debugger Page: http://matrix.senecac.on.ca/~pplam3/OSD/canvas3dapi-dev/test.html

## Project Contributor(s)

• Catherine Leung

## Student Demo

• Jan 27th (Week 3) - 10:00am

## Releases

### 0.4 - Week of Jan 19

• Created flag for models to have collision detection
• Created set/get functions for flag
• Created function for bounding sphere for models
• Returns array of 2: Sphere Position (array of 3), Sphere Radius (float)
• Enable callback to check for collision detection when updating scene

### 0.5 - Week of Feb 2

• Performed initial test for collision
• Check flags
• Check for bounding sphere collision with out models with flags on
• Collision - distance of two bounding sphere's position is less than the sum of the radius of both sphere
• Perform 2nd test for collision
• Test for triangle-triangle intersection test between objects

### February 2009

Feb 13, 2009

• Created a 2nd demo page which includes triangle-triangle test
• Explain the difference between having it and not having it

Feb 12, 2009

• C3DL meeting
• extract the code for collision detection out of scene class and create a class of it's own
• Working on breaking down the updates into smaller steps
• There was a major lag in performance, need to further investigate on what's the main cause of slow down

Feb 8, 2009

• created getNextPosition(timeStep) function
• returns the position of the object after timeStep - ie. get the object's future position

Feb 4, 2009

• Dropped Tomas Moller's algorithm
• Reapplied the idea of using line-triangle intersection test from picking
• Made two important change to get it working
• performed a check on the variable t to make sure it's between 0-1 (the length of the edges of triangle A)
• set the accuracy to 0.02 instead of 0.8

Feb 3, 2009

• Implemented Tomas Moller's Triangle-Triangle Intersection Test algorithm
• Did not work, might have bugs in the implementation
• Causes extreme slowdown when objects with more faces exist (ie. sphere)

Feb 1, 2009

• Triangle-Triangle test failed using Ray-Triangle test
• Reading/Looking for other ways of doing Triangle-Triangle test

### January 2009

Jan 31, 2009

• Reused code from picking function for triangle-triangle intersection test
• Using the 3 edges of Triangle A as lines and perform Line-Triangle intersection test

Jan 28, 2009

Jan 25, 2009

• Started on Triangle-Triangle Test function

Jan 17, 2009

• Perform initial test for bounding sphere collision

Jan 16, 2009

• Created bounding sphere for models

Jan 15, 2009

• Enable callback to collision detection function
• Created flags for collision detections
• Set/Get functions

Jan 13, 2009

• Created wiki page