drawViewport improved