You're using a lot of operator new and I don't see any deletes to accompany them. Your program seems to be allocating new memory for everything each frame. Try checking whether the pointer is valid first, and only new it if it's null. -J