Hopefully this article has been useful as a solution, but more importantly has inspired you to even better implementations which I hope you share with us all. Cheers! © 1999-2002 Gamedev.net. All rights reserved.