Interactive collision detection for complex and deformable models using programmable graphics hardware