動かしてないので正確にOKかはわからないんですが、WHILEのところの無限ループを作る場合は、あいだ(大抵は最後のループの前)にVSYNCを入れた方がいいと思いますよ。