メインルーチン内でのVSYNCを入れる位置は毎ループ確実に実行される位置にしなくてはなりません。 あと表示の更新のタイミングまで待つことになるため「メインルーチン内でのすべての表示が完了した後」もしくは「メインルーチン内での表示を行う前」に記述するのがベターです。 メインルーチンの途中にVSYNCを入れたら中途半端な表示で待つことになるため表示がおかしくなったり、画面がちらついたりという原因になったりします。 簡単に言えば誤動作防止のため「メインルーチンの最初か最後に1つだけVSYNCを付ける」というだけです。