Thank you very much, it was the loop. Took me forever to fix it, even though I knew exactly where it was. Is there a difference to having a global variable with mouseX in it rather than a local variable? It seemed like the mouseX position was never updated when it was global or something along those lines. Thank you very much for the help.